我正在为hello world创建一个简单的servlet,以检查servlet是否正常工作,但在运行servlet并映射web.xml文件后,它给我一个错误。
我的代码:
请帮我解决我的问题??
答案 0 :(得分:7)
我遇到了同样的问题。删除web.xml中对servlet的任何引用都解决了这个问题(这些映射已经在带有注释的servlet类中定义)
答案 1 :(得分:1)
请按照以下步骤操作:
现在运行该程序。希望它有所帮助:)
答案 2 :(得分:1)
试试这个, 右键单击您的服务器并选择干净的tomcat工作目录,它将自动停止以清理tomcat工作目录并自行启动。
它对我有用
答案 3 :(得分:0)
当您开始创建项目时,出现此错误的一个原因是“一开始”。当您打开文件>>新>>“动态网站项目”
时在“动态Web项目”弹出窗口中: 目标运行时:Apache Tomcat v7.0或Apache Tomcatv8.0
动态Web模块版本:“IT应该设置为2.5”,如果它高于“2.5”,您将收到Tomcat错误,因为最新版本支持注释,并且不需要您将在下一步中附加的web.xml描述符文件。
将配置保持为:自定义
保持其他一切相同。在点击完成之前,请检查web.xml复选框。
希望这有帮助。
答案 4 :(得分:0)
出现此问题是因为您的@WebServlet
引用了使用web.xml
注释注释的servlet。
如果要使用部署描述符(@WebServlet
)注册servlet,则必须在servlet类中删除@WebServlet(
urlPatterns = { "/HelloWorld" },
initParams = {
@WebInitParam(name = "name", value = "helloworld")
})
注释。
<servlet>
或删除<servlet-mapping>
中定义的web.xml
和@WebServlet
,以便使用<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>com.jsp.first.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
。
function createModal(){
var dataModal = "";
var countModal = $(".modalWrap").length;
if(typeof countModal === "undefined" || countModal == 0){
countModal = 0;
}
/*this just an example, you can try improv it more like load file or url to fill your modal data.*/
dataModal = '<div align="center" class="modalWrap" id="modal-'+(countModal+1)+'" style="z-index:'+(countModal+1)+'"><div class="modalBody" id="modalBody-'+(countModal+1)+'"> <h1>This Modal '+(countModal+1)+'</h1><input type="button" value="modal create" onclick="createModal();"/> <input type="button" onclick="closeModal(\'#modal-'+(countModal+1)+'\');" value="close modal"/></div></div>';
$('body').append(dataModal);
}
function closeModal(idModal){
$(idModal).remove();
}
它应该有用。
答案 5 :(得分:0)
我克隆了一个默认创建的Servlet,忘了重命名@WebServlet(“/ MyServlet”)。 在我重命名之后,它对我有用。 :d