java.lang.ClassNotFoundException:com.assignment.controller.CRUDController
注意:在上面的图片中,它表示包名是assignmentdan,问题中的“dan”不存在,但这不会影响此错误 将我的Eclipse应用程序部署到运行在TOMCAT8上的AWS时,它不会显示我的SQL数据库。我检查了日志,发现了以下异常:java.lang.ClassNotFoundException:com.assignment.controller.CRUDController,java,tomcat,servlets,classnotfoundexception,Java,Tomcat,Servlets,Classnotfoundexception,注意:在上面的图片中,它表示包名是assignmentdan,问题中的“dan”不存在,但这不会影响此错误 将我的Eclipse应用程序部署到运行在TOMCAT8上的AWS时,它不会显示我的SQL数据库。我检查了日志,发现了以下异常: 05-Apr-2016 13:57:23.975 INFO [http-nio-8080-exec-1] org.apache.catalina.core.ApplicationContext.log Marking servlet CRUDController
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)
有人知道这对我的Servlet意味着什么吗?一切似乎都井然有序
CRUDController(我在这里创建servlet)
公共类CRUDController扩展HttpServlet{
私有静态最终长serialVersionUID=1L;
私家克鲁达道;
公共CRUDController(){
dao=新的CrudDao();
}
受保护的void doGet(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
}
受保护的void doPost(HttpServletRequest请求、HttpServletResponse响应)引发ServletException、IOException{
if(request.getParameter(“操作”)!=null){
List lstUser=new ArrayList();
String action=(String)request.getParameter(“action”);
Gson Gson=新的Gson();
setContentType(“应用程序/json”);
if(action.equals(“列表”)){
试试{
//从用户表中获取数据
lstUser=dao.getAllUsers();
//将Java对象转换为Json
JsonElement元素=gson.toJsonTree(lstUser,newtypetoken(){}.getType());
JsonArray JsonArray=element.getAsJsonArray();
String listData=jsonArray.toString();
//以jTable插件所需的格式返回Json
listData=“{\”结果\“:\”确定\“,\”记录\“:“+listData+”}”;
response.getWriter().print(listData);
}捕获(例外情况除外){
字符串错误=“{\”结果\“:\”错误\“,\”消息\“:“+ex.getMessage()+”}”;
response.getWriter().print(错误);
例如printStackTrace();
}
}
else if(action.equals(“创建”)| | action.equals(“更新”)){
用户=新用户();
如果(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);
}
试试{
if(action.equals(“create”){//创建新记录
addUser(用户);
lstUser.add(用户);
//将Java对象转换为Json
字符串json=gson.toJson(用户);
//以jTable插件所需的格式返回Json
字符串listData=“{\”结果\“:\”确定\“,\”记录\“:“+json+”}”;
response.getWriter().print(listData);
}else if(action.equals(“update”){//更新现有记录
dao.updateUser(用户);
字符串listData=“{\”结果\“:\”确定\“}”;
response.getWriter().print(listData);
}
}捕获(例外情况除外){
字符串错误=“{\”结果\“:\”错误\“,\”消息\“:”+ex.getStackTrace().toString()+“}”;
response.getWriter().print(错误);
}
}else if(action.equals(“delete”){//delete记录
试一试{
if(request.getParameter(“userid”)!=null){
String userid=(String)request.getParameter(“userid”);
deleteUser(Integer.parseInt(userid));
字符串listData=“{\”结果\“:\”确定\“}”;
response.getWriter().print(listData);
}
}捕获(例外情况除外){
字符串错误=“{\”结果\“:\”错误\“,\”消息\“:”+ex.getStackTrace().toString()+“}”;
response.getWriter().print(错误);
}
}
}
}
}
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>
main.html
main.htm
main.jsp
default.html
default.htm
default.jsp
积垢控制器
积垢控制器
com.assignment.controller.CRUDController
积垢控制器
/积垢控制器
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>
4.0.0
任务丹
任务丹
0.0.1-快照
战争
src
maven编译器插件
3.3
1.6
1.6
maven战争插件
2.6
网络内容
假的
javax.servlet
servlet api
2.5
假如
javax.servlet.jsp
jsp api
2.1
假如
ClassNotFoundException:com.assignment.controller.CRUDController
看看你的包结构
您没有名为com.assignment.controller
的包。而是有一个名为o的包
<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>
<servlet-class>com.assignmentdan.controller.CRUDController</servlet-class>