我正在关注Struts 2 Tutorial - Using Struts 2 Tags
到目前为止,所有内容都按预期工作,直到我将以下内容添加到index.jsp:
<s:url action="hello" var="helloLink">
<s:param name="userName">Bruce Phillips</s:param>
</s:url>
<p><a href="${helloLink}">Hello Bruce Phillips</a></p>
预期结果是锚链接(Hello Bruce Phillips)应该用hello.action的相应URL替换参数userName encoded,但不会发生替换,这就是元素呈现的方式:
<p>
<a href="${helloLink}">Hello Bruce Phillips</a>
</p>
我的语法有什么问题吗?
环境:
答案 0 :(得分:5)
如果否 JSP EL评估,请检查以下内容:
<el-ignored>true</el-ignored>
中配置了<jsp-config>
。我猜第一个。
@ user873670的答案也可以,但在正确配置的应用中不是必需的。
答案 1 :(得分:1)
Struts 2不进行JSP评估,它进行OGNL评估。简单地说它是%{variable}和#variable而不是$ {variable}。
当我们谈论Struts2标签时,这意味着你应该替换
<a href="${helloLink}">
带
<a href='<s:property value="helloLink"/>'>
或
<s:a href="%{helloLink}" >Edit</s:a>
我希望它有所帮助!