JSTL <c:out>元素名称包含空格字符</c:out>

时间:2009-03-19 03:50:56

标签: java jsp jstl

我有一组值可用,但遗憾的是一些变量名称包含空格。我无法弄清楚如何在页面中简单地输出这些内容。我知道我不是很好解释(我是JSP设计师,而不是Java编码器)所以希望这个例子能说明我想要做的事情:

<c:out value="${x}"/>

输出到页面(人工包装):

{width=96.0, orderedheight=160.0, instructions=TEST ONLY. This is a test.,
 productId=10132, publication type=ns, name=John}

我可以使用

输出名称
<c:out value="${x.name}"/>
没有问题。问题是当我尝试获取“发布类型”...因为它有空格时,我似乎无法让<c:out>显示它。

我试过了:

<!-- error parsing custom action attribute: -->
<c:out value="${x.publication type}"/>
<!-- error occurred while evaluating custom action attribute: -->
<c:out value="${x.publication+type}"/>
<!-- error occurred while parsing custom action attribute: -->
<c:out value="${x.'publication type'}"/>
<!-- error occurred while parsing custom action attribute: -->
<c:out value="${x.publication%20type}"/>

我知道真正的解决方案是正确地格式化变量名称(即:没有空格)但我不能让代码更新很长一段时间。可以这样做吗?非常感谢任何帮助。

1 个答案:

答案 0 :(得分:9)

你试过了吗?

<c:out value="${x['publication type']}"/>

我假设Map是此背后的Java类型。