posts - 89,  comments - 98,  trackbacks - 0

          1異常
          javax.servlet.jsp.JspException:Cannotretrievemappingforaction/Login(/Login是你的action名字)

          可能原因:action沒有再struts-config.xml中定義,或沒有找到匹配的action,例如在JSP文件中使用

          處理:如果出現上述異常,請查看struts-config.xml中的定義部分,有時可能是打錯了字符或者是某些不符合規則,可以使用strutsconsole工具來檢查。

          2異常
          org.apache.jasper.JasperException:Cannotretrievedefinitionforformbeannull

          可能原因:這個異常是因為Struts根據struts-config.xml中的mapping沒有找到action期望的formbean。大部分的情況可能是因為在form-bean中設置的name屬性和action中設置的name屬性不匹配所致。換句話說,action和form都應該各自有一個name屬性,并且要精確匹配,包括大小寫。這個錯誤當沒有name屬性和action關聯時也會發生,如果沒有在action中指定name屬性,那么就沒有name屬性和action相關聯。當然當action制作某些控制時,譬如根據參數值跳轉到相應的jsp頁面,而不是處理表單數據,這是就不用name屬性,這也是action的使用方法之一。

          3異常
          Noactioninstanceforpath/xxxxcouldbecreated

          可能原因

          特別提示:因為有很多中情況會導致這個錯誤的發生,所以推薦大家調高你的web服務器的日志/調試級別,這樣可以從更多的信息中看到潛在的、在試圖創建action類時發生的錯誤,這個action類你已經在struts-config.xml中設置了關聯(即添加了標簽)。

          在struts-config.xml中通過action標簽的class屬性指定的action類不能被找到有很多種原因,例如:

          定位編譯后的.class文件失敗。Failuretoplacecompiled.classfilefortheactionintheclasspath(在web開發中,class的的位置在rWEB-INF/classes,所以你的actionclass必須要在這個目錄下。例如你的action類位于WEB-INF/classes/action/Login.class,那么在struts-config.xml中設置action的屬性type時就是action.Login).

          拼寫錯誤,這個也時有發生,并且不易找到,特別注意第一個字母的大小寫和包的名稱。

          在struts-config.xml中指定的action類沒有繼承自Stuts的Action類,或者你自定義的Action類沒有繼承自Struts提供的Action類。

          你的action類必須繼承自Struts提供的Action類。

          你的classpath的問題。例如webserver沒有發現你的資源文件,資源文件必須在WEB-INF/classes/目錄下。

          4異常
          javax.servlet.jsp.JspException:Nogettermethodforpropertyusernameofbeanorg.apache.struts.taglib.html.BEAN

          可能原因

          沒有位formbean中的某個變量定義getter方法

          這個錯誤主要發生在表單提交的FormBean中,用struts標記

          5Exceptionjavax.servlet.jsp.JspException:CannotfindActionMappingsorActionFormBeanscollection

          可能原因

          不是標識StrutsactionServlet的標記就是映射.do擴展名的標記或者兩者都沒有在web.xml中聲明。

          在struts-config.xml中的打字或者拼寫錯誤也可導致這個異常的發生。例如缺少一個標記的關閉符號/>。最好使用strutsconsole工具檢查一下。

          另外,load-on-startup必須在web.xml中聲明,這要么是一個空標記,要么指定一個數值,這個數值用來表servlet運行的優先級,數值越大優先級越低。

          還有一個和使用load-on-startup有關的是使用Struts預編譯JSP文件時也可能導致這個異常。

          6Exception

          javax.servlet.jsp.JspException:Cannotfindbeanorg.apache.struts.taglib.html.BEANinanyscope

          ProbableCauses

          試圖在Struts的form標記外使用form的子元素。這常常發生在你在

          后面使用Struts的html標記。

          另外要注意可能你不經意使用的無主體的標記,如,這樣web服務器解析時就當作一個無主體的標記,隨后使用的所有標記都被認為是在這個標記之外的,如又使用了

          還有就是在使用taglib引入HTML標記庫時,你使用的prefix的值不是html。

          posted on 2007-02-08 11:14 水煮三國 閱讀(444) 評論(0)  編輯  收藏 所屬分類: Struts
          <2007年2月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728123
          45678910

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 211020
          • 排名 - 266

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 安国市| 扬中市| 苍南县| 沂南县| 双峰县| 唐海县| 九台市| 江口县| 丰原市| 墨玉县| 金平| 文山县| 镇巴县| 崇州市| 南岸区| 杨浦区| 收藏| 凌云县| 砀山县| 六盘水市| 罗山县| 青铜峡市| 通江县| 交城县| 资中县| 罗城| 新丰县| 科技| 泗水县| 嘉义县| 金山区| 沂水县| 稻城县| 深泽县| 双城市| 抚远县| 翼城县| 巨鹿县| 阜康市| 墨玉县| 开阳县|