異常
javax。servlet。jsp。JspException: Cannot retrieve mapping for action /Login (/Login是你的action名字)
可能原因
action沒有再strutsconfig。xml 中定義,或沒有找到匹配的action,例如在JSP文件中使用 html:form action="Login。do"。將表單提交給Login。do處理,如果出現上述異常,請查看strutsconfig。xml中的定義部分,有時可能是打錯了字符或者是某些不符合規則,可以使用strutsconsole工具來檢查。
異常
org。apache。jasper。JasperException: Cannot retrieve definition for form bean null
可能原因
這個異常是因為Struts根據strutsconfig。xml中的mapping沒有找到action期望的form bean。大部分的情況可能是因為在formbean中設置的name屬性和action中設置的name屬性不匹配所致。換句話說,action和form都應該各自有一個name屬性,并且要精確匹配,包括大小寫。這個錯誤當沒有name屬性和action關聯時也會發生,如果沒有在action中指定name屬性,那么就沒有name屬性和action相關聯。當然當action制作某些控制時,譬如根據參數值跳轉到相應的jsp頁面,而不是處理表單數據,這是就不用name屬性,這也是action的使用方法之一。
異常
No action instance for path /xxxx could be created
可能原因
特別提示:因為有很多中情況會導致這個錯誤的發生,所以推薦大家調高你的web服務器的日志/調試級別,這樣可以從更多的信息中看到潛在的、在試圖創建action類時發生的錯誤,這個action類你已經在strutsconfig。xml中設置了關聯(即添加了action標簽)。
在strutsconfig。xml中通過action標簽的class屬性指定的action類不能被找到有很多種原因,例如:定位編譯后的。class文件失敗。Failure to place compiled 。class file for the action in the classpath (在web開發中,class的的位置在r WEBINF/classes,所以你的action class必須要在這個目錄下。例如你的action類位于WEBINF/classes/action/Login。class,那么在strutsconfig。xml中設置action的屬性type時就是action。Login)。
拼寫錯誤,這個也時有發生,并且不易找到,特別注意第一個字母的大小寫和包的名稱。
異常
javax。servlet。jsp。JspException: No getter method for property username of bean org。apache。struts。taglib。html。
更多關注:JAVA考試經驗 JAVA輔導資料 JAVA歷年真題
(責任編輯:xy)