我正在使用JBOSS 4.0.2和JSP 2.0。 我创建了一个包含以下指令的TAG文件:
<%@ attribute name="id" required="true" %>
<%@ attribute name="upgradeAccount" type="com.upc.domain.UpgradeAccountData" %>
但是,当我尝试将类型UpgradeAccountData
的对象作为参数传递给标记时,它总是被解析为String,例如:
<wmtags:paymentOptions id="23" upgradeAccount="${upgradeAccountCommand}">
</wmtags:paymentOptions>
在上面的示例中,upgradeAccountCommand作为"${upgradeAccountCommand}"
字符串传递。(我通过将标记中的type属性定义为对象并打印对象类型及其字符串值来检查它)。
我还确保调用者页面中的upgradeAccountCommand
是实际的UpgradeAccountData
对象。
我该怎么做才能解决这个问题?
非常感谢
答案 0 :(得分:2)
应该工作;听起来EL表达式评估可能会被关闭?这可能是由于页面中的<%@page isELIgnored="false"%>
,或者webapp正在使用2.3 servlet规范(或更早版本)。
试试这个:
<wmtags:paymentOptions id="23" upgradeAccount="<%=upgradeAccountCommand%>">