Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将对象放入JSP变量中?_Jsp_Tags_Javabeans - Fatal编程技术网

如何将对象放入JSP变量中?

如何将对象放入JSP变量中?,jsp,tags,javabeans,Jsp,Tags,Javabeans,我有一个我想在自定义标记中使用的对象集合,但我只能获取集合元素一次,因为它在获取后会迭代到下一个。所以我决定定义一个变量。但它不起作用 <jsp:useBean id="rw" scope="request" class= "by.epam.web.libruary.transferobject.AvailableBookSet"> <c:set var="element" value="${rw.element}" scope="pag

我有一个我想在自定义标记中使用的对象集合,但我只能获取集合元素一次,因为它在获取后会迭代到下一个。所以我决定定义一个变量。但它不起作用

<jsp:useBean id="rw" scope="request" class=
"by.epam.web.libruary.transferobject.AvailableBookSet">
    <c:set var="element"
        value="${rw.element}"
        scope="page"/>
    <mytag:bodyattr num="${rw.size}">
        <form name="orderBook" method="POST" action="${controllerpage}">
            <input type="submit" name="submit" 
              value="${rw.element.shortinfo}">
        </form>
    </mytag:bodyattr>
</jsp:useBean>
这是我的例外:

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/available_books.jsp at line 51

48:     
49:     <jsp:useBean id="rw" scope="request" class=
50:     "by.epam.web.libruary.transferobject.AvailableBookSet">
51:         <c:set var="element"
52:             value="${rw.element}"
53:             scope="page"/>
54:         <mytag:bodyattr num="${rw.size}">
org.apache.jasper.JasperException:在第51行处理JSP页面/JSP/available_books.JSP时发生异常
48:     
49:     
51:         
54:         

非常感谢您的帮助。

除非您在帖子中遗漏了一些关键代码,否则当您调用
.getElement()
方法时,
null
。调用
.next()
将抛出
NullPointerException

尝试颠倒这两行的顺序:

<c:set var="element" value="${rw.element}" scope="page"/>
<mytag:bodyattr num="${rw.size}">


这是我尝试做的第一件事。但我也有同样的异常。异常是来自
c:set
标记还是切换时的
mytag:boddyattr
标记?异常在我的自定义标记中。不知道为什么,但它(定义变量)在它的主体中不起作用。用普通标签更改,现在可以使用了。
<c:set var="element" value="${rw.element}" scope="page"/>
<mytag:bodyattr num="${rw.size}">