主頁 > 知識庫 > java struts常見錯誤以及原因分析

java struts常見錯誤以及原因分析

熱門標(biāo)簽:黃石智能營銷電銷機器人效果 開封便宜外呼系統(tǒng)報價 電話機器人的特色和創(chuàng)新 怎樣把地圖標(biāo)注出來 漯河辦理400電話 騰訊地圖標(biāo)注商戶改名注冊入駐 淮南騰訊地圖標(biāo)注 地圖標(biāo)注人員兼職 商丘百應(yīng)電話機器人有沒有效果
1 異常 javax.servlet.jsp.JspException: Cannot retrieve mapping for action /Login (/Login是你的action名字)
可能原因:action沒有再struts-config.xml 中定義,或沒有找到匹配的action,例如在JSP文件中使用 處理:如果出現(xiàn)上述異常,請查看struts-config.xml中的定義部分,有時可能是打錯了字符或者是某些不符合規(guī)則,可以使用struts console工具來檢查。
2 異常 org.apache.jasper.JasperException: Cannot retrieve definition for form bean null
可能原因: 這個異常是因為Struts根據(jù)struts-config.xml中的mapping沒有找到action期望的form bean。大部分的情況可能是因為在form-bean中設(shè)置的name屬性和action中設(shè)置的name屬性不匹配所致。換句話說,action和form都應(yīng)該各自有一個name屬性,并且要精確匹配,包括大小寫。這個錯誤當(dāng)沒有name屬性和action關(guān)聯(lián)時也會發(fā)生,如果沒有在action中指定name屬性,那么就沒有name屬性和action相關(guān)聯(lián)。當(dāng)然當(dāng)action制作某些控制時,譬如根據(jù)參數(shù)值跳轉(zhuǎn)到相應(yīng)的jsp頁面,而不是處理表單數(shù)據(jù),這是就不用name屬性,這也是action的使用方法之一。
3 異常 No action instance for path /xxxx could be created
可能原因
特別提示:因為有很多中情況會導(dǎo)致這個錯誤的發(fā)生,所以推薦大家調(diào)高你的web服務(wù)器的日志/調(diào)試級別,這樣可以從更多的信息中看到潛在的、在試圖創(chuàng)建action類時發(fā)生的錯誤,這個action類你已經(jīng)在struts-config.xml中設(shè)置了關(guān)聯(lián)(即添加了標(biāo)簽)。
在struts-config.xml中通過action標(biāo)簽的class屬性指定的action類不能被找到有很多種原因,例如:
定位編譯后的.class文件失敗。Failure to place compiled .class file for the action in the classpath (在web開發(fā)中,class的的位置在r WEB-INF/classes,所以你的action class必須要在這個目錄下。例如你的action類位于WEB-INF/classes/action/Login.class,那么在struts-config.xml中設(shè)置action的屬性type時就是action.Login).
拼寫錯誤,這個也時有發(fā)生,并且不易找到,特別注意第一個字母的大小寫和包的名稱。
在struts-config.xml中指定的action類沒有繼承自Stuts的Action類,或者你自定義的Action類沒有繼承自Struts提供的Action類。
你的action類必須繼承自Struts提供的Action類。
你的classpath的問題。例如web server沒有發(fā)現(xiàn)你的資源文件,資源文件必須在WEB-INF/classes/目錄下。
4 異常 javax.servlet.jsp.JspException: No getter method for property username of bean org.apache.struts.taglib.html.BEAN
可能原因
沒有位form bean中的某個變量定義getter 方法
這個錯誤主要發(fā)生在表單提交的FormBean中,用struts標(biāo)記時,在FormBean中必須有一個getUsername()方法。注意字母“U”。
5 Exception javax.servlet.jsp.JspException: Cannot find ActionMappings or ActionFormBeans collection
可能原因
不是標(biāo)識Struts actionServlet的標(biāo)記就是映射.do擴展名的標(biāo)記或者兩者都沒有在web.xml中聲明。
在struts-config.xml中的打字或者拼寫錯誤也可導(dǎo)致這個異常的發(fā)生。例如缺少一個標(biāo)記的關(guān)閉符號/>。最好使用struts console工具檢查一下。
另外,load-on-startup必須在web.xml中聲明,這要么是一個空標(biāo)記,要么指定一個數(shù)值,這個數(shù)值用來表servlet運行的優(yōu)先級,數(shù)值越大優(yōu)先級越低。
還有一個和使用load-on-startup有關(guān)的是使用Struts預(yù)編譯JSP文件時也可能導(dǎo)致這個異常。
6 Exception
javax.servlet.jsp.JspException: Cannot find bean org.apache.struts.taglib.html.BEAN in any scope
Probable Causes
試圖在Struts的form標(biāo)記外使用form的子元素。這常常發(fā)生在你在后面使用Struts的html標(biāo)記。
另外要注意可能你不經(jīng)意使用的無主體的標(biāo)記,如,這樣web 服務(wù)器解析時就當(dāng)作一個無主體的標(biāo)記,隨后使用的所有標(biāo)記都被認為是在這個標(biāo)記之外的,如又使用了
還有就是在使用taglib引入HTML標(biāo)記庫時,你使用的prefix的值不是html
您可能感興趣的文章:
  • 用Rational Rose逆向工程(java)生成類圖(教程和錯誤解決)
  • 深入探討JAVA中的異常與錯誤處理
  • Zend Studio for Eclipse的java.lang.NullPointerException錯誤的解決方法
  • Java 自定義錯誤類示例代碼
  • java異常與錯誤處理基本知識
  • java.sql.SQLException: 內(nèi)部錯誤: Unable to construct a Datum from the specified input
  • 啟動tomcat時 錯誤: 代理拋出異常 : java.rmi.server.ExportException: Port already in use: 1099的解決辦法
  • java session出現(xiàn)的錯誤
  • c++ mk文件出錯Jni調(diào)用產(chǎn)生java.lang.UnsatisfiedLinkError錯誤解決方法
  • 不可不知道的10個java謊言

標(biāo)簽:亳州 鄭州 拉薩 馬鞍山 紅河 岳陽 武威 大興安嶺

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《java struts常見錯誤以及原因分析》,本文關(guān)鍵詞  java,struts,常見,錯誤,以及,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《java struts常見錯誤以及原因分析》相關(guān)的同類信息!
  • 本頁收集關(guān)于java struts常見錯誤以及原因分析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章