我正在使用eclipse在jsp文件和servlet之间建立连接
我正在尝试创建servlet com.example.servlet.MyServlet
,并且我在WebContent中有一个简单的jsp代码search.jsp
jsp代码是linke的一些东西
<form method = "post" action = "MyServlet">
<br><label for="title">Title</label>
<input type="textbox" name="title" value="" /></br>
<br><label for="auther">Auther</label>
<input type="textbox" name="auther" value="" /></br>
<br><label for="date">Date</label>
<input type="textbox" name="date" value="" /></br>
<br><label for="subject">Subject</label>
<input type="textbox" name="subject" value="" /></br>
<br><input type="submit" name = "search" value ="search" align="center"></br>
</form>
My web.xml
文件中已知MyServlet,但是当我运行该程序时,它会提供
javax.servlet.ServletException: Wrapper cannot find servlet class com.journal.servlet.SearchServlet or a class it depends on
和
java.lang.ClassNotFoundException: com.journal.servlet.SearchServlet
我无法弄清楚问题是什么,因为我认为每件事情都在正确的位置。
答案 0 :(得分:0)
错误说找不到com.journal.servlet.SearchServlet
类,你提到你在com.example.servlet.MyServlet
已编译的.class
文件必须以/WEB-INF/classes/com/example/servlet/MyServlet.class
结尾。
所以,基于你帖子中提到的场景。改变<servlet-class>
中关联的web.xml
条目应该有效。
同时检查
Project>Build Automatically
也许您不小心禁用了自动部署功能。
答案 1 :(得分:0)
您的web.xml
文件应该
Servlet位置
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.example.servlet.MyServlet</servlet-class>
</servlet>
servlet映射
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/MyServlet</url-pattern>
</servlet-mapping>
控制台显示您的软件包是com.journal.servlet....
而不是com.example.servlet...
,请确保您已正确定义软件包。所以重命名你的包