Struts2 <s :url>/<s:param> tags outputting date parameter values that fail in type conversion

标签 struts2 tags

我正在努力解决 Struts2 日期格式问题。如果我理解正确,Struts2 中的类型转换是语言环境感知的,并且映射到 Date 对象的任何表单字段/参数都应该是以其语言环境特定的 SHORT 格式格式化的字符串;值堆栈上 Date 对象的默认输出也输出为 Locale 特定的 SHORT 格式(除非被自定义格式覆盖)。

尽管表单字段与日期配合良好,但在使用 <s:url> 时标签我似乎无法获得 <s:param>标记以正确编码日期参数。当我尝试这样的事情时

<s:url action="foo" >
  <s:param name="endDateParam" value="#endDate"/>
</s:url>

结果显然不是 SHORT 格式:
/foo.action?endDateParam=Sat+Jan+14+00%3A00%3A00+EST+2012

我重新阅读了 Struts2 文档,但他们主要讨论在 i18n'ized 属性文件中创建自定义日期格式,这似乎不是正确的解决方案。

对这个问题的任何帮助将不胜感激。

最佳答案

你可以这样发送:

<s:param name="dateFrom">
<s:date name="dateFrom" format="dd.MM.yyyy"/>
</s:param>

关于Struts2 <s :url>/<s:param> tags outputting date parameter values that fail in type conversion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9846967/

相关文章:

javascript - 从 Tagify 表单中清理/转义非法字符

java - 为什么生成的 URL 中缺少我的参数值?

java - 使 Struts2 redirectAction 使用相对路径而不是绝对路径

tomcat - Tomcat 5.5 上的 struts2 应用程序 : Basic user/pass security?

css - 我可以在 <li> 标签内设置字体系列吗?

svn 分支和多轨开发

javascript - 有没有办法创建自己的 HTML 元素?

java - Spring3 与 Struts2 的集成

java - Struts2 - 操作名称后面的参数不适用于其他语言

javascript - 使用javascript获取标签的值