Gab*_*mas 26 java tomcat netbeans web.xml servlets
我有一个与servlet映射有关的问题.我在web.xml中有以下内容:
<servlet>
<servlet-name>HelloWorldServlet</servlet-name>
<servlet-class>test.HelloWorldServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)
如果我访问http://localhost:<port>/MyApp/HelloWorldservlet HelloWorldServlet被调用.
我也想让我的小礼服回应http://localhost:<port>/MyApp/HelloWorld/.我怎样才能达到这个效果?我正在使用NetBeans进行开发,但它不允许我将模式结束/.
Buh*_*ndi 29
在您的通配符上添加通配符后 <url-pattern>
<url-pattern>/HelloWorld/*</url-pattern>
Run Code Online (Sandbox Code Playgroud)
您可以使用以获取与URL关联的额外路径HttpServletRequest.getPathInfo().
例如
http://localhost:<port>/MyApp/HelloWorld/one/
结果将是
/one/
Run Code Online (Sandbox Code Playgroud)
来自JavaDoc:
返回与客户端发出此请求时发送的URL关联的任何额外路径信息.额外的路径信息在servlet路径之后但在查询字符串之前,并以"/"字符开头.
小智 7
使用通配符.您可以将转到特定URL的所有流量重定向到同一个servlet.例如,您可以添加以下内容:
<servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>/HelloWorld/*</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)
这将使用斜杠将URL重定向到原始servlet.
有人想到 - 这会将任何内容重定向到这个URL模式到servlet.如果您希望其他URL超过此URL,则应创建一个将重定向到正确URL的servlet(通过查看指定的URL).或者,您可以使用为您提供映射的框架.
| 归档时间: |
|
| 查看次数: |
54727 次 |
| 最近记录: |