tomcat部署,發現找不到action
阿新 • • 發佈:2019-01-27
當struts2專案在eclipse中成匯入後,配置好tomcat下的server.xml的<Context>,啟動tomcat,發現找不到action
There is no Action mapped for namespace / and action name
轉載:
在MyEclipse中自動部署到tomcat中struts2正常工作,仔細看了下兩個工具用的tomcat是同一個為什麼會出現這種問題呢。於是懷疑是eclipse自身問題。
檢視MyEclipse自動部署的專案檔案結構,WEB-INF下有classes資料夾,有所有的類和xml。eclipse
tomcat自動部署並沒有把專案拷貝到 tomcat webApp資料夾中,而是在server.xml中添加了一句話
<Context path="/jdp" reloadable="true" docBase="E:\develop\JDP1.0\WebContent" workDir="E:\develop\JDP1.0\work" />
原來是和手動部署一個原理,找到E:\develop\JDP1.0\WebContent下,沒classes。
根本沒有struts2.xml,為什麼jsp可以?因為jsp沒涉及java程式碼,是靜態的hello world。
解決方案:右擊專案properties
設定class路徑,這樣 tomcat外掛部署的就能找到類了。原來用eclipse建立工程時有個選項是填寫編譯路徑的,預設是專案根目錄下的build/classes
總結:eclipse classes路徑要注意。這樣看,編譯問題的話,不但struts2影響,涉及java和xml配置的都是應該不行的。