0

我有一个编译成 tryJEdit.war 文件的 Maven 项目。当我将它复制到 tomcat 文件夹并启动 Tomcat 时,我可以从以下位置访问该应用程序:

本地主机:8080/tryJEdit

在 index.jsp 我有:

<form method="post" action="tugay">

所以在表格发布后,我发现自己在:

localhost:8080/tryJEdit/tugay -> Which is fine..

但是当我将表格更改为:

<form method="post" action="/tugay"> 

我发现自己处于:

localhost:8080/tugay

这不好。

有没有办法通过以下方式访问 localhost:8080/tryJEdit/tugay:

<form method="post" action="$APPLICATION_ROOT/tugay"> 

在jsp文件中?

编辑和扩展问题

在我尝试的 servlet doGet 方法中:

ServletContext ctx = getServletContext();
InputStream is = ctx.getResourceAsStream("/re.pdf");

文件re.pdf实际上是在 tryJEdit/re.pdf 而不是 localhost:8080/re.pdf 中搜索的,但是对于上述情况,如果我发布到 /tugay 那么我最终会在 localhost:8080/tugay 而不是 tryJEdit/tugay 中搜索。 ..

问候。

4

2 回答 2

1

http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html#getContextPath()

<form method="post" action="<%=request.getContextPath()%>/tugay">
于 2013-10-20T00:38:55.590 回答
1

要在没有脚本的情况下执行此操作,请尝试

<form method="post" action="${pageContext.request.contextPath}/tugay">
于 2013-10-20T00:48:33.397 回答