2012-07-12 49 views
1

我在服務器上安裝了tomcat,並在server.com/app/上可用。這意味着tomcat的根應用程序託管在該URL。JSTL表單相對路徑

現在我正試圖部署新的應用程序(old.war),服務器將它部署到server.com/app/old/。直到現在沒問題。

<html:form name="LoginForm" type="some.form" action="/LoginFormAction" method="post">... 

,並在輸出我收到行動的價值「/old/LoginFormAction.do」:當我創建某種形式在這樣的定義的頁面

的問題開始。這是錯誤的價值,因爲它在開始時錯過了「應用程序」。我嘗試了不同的動作值,例如

<html:form name="LoginForm" type="some.form" action="/app/old/LoginFormAction" method="post">... 
<html:form name="LoginForm" type="some.form" action="/app/LoginFormAction" method="post">... 

但它仍然在操作的值中添加了「/ old」前綴。 我該如何解決這個問題? 謝謝

回答

0

根據this issue Struts 1不支持窗體的action屬性中的相對路徑。所以沒有辦法解決它。即使有像描述here的黑客。

0

如果Tomcat的根是應用程序,那麼它不會提供給你,(認爲它是「/」映射到「應用程序/」),你應該使用相對路徑,嘗試

`action="LoginFormAction"` and it should work fine. 
+0

我試過這個。它仍然將操作的值轉換爲/ old/LoginFormAction – nKognito 2012-07-13 10:05:17