Java Servlet URL映射

我是java servlet的新手。

如果这个问题看起来很愚蠢,请原谅我。

我在web.xml servlet选项卡中使用netbeans添加了servlet类和url模式等servlet映射,但是当应用程序运行时,它不会直接进入目标url,即http:// localhost:8080 / HelloDuke2 / greeting但是http ://本地主机:8080 / HelloDuke2 /

我在配置中缺少什么?

如何将启动URL设置为http:// localhost:8080 / HelloDuke2 / greeting ?

   javax.faces.PROJECT_STAGE Development   GreetingDukeServlet HelloDuke.GreetingDukeServlet   ResponseDukeServlet HelloDuke.ResponseDukeServlet   ResponseDukeServlet /ResponseDukeServlet   GreetingDukeServlet /GreetingDukeServlet    30    

请帮忙。

谢谢。

编辑:

我已经尝试过Alexey Sviridov提供的解决方案,但它不适用于浏览器报告http状态404资源不可用的情况。

web.xml中

    javax.faces.PROJECT_STAGE Development   GreetingDukeServlet HelloDuke.GreetingDukeServlet 1   ResponseDukeServlet HelloDuke.ResponseDukeServlet  Message Hello, PeterWkc    GreetingDukeServlet /GreetingDukeServlet   ResponseDukeServlet /ResponseDukeServlet    30    index.xhtml   

的index.xhtml

 >  ?>  XHTML 1.0 Transitional//EN" > "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> >  xmlns="http://www.w3.org/1999/xhtml" > xmlns:h="http://java.sun.com/jsf/html"> >  > Hello Duke >  > >  > > >  >  > Hello from Facelets > > > >   

请帮忙。

谢谢。

我看到一个Facelets页面,我看到了一个特定于JSF的 ,但是我没有看到JSF FacesServletweb.xml被定义,但是你正在摆弄其他的servlet。

你不是在混合基本概念/技术吗? 不可否认,Java EE 6教程中缺少 JSP教程,但是为了使用普通的servilla servlet,通常使用纯HTML或JSP而不是Facelets。

无论如何,要通过URL调用servlet,您需要确保URL与web.xml中定义的servlet的匹配。 您已经确定了GreetingDukeServlet以侦听匹配/GreetingDukeServlet URL。 所以URL必须是http:// localhost:8080 / HelloDuke2 / GreetingDukeServlet 。

如果您确实希望URL为http:// localhost:8080 / HelloDuke2 / greeting ,那么您应该将更改为/greeting

也可以看看:

  • Servlets信息页面 – 包含一个小小的hello世界

你需要定义欢迎文件列表。 请参阅http://download.oracle.com/javaee/1.4/tutorial/doc/WebApp4.html

http://wiki.apache.org/tomcat/HowTo#How_do_I_override_the_default_home_page_loaded_by_Tomcat.3F

是的,您需要为您的Web应用程序定义索引页面,并且您可以使用此参数在fe create page index.html中进行重定向

  

然后在web.xml中

  index.html