在使用struts2中,為了方便調試,通常struts.properties文件中把開發模式設置為true。當表單里面的數據為空的時候提交,由于配置了validation校驗框架,頁面被攔截,有提示信息。控制臺輸出如下:
2008-12-3 21:10:39 com.opensymphony.xwork2.interceptor.ParametersInterceptor setParameters
嚴重: ParametersInterceptor - [setParameters]: Unexpected Exception caught setting 'age' on 'class org.mmc.struts2.action.RegisterAction: Error setting expression 'age' with value '[Ljava.lang.String;@b70648'
2008-12-3 21:10:39 com.opensymphony.xwork2.validator.ActionValidatorManagerFactory <clinit>
信息: Detected AnnotationActionValidatorManager, initializing it...
控制臺出錯信息分析:
由于配置文件中繼承了
struts-default.xml文件
其中struts-default.xml中的代碼片段為:
<interceptor name="params" class="com.opensymphony.xwork2.interceptor.ParametersInterceptor"/>
由于配置了validation校驗框架部分片段:
1
<field name="age">
2
<field-validator type="required">
3
<message>age should not be blank!</message>
4
</field-validator>
5
6
<field-validator type="int">
7
<param name="min">1</param>
8
<param name="max">150</param>
9
<message>age should be between ${min} and ${max}</message>
10
</field-validator>
11
</field>
原因是輸入類型不匹配,這個出錯信息是由于開發模式設置為true,把開發模式設置為false就不會產生這個錯誤信息。這個是LOG給的控制臺錯誤,方便用戶調試使用,并不影響程序的正常運行。
-------------------------------------------------------------------------------------------------
PS:本博客文章,如果沒有注明是有“轉”字樣,屬于本人原創。如果需要轉載,務必注明作者和文章的詳細出處地址,否則不允許轉載,多謝合作!
posted on 2008-12-03 21:34
apple0668 閱讀(3882)
評論(1) 編輯 收藏 所屬分類:
struts2