2010-05-04 39 views
1

我創建了一個超鏈接,並通過點擊我將該頁面重定向到另一個JSP,但我沒有得到正確的URL,我正在傳遞,URL附加了另一個字符串,而頁面沒有重定向,contextpath被追加

請任何人有想過這事,幫我出

<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

你可以把代碼片段放在這裏嗎?這樣這裏的人可以理解你的問題是什麼? – 2010-05-04 09:15:05

+0

Plz發佈你正在做的一些示例代碼,以及你的網址有什麼問題,這樣人們可以理解你的問題並回復你。 – Nirmal 2010-05-04 09:59:02

回答

1

沒有前導斜槓的相對URL與當前上下文相關。即如果瀏覽器地址欄中的當前URL爲http://example.com/context/index.jsp,並且要從當前上下文打開的相對URL爲context/page.jsp,那麼最終URL將爲http://example.com/context/context/page.jsp

有幾種方法來解決這個問題:

  1. 在相對URL刪除同樣的情況下,這樣才結束的page.jsp
  2. 添加一個前導斜槓,使其相對於域根:/context/page.jsp
  3. 將其設爲絕對URL:http://example.com/context/page.jsp
  4. 將相對URL的上下文向後退一步:../context/page.jsp

它的工作方式與磁盤文件系統路徑完全相同。

0

好像你<%= columnUrl>變量越來越

servlet/Reports.controller.ReportController?ActionFlag=get..... 

,並自動調用JSP,它的附加上下文路徑..

首先調試columnUrl變量,並將該變量值更改爲相對,將其更新爲../context/page.jsp應該可以工作爲你。