错误信息
4e49231f WebGroup      E SRVE0026E: [Servlet Error]-[]: java.lang.NullPointerException
at org.apache.jsp._header._jspService(header.jsp  :8)
at com.ibm.ws.webcontainer.jsp.runtime.HttpJspBase.service(HttpJspBase.java:89)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:344)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.serviceJspFile(JspServlet.java:669)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.service(JspServlet.java:767)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.ServicingServletState.service(StrictLifecycleServlet.java:333)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:983)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:564)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:253)
jsp页面
<% response.setHeader("Pragma","no-cache");
  response.setDateHeader("Expires",0);
  response.setHeader("Cache-Control","no-cache");
%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/nuchtml.tld" prefix="prenuchtml" %>
<%@ page import="com.nucleus.los.dto.common.SessionDTO" %>
<%@ page import="com.nucleus.los.dto.common.ApplicationDTO" %>
<%@ page import="com.nucleus.los.util.Format" %>
<%
SessionDTO sessionDTO = (SessionDTO)session.getAttribute("SESSIONOBJECT");
//String crFlag = sessionDTO.getCorpRetailFlag();
String crFlag = sessionDTO.getCorpRetailFlag();
//Debug下面运行到这里就停止了
ApplicationDTO applicationDTO = (ApplicationDTO)session.getAttribute("APPLICATIONOBJECT");
if (applicationDTO==null)
{
applicationDTO = new ApplicationDTO();
}我以为是sessionDTO的问题,后来看了一下,sessionDTO所在得EJB项目顺利编译。jsp所在的WEB项目也把EJB放在了项目属性>Java Build Path加载的路径中。然后运行Web项目on test server就出现了这个问题。我又检查了struts类库,都在classpath路径下面。
还有WEB-INF/下面环境是EJB 2.0,struts,jdk 1.4

解决方案 »

  1.   

    没用过EJB  不过你的
    ApplicationDTO applicationDTO = (ApplicationDTO)session.getAttribute("APPLICATIONOBJECT");  是空吧 ?在哪定义的
      

  2.   

    运行到这行String crFlag = sessionDTO.getCorpRetailFlag();
    要是SPO就是这么个情况
    //out.println("OK,printed.");
    String crFlag = sessionDTO.getCorpRetailFlag();
    //out.println("Not printed");然后在sessionDTO得getCorpRetailFlag()方法加打印语句,控制台也看不见输出。-所以我开始以为是EJB项目没有被WEB项目中配置,可是后来看到WEB项目属性中关于EJB的配置是正确的。
      

  3.   

    sessoin 里面SESSIONOBJECT 不存在。  你拿到sessionDTO 就是null咯,  去调用他的方法当然会NullPointException