在JSP页面中使用Bean时出错

时间:2015-12-30 12:58:44

标签: java jsp

我有一个bean,我需要使用一个方法来填充JSP页面中的表,我的JSP是

<%@page import="domain.docs"%>
<%@page import="java.util.List"%>
<%@page import="beans.statsbeans" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<jsp:useBean id="stats" scope="session" class="beans.statsbeans" />
<jsp:setProperty name="report" property="*" />
<!DOCTYPE html>
<html>
    <head>
        <%
        String opcion = request.getParameter("value");    
        %>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Reporte Excel</title>
    </head>
    <body>


        <%  
        List<docs> doclist = report.getExcel(value);

        for (int i=0; i<lista.size();i++){

            out.println("Record No"+i);
        }

        %>
    </body>
</html>

基本上,页面现在只是一个虚拟页面,而我测试它为什么不起作用,bean有一个名为getExcel(String value)的方法,它返回一个objetc列表。

Stacktrace表示调用bean中的方法时会出现NULL指针异常。

当我调试它时,JSP页面似乎正确传递了值,但是bean没有接收它

如果我将鼠标指向JSP repor.getExcel(),则表示没有当前上下文(Stack Frame)

有什么想法吗?

编辑:添加完整的STACKTRACE:

Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:575)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)
causa raíz

java.lang.NullPointerException
    beans.EstadisticaBean.obtenerExcel(EstadisticaBean.java:43)
    org.apache.jsp.formulario.reporte_005fexcel_jsp._jspService(reporte_005fexcel_jsp.java:123)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)

问题是我从不使用JSP,我需要将此功能添加到旧的开发中,通常我会将JSF用于所有内容

1 个答案:

答案 0 :(得分:0)

你必须设置属性property =&#34; listDoc&#34;和值=&#34;&lt;%= list%&gt;&#34; 其中listDoc是你的成员beans.statsbeans类

相关问题