首页 → 名言 → 美文
java中struts java中的struct
日期:2023-02-24 05:03:44    编辑:网络投稿    来源:网络资源
java struts常見錯誤以及原因解析  java struts常見錯誤以及原因解析  1 異常 javax.servlet.jsp.JspException: Cannot retrieve mapping for action /Login (/Login是
为你推荐:
  • 心情煩躁的句子短句
  • java struts常見錯誤以及原因解析

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

      1 異常 javax.servlet.jsp.JspException: Cannot retrieve mapping for action /Login (/Login是你的action名字)

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

      可能原因:action沒有再struts-config.xml 中定義,或沒有找到匹配的action,例如在JSP文件中使用 處理:如果出現上述異常,請查看struts-config.xml中的定義部分,有時可能是打錯了字符或者是某些不符合規則,可以使用struts console工具來檢查。

      2 異常 org.apache.jasper.JasperException: Cannot retrieve definition for form bean null

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

      3 異常 No action instance for path /xxxx could be created

      可能原因

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

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

      定位編譯后的.class文件失敗。Failure to place compiled .class file for the action in the classpath (在web開發中,class的的位置在r WEB-INF/classes,所以你的action class必須要在這個目錄下。例如你的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的問題。例如web server沒有發現你的資源文件,資源文件必須在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 方法

      這個錯誤主要發生在表單提交的FormBean中,用struts標記時,在FormBean中必須有一個getUsername()方法。注意字母“U”。

      5 Exception javax.servlet.jsp.JspException: Cannot find ActionMappings or ActionFormBeans collection

      可能原因

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

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

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

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

      6 Exception

      javax.servlet.jsp.JspException: Cannot find bean org.apache.struts.taglib.html.BEAN in any scope

      Probable Causes

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

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

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

    【java struts常見錯誤以及原因解析】相關文章:

    JAVA幾個常見錯誤簡析09-27

    2016托福閱讀常見錯誤解析09-29

    科目二常見錯誤動作及解析07-11

    Java的Struts框架簡介與環境配置步驟11-21

    Java的Struts框架中標簽的使用方法11-26

    Java import以及Java類的搜索路徑10-04

    2016年托福寫作常見語法錯誤解析09-19

    java語言源碼解析11-13

    JAVA數組知識解析10-01

    这里有更多你想看的
  • 溫柔的晚安語錄
    • 本类最新
    • 精品图文
    • 时尚
    • 新闻
    • 生活
    • 视觉
    • 微爱
      栏目ID=88的表不存在(操作类型=0)

    头条推荐

    热门推荐

    特别推荐

    返回顶部