最近盗QQ密码有一个项目使用了struts2,用到了日是期控件
最近盗QQ密码有一个项目使用了struts2,用到了日是期控件,我用的是2.2.1版本。
代码如下,只截了最简单的代码示例
1
2
3
4
5
6
7
8
9
10
11
|
<%@ page contentType= "text/html; charset=gb2312" pageEncoding= "gb2312" %> <% @taglib prefix= "s" uri= "/struts-tags" %> <%@ taglib prefix= "sx" uri= "/struts-dojo-tags" %> <HTML> <HEAD> <S:HEAD theme= "xhtml" /> <SX:HEAD extraLocales= "UTF-8" /> <SX:DATETIMEPICKER name= "picker" value= "%{'2007-01-01'}" /> |
'djConfig.searchIds' 为空或不是对象
感觉很奇怪,不知道是哪里配置有问题,心想不会是 struts配置文件的问题吧,经过了不断的尝试,最后在网上找到一段资料struts tags的使用要求:
Struts tags are only usable when the request has passed through its servlet filter
需要把dojo的文件也通过struts2的servlet filter才能被正常引用。
原来我最开始的struts mapping只配置了
1
2
3
4
|
<FILTER-MAPPING> <FILTER-NAME>struts2</FILTER-NAME> <URL-PATTERN>*.action</URL-PATTERN> </FILTER-MAPPING> |
1
2
3
|
<script language= "JavaScript" src= "/dzdx/struts/utils.js" type= "text/javascript" ></script> <script language= "JavaScript" src= "/dzdx/struts/xhtml/validation.js" type= "text/javascript" ></script> <script language= "JavaScript" src= "/dzdx/struts/css_xhtml/validation.js" type= "text/javascript" ></script> |
所以我要增加一段 mapping
1
2
3
4
|
<FILTER-MAPPING> <FILTER-NAME>struts2</FILTER-NAME> <URL-PATTERN>/struts/*</URL-PATTERN> </FILTER-MAPPING> |
加上这段后,一切正常了。