Servlets 在web.xml中将servlet设置为默认主页
我在Servlets 在web.xml中将servlet设置为默认主页,servlets,web.xml,welcome-file,Servlets,Web.xml,Welcome File,我在web.xml中注册了一个servlet,如下所示 <servlet> <servlet-name>Manager</servlet-name> <servlet-class>Manager</servlet-class> </servlet> <servlet-mapping> <servlet-name>Manager</servlet-name>
web.xml
中注册了一个servlet,如下所示
<servlet>
<servlet-name>Manager</servlet-name>
<servlet-class>Manager</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Manager</servlet-name>
<url-pattern>/RequestManager</url-pattern>
</servlet-mapping>
但是,当我运行这个项目时,我得到一个错误,说“请求的资源不可用”。但是,如果我使用servlet url模式写入url,它可以正常工作。您可以使用index.jsp转发到您的servlet
<jsp:forward page="servlet_context">
并将index.jsp作为欢迎文件添加到web.xml中的servlet类中,您可以使用以下方法转发控件:
request.getRequestDispatcher("forward page URL").forward(req,res);
或者,如果您使用的是JSP,则使用
<% RequestDispatcher rd = servletContext.getRequestDispatcher("/pathToResource");
rd.forward(request, response); %>
或
指定一个空字符串作为servlet的URL模式
<servlet>
<servlet-name>Manager</servlet-name>
<servlet-class>Manager</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Manager</servlet-name>
<url-pattern></url-pattern>
</servlet-mapping>
经理
经理
经理
另见:
与具体问题无关,
应该表示URL路径,而不是servlet名称。如果您指定了RequestManager
,它就会起作用。但这会影响所有子文件夹。实际上,
的含义与您心目中的“主页文件”完全不同。它表示当请求文件夹时应提供的默认资源。这不适用于我。。。。目前我正在使用servlet版本3.1。如果您能提供解决方案,那就太好了,谢谢@BalusCIt为我和空白项目中的任何其他人工作。更有可能的是,你的项目中还有其他与之冲突的东西。
<jsp:forward page="relative URL" />
<servlet>
<servlet-name>Manager</servlet-name>
<servlet-class>Manager</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Manager</servlet-name>
<url-pattern></url-pattern>
</servlet-mapping>