【发布时间】:2013-01-08 23:21:52
【问题描述】:
我正在尝试使用s:url,并且该值包含一个属性。而且它不起作用。
<s:url value='/js/myJS-<s:property value="locale"/>.js'/>
预期输出:
....../contextPath/js/myJS-en_US.js
【问题讨论】:
我正在尝试使用s:url,并且该值包含一个属性。而且它不起作用。
<s:url value='/js/myJS-<s:property value="locale"/>.js'/>
预期输出:
....../contextPath/js/myJS-en_US.js
【问题讨论】:
这样嵌套 JSP 标签是非法的。
使用普通的 JSP EL(假设您在支持它的容器上):
<s:url value="/js/myJS-${locale}.js"/>
如果您没有运行支持 JSP EL (ew) 的容器,请使用 OGNL:
<s:url value="/js/myJS-%{locale}.js"/>
可以说这是首选机制,因为 OGNL 是 S2 的默认 EL。
当报告“不工作”时,您还应该包括您遇到的错误,例如,在这种情况下,JSP 永远不会编译。
【讨论】:
<s:url value="/js/myJS-%{locale}.js"/>,无论如何这可能是更可取的解决方案。