posts - 64,  comments - 9,  trackbacks - 0

          1---:java.lang.NoClassDefFoundError: org/apache/struts2/dojo/views/jsp/ui/HeadTag

          解決辦法:原因缺少了dojo的JAR包,引入即可:struts2-dojo-plugin-2.1.2.jar

          (

          The "head" tag renders required JavaScript code to configure Dojo and is required in order to use any of the tags included in the Dojo plugin.

          --------------------

          If you are planning to nest tags from the Dojo plugin, make sure you set parseContent="false", otherwise each request made by the inner tags will be performed twice. 

          )

          2---:Unable to load configuration. - bean - jar:file:/F:/Struts2/Struts2/WebRoot/WEB-INF/lib/struts2-core-       2.1.2.jar!/struts-default.xml:46:178

                 Caused by: Unable to load bean: type:org.apache.struts2.dispatcher.multipart.MultiPartRequest class:org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest -       bean - jar:file:/F:/Struts2/Struts2/WebRoot/WEB-INF/lib/struts2-core-2.1.2.jar!/struts-default.xml:46:178

                 Caused by: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/RequestContext 
                 解決辦法:缺少JAR包,引入commons-fileupload-1.2.1.jar,commons-io-1.3.2.jar即可

           

          3---:No tag "datetimepicker" defined in tag library imported with prefix "s"

                 原因版本問題:缺少struts-dojo-plugin JAR包,以及HTML的,<HEAD></HEAD>中沒有使用<s:head/>標(biāo)簽

                   If you're using Struts 2.1.x you're probably missing the> struts-dojo-plugin.  Michaël's reference below applies to Struts 2.1.xonly. In the lasts versions (since 2.0.9 I guess), all AJAX are in dojo> plugin.
          > > So you need to include <%@ taglib uri="/struts-dojo-tags" prefix="sx"%>
          > > and <sx:head/>
          > >( Temp1:
             <sx:datetimepicker name="picker" />
             Temp2:
             <sx:datetimepicker type="time" name="picker" /><br/>
             Temp3:
             <sx:datetimepicker value="%{'2008-06-08'}" name="picker" />
             Temp4:
             <sx:datetimepicker value="date" name="picker" />)
          > > and call  :<sx:datetimepicker .../>

           

          4---:使用TILES框架     

              If you use the Tiles 2 plugin, check your tiles.xml file(s) to ensure they contain a DOCTYPE.

              <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
               "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
              <tiles-definitions>
          
          5---:struts2中不支持EL表達(dá)式 Convert EL expressions to OGNL  
              Struts2.1 tags do not allow evaluation of JSP EL within their attributes.
              Instead, Struts2 tags evaluate attribute values as OGNL. Allowing both
              expression languages within the same attribute opens major security
              vulnerabilities. 
          6---文件上傳過程中取不到文件名和文件類型,即都取到NULL
              原因:如果頁面中file的name=“a”則我們ACTION中設(shè)置String aContentType,String aFileName;(此兩個(gè)其實(shí)無所謂,關(guān)鍵是SET方法)
              setA(File file)(){}; setAContentType(String s){};setAFileName(String name){} 即格式如下:setXContentType() setXFileName().X代表你給FILE取的NAME名字
              必須和它相同,固定格式
          7---嚴(yán)重: Unable to parse request
              org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (8523356) exceeds the configured maximum (2097152)
               at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:914)2008-5-27 17:46:51 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
              警告: Could not find property [struts.valueStack]
              2008-5-27 17:46:51 com.opensymphony.xwork2.util.logging.commons.CommonsLogger error
              嚴(yán)重: the request was rejected because its size (8523356) exceeds the configured maximum (2097152)
              2008-5-27 17:46:51 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
              警告: Could not find property [org.apache.catalina.jsp_file]
           原因:上傳文件大小超過預(yù)定大小,可以在struts.properties配置文件中設(shè)置struts.multipart.maxSize=XXX(XXX為文件大小)
           8---配置了文件類型限制后,當(dāng)傳錯(cuò)誤類型可以攔截不讓用戶上傳該文件,可是跳轉(zhuǎn)的頁面卻沒有跳轉(zhuǎn)到input配置的錯(cuò)誤頁面,而是返回
              到了success正確頁面。
              嚴(yán)重: Content-Type not allowed: filedata "upload__5b01657_11a329d4dcf__8000_00000000.tmp" text/plain
              《我的打印輸出DEBUG語句內(nèi)容:File:null  FlieName:null      type:null》即攔截類型成功了
              java.lang.NullPointerException
               at java.io.FileInputStream.<init>(FileInputStream.java:103)
               at com.study.web.util.FileUploadUtil.uploadFile(FileUploadUtil.java:36)
               at com.study.web.action.UploadFileAction.execute(UploadFileAction.java:58)
               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)。。。
              2008-5-29 10:59:07 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
              警告: Could not find property [org.apache.catalina.jsp_file]
              2008-5-29 10:59:07 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
              警告: Could not find property [struts]
              2008-5-29 10:59:07 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
              信息: Removing file filedata \tmp\upload__5b01657_11a329d4dcf__8000_00000000.tmp
              原因及解決辦法:在該文件上傳Action中只配置了FileUploadInterceptor后缺少配置了defaultStack攔截器.
              在ACTION中配置玩defaultStack攔截器后改錯(cuò)誤消失。
          9---struts.properties中全局配置文件大小,再使用默認(rèn)FileUploadInterceptor攔截器時(shí)候能實(shí)現(xiàn)攔截的功能但是后臺(tái)出現(xiàn)異常。
              嚴(yán)重: Unable to parse request
              org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (380) exceeds the configured maximum (10)
               at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:914)
          原因:未知。將全局配置中的限制大小去掉,再重新在ACTION中覆蓋配置FileUploadInterceptor攔截器設(shè)置大小和文件類型限制,可消除異常。
          10---多文件上傳中,其中一個(gè)傳被限制的文件如限制aplication/msword(即.doc)文件,允許傳文本文件。然而當(dāng)夾雜在一起傳的時(shí)候,后臺(tái)能截獲類型錯(cuò)誤不可傳信息,但是
              實(shí)際卻還是上傳成功。
          嚴(yán)重: Content-Type not allowed: filedata "upload_4d958287_11a33e76ab9__8000_00000007.tmp" application/msword
          file is :\tmp\upload_4d958287_11a33e76ab9__8000_00000006.tmp  fileName:project.txt  fileType:text/plain
          file is :\tmp\upload_4d958287_11a33e76ab9__8000_00000007.tmp  fileName:application base.doc  fileType:application/msword
          file is :\tmp\upload_4d958287_11a33e76ab9__8000_00000008.tmp  fileName:zhongqi-bug.txt  fileType:text/plain
          原因:忘記了繼承ActionSupport類。繼承后異常消失。
          11--文件上傳異常,不能創(chuàng)建File文件
              Cannot create type class java.io.File from value C:\Documents and Settings\admin\桌面\OrderReporterServiceImp.java - [unknown location]
              原因:忘記了在form表單里將enctype設(shè)置成文件上傳格式:enctype="multipart/form-data"
          12--當(dāng)使用限制文件類型和大小的時(shí)候拋出空指針異常
              java.lang.NullPointerException
          demo.struts2.action.ValidatFileUploadAction.execute(ValidatFileUploadAction.java:71)
          sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              原因:在ACTION中配置了fileUpload攔截器后忘記了配置默認(rèn)攔截器:defautlStack。注意當(dāng)ACTION中配置自己的攔截器后需要顯示配置默認(rèn)
                  攔截器defaultStack
          13--在國(guó)際化時(shí)候拋空指針異常:
          

               16:31:12,812 ERROR [jsp]:253 - Servlet.service() for servlet jsp threw exception
              java.lang.NullPointerException  at java.text.MessageFormat.applyPattern(MessageFormat.java:414)

               at java.text.MessageFormat.<init>(MessageFormat.java:350)
               at com.opensymphony.xwork2.DefaultTextProvider.getText(DefaultTextProvider.java:70)

               

               原因:忘記了在struts.xml中配置國(guó)際化常量,或者在struts.properties中配置全局國(guó)際化常量 struts.custom.i18n.resources=globeMessage

           

          14-- struts action的配置文件加載失敗:

              Unable to load configuration. - result - file:/D:/Java/apache-tomcat-5.5.20/webapps/mysts/WEB-INF/classes/test.xml:10:26

               Caused by: No result type specified for result named 'error', perhaps the parent package does not specify the result type? - result - file:/D:/Java/apache-tomcat-5.5.20/webapps/mysts/WEB-INF/classes/test.xml:10:26
               at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.buildResults(XmlConfigurationProvider.java:609)

           

               原因:忘記了繼承包struts-default

          15-- struts action 配置文件注意事項(xiàng):

               1. 別忘記了繼承struts-default默認(rèn)配置包

               2.如果配置命名空間,一定要以"/"開始,例如:namespace="/test"

               3.每個(gè)模塊struts action配置文件中都可以配置全局result,global-result 經(jīng)測(cè)試不會(huì)沖突,STRTUS會(huì)智能尋找該Action請(qǐng)求的

                 模塊STRUTS ACTION配置包

          關(guān)鍵字: 警告: no configuration found for the specified action

          警告: No configuration found for the specified action: 'ShowMessage' in namespace: ''. Form action defaulting to 'action' attribute's literal value.
           

          解決方法:

          經(jīng)過測(cè)試發(fā)現(xiàn),是沒有正確使用tag的原因,這種情況下,正確的寫法應(yīng)該是,<s:form name="login" method="post" action="login" >
          您是否添加了action這個(gè)呢?

          posted on 2009-10-13 14:57 super_nini 閱讀(5432) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2009年10月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿

          隨筆檔案

          文章檔案

          相冊(cè)

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 朝阳县| 大厂| 开阳县| 即墨市| 上饶市| 红安县| 济宁市| 密山市| 兴海县| 安徽省| 东乌| 嫩江县| 华安县| 乐陵市| 祥云县| 靖边县| 青海省| 哈密市| 宜丰县| 上犹县| 济南市| 牡丹江市| 金门县| 承德县| 紫阳县| 双牌县| 日照市| 乌拉特后旗| 通渭县| 新邵县| 鸡东县| 大厂| 菏泽市| 铁岭市| 鹤山市| 敦煌市| 南陵县| 金沙县| 阳泉市| 绥棱县| 上虞市|