这是我的代码,带有时间验证的Struts 2 datepicker
<%@taglib prefix="s" uri="/struts-jquery-tags" %>
<%@taglib prefix="s1" uri="/struts-tags" %>
<html>
<head>
<s:head/>
</head>
<body>
<s1:form action="datePickerAction">
<s:datepicker label="Select From" name="date1" displayFormat="MM-dd-yy" />
<s:datepicker label="Select To" name="date2" displayFormat="MM-dd-yy" />
<s:datepicker label="Select Other" name="date3" displayFormat="MM-dd-yy" />
<s:submit value="Click" align="center" />
</s1:form>
</body>
</html>
我正在使用这个taglib
<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>
,
<s:datetimepicker label="Select From" name="date1" displayFormat="MM-dd-yy" />
最后我的网页显示错误
HTTP状态500 - 读取包含文件模板时出错/ ~~~ ajax / controlheader-core.ftl - 类:freemarker.core.Include
答案 0 :(得分:1)
在jsp
文件中使用正确的taglibs
。使用struts-jquery-tags
或使用struts-dojo-tags
。对于 datetimepicker ,其中任何一个都足够了。还要使用正确的前缀。
例如使用前缀 s - &gt; struts tags
。对struts-dojo-tags
使用 sd ,并为sj
使用前缀struts-jquery-tags
。
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@taglib uri="/struts-dojo-tags" prefix="sd" %>
<html>
<head>
<sd:head/>
</head>
<body>
<s:form action="datePickerAction">
<sd:datetimepicker label="Select From" name="date1" displayFormat="MM-dd-yy" />
<sd:datetimepicker label="Select To" name="date2" displayFormat="MM-dd-yy" />
<sd:datetimepicker label="Select Other" name="date3" displayFormat="MM-dd-yy" />
<s:submit value="Click" />
</s:form>
</body>
</html>
如果使用上面显示的<sd:head/>
,请不要忘记将struts-dojo-tags
置于主标记中。如果使用<sj:head/>
,则同样struts-jquery-tags
。
对于ftl文件的问题,它是struts-2.3.16
中的问题。 issue link。this question。问题已修复,其状态已关闭。
解决方案:问题链接中提供的修补程序或使用不同版本的struts jar。
您的其余问题与{{3}}
重复答案 1 :(得分:0)
我们在struts 2.3.16.3中遇到了同样的问题 struts 2.3.20升级解决了这个问题。