我创建了一个超链接,通过点击我将页面重定向到另一个JSP,但是我没有得到正在传递的URL,URL附加了另一个字符串,页面没有被重定向,< / p>
请任何人对此有所了解,帮助我
<td align='<%=lstrColAlign%>' class="<%=tdclass%> Label2"
style="<%=rb.getDataStyleString(rvo,data)%>">
<a href="#" onclick="JavaScript:window.open( '<%=columnUrl%>','newwindow','top=0, left=0,
scrollbars=yes,status=1,resizable=yes,height= (screen.availHeight - 10),
width= (screen.availWidth-5)')"> <%=rb.getDataValue(data)%></a>
</font></td>
我应该去哪里
...Project1-context-root/servlet/Reports.controller.ReportController?ActionFlag=get.............
但不是我得到了
...Project1-context-root/servlet/servlet/Reports.controller.ReportController?ActionFlag=get.....
因此,附加了额外的单词servlet/
答案 0 :(得分:1)
没有前导斜杠的相对URL是相对于当前上下文的。即如果浏览器地址栏中的当前网址为http://example.com/context/index.jsp
且要从当前上下文打开的相对网址为context/page.jsp
,则最终网址为http://example.com/context/context/page.jsp
。
有几种方法可以解决这个问题:
page.jsp
结尾。/context/page.jsp
。http://example.com/context/page.jsp
。../context/page.jsp
。它的工作方式与磁盘文件系统路径完全相同。
答案 1 :(得分:0)
好像你的&lt;%= columnUrl&gt;变量正在变得
servlet/Reports.controller.ReportController?ActionFlag=get.....
从你的调用JSP中,它会自动附加上下文路径..
首先调试你的columnUrl变量并将该变量值更改为relative,方法是将其更新为../context/page.jsp应该适合你。