如何访问JSP中的bean属性?

问题描述:

我们如何访问JSP中的bean属性?
我试图如何访问JSP中的bean属性?

<core:forEach var="header" items="${command.headerList}" > 
<td><core:out value="${header.columnName}"/></td> 
</core:forEach> 

其中headerList是其具有属性COLUMNNAME为myBean列表[吸气/设定器在类中定义]

Expected:它应该打印在COLUMNNAME值
Actual:它是不是在所有

也打印任何东西我怎么能访问的第n个ELEM列入名单?我试图

${command.headerList[i]} 

Output:没有显示。

编辑:#

当我写

${command.headerList} 

它显示

[email protected][email protected][email protected]

This is just to let you know that the list is having something

,当我写

${header} 

foreach循环它里面显示:

[email protected]d9d714

That means even header is having value, then why i am unable to print values using

${header.columnName} 

header是在JSP中的隐含对象映射到请求(HTTP)头。有关隐式对象的完整列表,请参阅the JSP spec

尝试引用相对于您存储的范围的bean(例如requestScope.header)。最好将名称改为别的。

+0

+1:导致一个德哦! – BalusC 2009-11-10 22:10:10

+0

哦,我的天啊,现在应该说什么。 :)我将'header'改为'header1',它工作。 +10如果我可以:) – 2009-11-11 07:13:41

如何才能访问JSP中的bean属性? 我试图

<core:forEach var="header" items="${command.headerList}" > 
<td><core:out value="${header.columnName}"/></td> 
</core:forEach> 

其中headerList是被具有属性COLUMNNAME的为myBean的列表[吸气/设定器在类中定义]

看起来细。会发生什么呢?

如何访问列表中的第n个元素?我试图

${command.headerList[i]} 

看起来很好,只要i初始化和范围。会发生什么呢?

当我写

${command.headerList} 

它显示

[email protected], [email protected], [email protected] 

它应包括在前面[]在尾部,但对于残余它看起来很好,只要您没有在MyBean类中覆盖Object#toString()。你有什么期望?

和当我写

${header} 

foreach循环内它显示:

[email protected]d9d714 

看起来细。你有什么期望?

总结:我不明白你的问题。请详细说明。发布SSCCE。讲述预期的输入/输出。讲述实际的输入/输出。

编辑您已编辑您的问题。那么,这里是更新的答案。

${header.columnName} 

预期:它应该在COLUMNNAME
实际打印的价值:它是不是在所有

打印任何东西。然后,它实际上并没有包含值。要正确测试,覆盖Object#toString()类似如下:

public String toString() { 
    return "header[" + columnName + "]"; 
} 

而且使用${command.headerList}测试。您还可以将一些System.outLogger语句添加到getter方法,以查看它是否实际被调用并实际返回值。或者如果您了解如何使用它,只需运行一个代码调试器即可。每个像样的IDE都附带一个。

下一页:

${command.headerList[i]} 

输出:无显示。

然后没有有效的i的手段。要正确测试它,请执行以下操作来获得的第一个项目:

${command.headerList[0]}