Java 使用c:foreach在包含Bean对象的ArrayList上迭代,不会';行不通
我在JSP中迭代ArrayList,它包含Bean的对象。我想使用getter()从该对象提取信息。ProductID是我感兴趣的属性之一。 为此,我使用JSTL。代码如下:Java 使用c:foreach在包含Bean对象的ArrayList上迭代,不会';行不通,java,jsp,arraylist,jstl,Java,Jsp,Arraylist,Jstl,我在JSP中迭代ArrayList,它包含Bean的对象。我想使用getter()从该对象提取信息。ProductID是我感兴趣的属性之一。 为此,我使用JSTL。代码如下: <c:forEach items="repo" var="element"> <jsp:useBean id="element" scope="page" class="com.ResponseBean"/> Product:<jsp:getProperty property="Prod
<c:forEach items="repo" var="element">
<jsp:useBean id="element" scope="page" class="com.ResponseBean"/>
Product:<jsp:getProperty property="ProductID" name="element"/>
</c:forEach>
public class ResponseBean implements java.io.Serializable {
private static final long serialVersionUID = 1L;
private String ProductID;
public String getProductID() {
return ProductID;
}
public void setProductID(String productID) {
ProductID = productID;
}
但我有以下例外
HTTP Status 500 - Cannot find any information on property 'ProductID' in a bean of type 'com.ResponseBean'
type Exception report
message Cannot find any information on property 'ProductID' in a bean of type 'com.ResponseBean'
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Cannot find any information on property 'ProductID' in a bean of type 'com.ResponseBean'
org.apache.jasper.runtime.JspRuntimeLibrary.getReadMethod(JspRuntimeLibrary.java:824)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1081)
org.apache.jasper.compiler.Node$GetProperty.accept(Node.java:1125)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2375)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2427)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1784)
org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1538)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2375)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2427)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2433)
org.apache.jasper.compiler.Node$Root.accept(Node.java:474)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2375)
org.apache.jasper.compiler.Generator.generate(Generator.java:3517)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:250)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:373)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:657)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.52 logs.
Apache Tomcat/7.0.52
哪里出了问题?您不需要这样做,只需使用EL即可
<c:forEach items="repo" var="element">
Product: ${element.productID}
</c:forEach>
产品:${element.productID}
您不需要这样做,只需使用EL即可
<c:forEach items="repo" var="element">
Product: ${element.productID}
</c:forEach>
产品:${element.productID}
您不需要这样做,只需使用EL即可
<c:forEach items="repo" var="element">
Product: ${element.productID}
</c:forEach>
产品:${element.productID}
您不需要这样做,只需使用EL即可
<c:forEach items="repo" var="element">
Product: ${element.productID}
</c:forEach>
产品:${element.productID}
你可以这样使用
<c:forEach items="repo" var="element">
<c:out value="${element.productID}">
</c:forEach>
你可以这样使用
<c:forEach items="repo" var="element">
<c:out value="${element.productID}">
</c:forEach>
你可以这样使用
<c:forEach items="repo" var="element">
<c:out value="${element.productID}">
</c:forEach>
你可以这样使用
<c:forEach items="repo" var="element">
<c:out value="${element.productID}">
</c:forEach>
在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息。
这几乎就是答案:)在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息;公共字符串getProductID(){return ProductID;}已经有属性ProductID的getter()。@sureshAtta,@NinaBingle现在告诉我问题出在哪里???在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息。
这几乎就是答案:)在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息;公共字符串getProductID(){return ProductID;}已经有属性ProductID的getter()。@sureshAtta,@NinaBingle现在告诉我问题出在哪里???在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息。
这几乎就是答案:)在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息;公共字符串getProductID(){return ProductID;}已经有属性ProductID的getter()。@sureshAtta,@NinaBingle现在告诉我问题出在哪里???在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息。
这几乎就是答案:)在'com.ResponseBean'类型的bean中找不到任何关于属性'ProductID'的信息;公共字符串getProductID(){return ProductID;}已经有属性ProductID的getter()。@sureshAtta,@ninappingle现在告诉我问题出在哪里??它显示异常javax.el.PropertyNotFoundException:在java.lang.String类型上找不到属性“ProductID”
请显示ResponseBean
代码,您需要公共getter/setter,因此,如果您有一个名为productID
的atrtibute,您还需要公共字符串getProductID()
,这也是根据您刚才发布的错误消息,repo
似乎是String
notResponseBean
repo包含ReponseBean对象的集合。对象具有字符串字段ProductID。可能需要清理并重新部署web应用程序。它显示异常javax.el.PropertyNotFoundException:在java.lang.String类型上找不到属性“ProductID”
请显示ResponseBean
代码,您需要公共getter/setter,因此,如果您有一个名为productID
的atrtibute,您还需要public String getProductID()
同样根据上面发布的错误消息,repo
似乎是String
notResponseBean
repo包含ReponseBean对象的集合。对象具有字符串字段ProductID。可能需要清理并重新部署web应用程序。它显示异常javax.el.PropertyNotFoundException:在java.lang.String类型上找不到属性“ProductID”
请显示ResponseBean
代码,您需要公共getter/setter,因此,如果您有一个名为productID
的atrtibute,您还需要public String getProductID()
同样根据上面发布的错误消息,repo
似乎是String
notResponseBean
repo包含ReponseBean对象的集合。对象具有字符串字段ProductID。可能需要清理并重新部署web应用程序。它显示异常javax.el.PropertyNotFoundException:在java.lang.String类型上找不到属性“ProductID”
请显示ResponseBean
代码,您需要公共getter/setter,因此,如果您有一个名为productID
的atrtibute,您还需要public String getProductID()
同样根据上面发布的错误消息,repo
似乎是String
而不是ResponseBean的集合。repo包含ReponseBean对象。对象具有字符串字段ProductID。可能需要清理并重新部署web应用程序。