2010-01-31 78 views
3

我在使用带有JSP 2.0的JBOSS 4.0.2。 我创建了一个标签文件以下指令:无法将无字符串参数传递给TAG文件

<%@ attribute name="id" required="true" %> 
<%@ attribute name="upgradeAccount" type="com.upc.domain.UpgradeAccountData" %> 

然而,当我尝试UpgradeAccountData类型的对象传递给代码作为参数它总是解析为字符串,例如:

<wmtags:paymentOptions id="23" upgradeAccount="${upgradeAccountCommand}">     
</wmtags:paymentOptions> 

在上面的例子中,upgradeAccountCommand作为"${upgradeAccountCommand}"字符串传递(我通过将标签中的type属性定义为object并打印对象类型和字符串值来检查它)。

我也确保呼叫者页面中的upgradeAccountCommand是实际的UpgradeAccountData对象。

我能做些什么来解决这个问题?

非常感谢

回答

2

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

试试这个:

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

我不这么神往建议老式小脚本为“解决方案”。 – BalusC 2010-01-31 14:01:16

+0

@BalusC我也不是,但它会缩小问题范围,忽略EL。 – ZoogieZork 2010-01-31 19:19:03