2010-09-18 103 views
0

我有一個簡單的Struts 2應用程序,我使用Netbeans構建和部署到glassfish。當我點的網頁瀏覽器http://localhost:8080/Struts2Hello/login.action/它給出了這樣的錯誤:Struts 2.2.1給出了沒有操作映射名稱空間和動作名稱

沒有映射爲命名空間/和動作名稱動作。

我的操作被命名爲「登錄」。它爲什麼認爲它被命名爲「。」? (爲了達到這個目的,我還必須將javassist-3.7.ga添加到我的lib /目錄中,但我不確定爲什麼,但這就是其他人爲了使Struts 2.2工作所做的工作)。

這裏是我的web.xml和struts.xml的文件(是的,struts.xml中被部署到WEB-INF /班):

<filter-name>struts2</filter-name> 
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> 
</filter> 
<filter-mapping> 
    <filter-name>struts2</filter-name> 
<url-pattern>/*</url-pattern> 
</filter-mapping> 
<welcome-file-list> 
    <welcome-file>Login.jsp</welcome-file> 
</welcome-file-list> 

<package name="default" extends="struts-default" namespace="/"> 

    <action name="login" class="action.LoginAction"> 
     <result name="success">Welcome.jsp</result> 
     <result name="error">Login.jsp</result> 

    </action> 
</package> 

謝謝。

院長

回答

4

我的問題是,我曾在WEB-INF /目錄,而不是一個級別更高的.jsp文件。雖然,這個問題奇怪的錯誤信息。

+0

這之後〜6歲還在吸... – JSmyth 2016-01-28 13:02:58

0

在struts.xml中(或任何其他支柱配置文件在內),映射的內容是回到原來的Servlet/JSP,即你不能把.jsp文件下的WEB-INF。例如如果在struts配置文件中的結果是:Welcome.jsp,那麼您應該將Welcome.jsp放在軟件包根目錄下,如 網頁 ... WEB-INF ... Welcome.jsp ...菜單 。 .....名爲menu.xhtml

0

更多的時候是不是當支柱得到行動名字寫錯了,即使有什麼不妥struts.xml的,問題是,標記庫定義是從JSP文件丟失。

+0

是什麼呢?因爲我得到同樣的錯誤,我已經搜索了所有論壇,但nthng似乎正在爲我工​​作,任何來自我方的幫助都是神聖的。 – shofee 2013-05-23 10:56:22

0

瘋狂地回答這個問題了一年,但我有同樣的問題,我敢肯定,我已經準確地映射我所有的行動,但它上面顯示了同樣的錯誤....所以我剛掃乾淨項目,然後再次運行它..它工作得很好......試試吧!

我遇到過這麼多次...所以爲了避免這樣的事情,我剛剛添加「../eclipse.exe -clean」到快捷方式圖標屬性....這個工程,你可以忘記關於得到這樣的錯誤實際上不是一個錯誤....!

相關問題