Picure Herejava.lang.ClassNotFoundException: com.assignment.controller.CRUDController
Примечание: в картине над ней говорит имена пакетов assignmentdan и в задаче «дан» не существует, но это никоим образом не влияет на эта ошибка!
при развертывании моего приложения Eclipse для AWS, которое работает на TOMCAT8, оно не отображает мою базу данных SQL. Я проверил журналы и было это исключение:
05-Apr-2016 13:57:23.975 INFO [http-nio-8080-exec-1] org.apache.catalina.core.ApplicationContext.log Marking servlet CRUDController as unavailable
05-Apr-2016 13:57:23.978 SEVERE [http-nio-8080-exec-1] org.apache.catalina.core.StandardWrapperValve.invoke Allocate exception for servlet CRUDController
java.lang.ClassNotFoundException: com.assignment.controller.CRUDController
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:120)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1095)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:817)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:135)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
Кто-нибудь знает, что это значит о моем сервлете? Все кажется в порядке ??
CRUDController (где я создаю мой сервлет)
public class CRUDController extends HttpServlet {
private static final long serialVersionUID = 1L;
private CrudDao dao;
public CRUDController() {
dao=new CrudDao();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
if(request.getParameter("action")!=null){
List<User> lstUser=new ArrayList<User>();
String action=(String)request.getParameter("action");
Gson gson = new Gson();
response.setContentType("application/json");
if(action.equals("list")){
try{
//Fetch Data from User Table
lstUser=dao.getAllUsers();
//Convert Java Object to Json
JsonElement element = gson.toJsonTree(lstUser, new TypeToken<List<User>>() {}.getType());
JsonArray jsonArray = element.getAsJsonArray();
String listData=jsonArray.toString();
//Return Json in the format required by jTable plugin
listData="{\"Result\":\"OK\",\"Records\":"+listData+"}";
response.getWriter().print(listData);
}catch(Exception ex){
String error="{\"Result\":\"ERROR\",\"Message\":"+ex.getMessage()+"}";
response.getWriter().print(error);
ex.printStackTrace();
}
}
else if(action.equals("create") || action.equals("update")){
User user=new User();
if(request.getParameter("userid")!=null){
int userid=Integer.parseInt(request.getParameter("userid"));
user.setUserid(userid);
}
if(request.getParameter("firstName")!=null){
String firstname=(String)request.getParameter("firstName");
user.setFirstName(firstname);
}
if(request.getParameter("lastName")!=null){
String lastname=(String)request.getParameter("lastName");
user.setLastName(lastname);
}
if(request.getParameter("email")!=null){
String email=(String)request.getParameter("email");
user.setEmail(email);
}
try{
if(action.equals("create")){//Create new record
dao.addUser(user);
lstUser.add(user);
//Convert Java Object to Json
String json=gson.toJson(user);
//Return Json in the format required by jTable plugin
String listData="{\"Result\":\"OK\",\"Record\":"+json+"}";
response.getWriter().print(listData);
}else if(action.equals("update")){//Update existing record
dao.updateUser(user);
String listData="{\"Result\":\"OK\"}";
response.getWriter().print(listData);
}
}catch(Exception ex){
String error="{\"Result\":\"ERROR\",\"Message\":"+ex.getStackTrace().toString()+"}";
response.getWriter().print(error);
}
}else if(action.equals("delete")){//Delete record
try{
if(request.getParameter("userid")!=null){
String userid=(String)request.getParameter("userid");
dao.deleteUser(Integer.parseInt(userid));
String listData="{\"Result\":\"OK\"}";
response.getWriter().print(listData);
}
}catch(Exception ex){
String error="{\"Result\":\"ERROR\",\"Message\":"+ex.getStackTrace().toString()+"}";
response.getWriter().print(error);
}
}
}
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_0.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<welcome-file-list>
<welcome-file>main.html</welcome-file>
<welcome-file>main.htm</welcome-file>
<welcome-file>main.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<display-name>CRUDController</display-name>
<servlet-name>CRUDController</servlet-name>
<servlet-class>com.assignment.controller.CRUDController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CRUDController</servlet-name>
<url-pattern>/CRUDController</url-pattern>
</servlet-mapping>
</web-app>
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>AssignmentDan</groupId>
<artifactId>AssignmentDan</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
Что такое имя пакета класса 'CRUDController'? –
@ cricket_007 \t com.assignment.controller.CRUDController – Leanneheal
@Leanneheal, Не могли бы вы разместить свою структуру проекта как изображение, а также, пожалуйста, напишите свой файл pom.xml, если вы его поддерживаете? –