jsp - javax.servlet.jsp.JspException : In <parseDate>, 无法建立解析语言环境

标签 jsp jstl atg oracle-commerce

有没有人能找出这个错误的根本原因?使用 fmt:parseDate tag ,以正确的格式解析日期。我似乎无法找到一种方法来复制导致此异常的原因。
我的日期格式例如:“2015-08-06 13:13:30.59”
从数据库中提取 order.submittedDate 值并尝试从日期对象中获取 dd 。

<fmt:parseDate value="${order.submittedDate}" pattern="yyyy-MM-dd" var="formatedDate"/>
<fmt:formatDate pattern="dd" value="${formatedDate}" var="submittedDay"/>

在完整的堆栈跟踪下方找到
    javax.servlet.jsp.JspException: In &lt;parseDate&gt;, a parse locale can not be established
at org.apache.taglibs.standard.tag.common.fmt.ParseDateSupport.doEndTag(ParseDateSupport.java:138)
at org.apache.jsp.tp_002dapp.emailTemplate.orderConfirmationEmail_jsp._jspx_meth_fmt_005fparseDate_005f0(orderConfirmationEmail_jsp.java:1323)

最佳答案

试试下面的代码,它会将 en_GB 作为语言环境传递 - 您需要将其替换为您的语言环境:

 <fmt:parseDate value="${order.submittedDate}" pattern="yyyy-MM-dd" var="formatedDate" parseLocale="en_GB" />

如果您想对语言环境进行软编码,您可以在 ATG 中按如下方式进行:
<dsp:importbean var="requestLocale" bean="/atg/dynamo/servlet/RequestLocale" />
<fmt:setLocale value="${requestLocale.locale}"/>
<fmt:parseDate value="${order.submittedDate}" pattern="yyyy-MM-dd" var="formatedDate" />

关于jsp - javax.servlet.jsp.JspException : In &lt;parseDate&gt;, 无法建立解析语言环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31934331/

相关文章:

java - JSP include指令和JSP include标签的区别之一

java - Spring Boot - JSP 不显示列表?

java - 如何在 JSTL 中将对象转换为 JSON?

javax.el.PropertyNotFoundException : Property 'tname' not found on type java. lang.String

java - ATG:更新订单模式

java - 使用 <s : iterator> tag 附加静态值

php - Web 服务器和 Servlet 容器之间的区别

java - 如何从自定义标签返回值

java - WebLogic 应用程序服务器 (10.3.6) 因大型 Ear 文件部署、关键 CSRF 而失败

java - 找不到 InternationalizationShoppingContextServlet.java