我想为一个动作传递多个参数。但是当我使用Struts2构建URL时,它只使用一个参数构建。我可以知道下面的代码出了什么问题吗?
<s:url action="loadValidLevelValueDropDown" id="levelvalueURL" escapeAmp="false">
<s:param name="hierarchyId" value="searchAttribute.hierarchyId.id"></s:param>
<s:param name="valuebycoulmn" value="refcolumnName%{#level.count}"></s:param>
</s:url>
结果是,
/appname/loadValidLevelValueDropDown.action?hierarchyId=1
答案 0 :(得分:-1)
value
标记的<s:param>
属性将OGNL表达式作为值。您的refcolumnName%{#level.count}
值不是有效表达式,因此参数不会附加到网址。
如果您的refcolumnName
是一个集合,那么您可以像这样访问它:
<s:param name="valuebycoulmn" value="refcolumnName[#level.count]" />
如果它应该是一个字符串而不是你需要像字符串那样追加它:
<s:param name="valuebycoulmn" value="'refcolumnName' + #level.count" />