我正在尝试使用eclipse创建一个动态Web项目。这是我第一次使用servlet和jsp。
我创建了一个页面,它运行正常。但是,我无法完全理解 web.xml 页面。至于我在 < servlet-mapping> 下阅读并搜索 < url-pattern> 客户端使用它来访问您的servlet。无论我将 < url-pattern> 改为,它似乎只能通过servlet类名访问servlet。
<display-name>CustomerManagment1</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.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>
<servlet-name>Welcome Page</servlet-name>
<servlet-class>WelcomePage</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Welcome Page</servlet-name>
<url-pattern>/welcomepage.jsp</url-pattern>
</servlet-mapping>
</web-app>
当我使用http://host-name/CustomerManagment1/welcompage.jsp
但是,如果使用此http://host-name/CustomerManagment1/WelcomePage
,它可以正常工作。
我在这里缺少什么?
答案 0 :(得分:1)
您是否编写过JSP或servlet?我有点困惑 如果您使用的是JSP,则servlet标记应该类似于
<servlet>
<description></description>
<display-name>WelcomePage</display-name>
<servlet-name>WelcomePage</servlet-name>
<jsp-file>/WelcomePage.jsp</jsp-file>
</servlet>
如果您使用的是servlet,那么您的标签就可以了。
对于url-pattern,您确定没有为WelcomPage servlet类编写任何注释吗? 如果您使用的是Tomcat 7或任何Java EE 6容器,那么通过eclipse创建一个新的servlet将创建一个默认的@WebServlet注释,并按如下方式添加到servlet中。
@WebServlet("/WelcomePage")
public class WelcomePage extends HttpServlet {}
这意味着您的网址模式正在从此处挑选。