2014-03-12 111 views
2

在一个网站我有一个导航栏这样隐藏servlet名称的URL

<li><a href="?page=pagename">PAGE</a></li> 

一些链接,我在JSP页面与JAVA加载链接的页面,然后我通过GET通过表单提交的数据,这是我的网址后成为

www.sitename.com/Servlet 

那么我不能够通过

?page=pagename 

,因为我在URL中的Servlet的名字来加载页面。

如何隐藏或删除servlet名称?

+0

如果你可以提供更多的代码来理解 – Arjit

+2

@Arjit,那么这里就不会有相关的代码显示在这里。 –

回答

0

使用servlet-mappingweb.xml

<servlet-mapping> 
    <servlet-name>Servlet</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 
0

它更容易,如果所有这些JSP是在一个共同的路径。例如。 /应用/ *。

<servlet> 
    <servlet-name>app</servlet-name> 
    <servlet-class>com.example.FriendlyURLServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>app</servlet-name> 
    <url-pattern>/app/*</url-pattern> 
</servlet-mapping> 

request.getRequestDispatcher("/WEB-INF" + request.getPathInfo() + ".jsp").forward(request, response); 

这是假设的JSP是在/ WEB-INF文件夹,使他们不能直接要求。这将在http://example.com/app/search上显示/WEB-INF/search.jsp