我正在将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属性定义为object并打印了对象类型及其字符串值来进行检查)。

我还确保了调用者页面中的upgradeAccountCommand是实际的UpgradeAccountData对象。

我该怎么解决?

非常感谢

最佳答案

那应该起作用;听起来EL表达评估可能已关闭?这可能是由于页面中的<%@page isELIgnored="false"%>导致的,或者是Webapp使用的是2.3 Servlet规范(或更早版本)。

试试这个:

<wmtags:paymentOptions id="23" upgradeAccount="<%=upgradeAccountCommand%>">

10-07 13:27