Null Pointer Exception when deploy the application to Tomcat server 5.0.28
794539Aug 30 2010 — edited Aug 31 2010Hi,
I am currently develop a website using Jdeveloper 10.1.2.3. I had encounter a NullPointerException when deploy the application to Tomcat server 5.0.28.
The database for this application is mysql 5.0.67.
If I run the application in my local pc, there will have no problem. But after I deployed to tomcat server, the application will throw me null pointer exception when the there are many applications on that tomcat instance. After refresh, then application run normal, but after a while, when there are around 10 users access to that server, null pointer will be thrown again. Need to always refresh to get rid of the null pointer.
What is this cause? Why after refresh the null pointer will gone??
The complete error message are as below :
[Mon Aug 30 12:38:54 SGT 2010] [127.0.0.1] /hrpay/payroll_entry/salaryAdministration.jsp ERROR: java.lang.NullPointerException
StackTrace: java.lang.NullPointerException
at oracle.jbo.uicli.mom.JUMetaObjectManager.getConfigName(JUMetaObjectManager.java:479)
at oracle.jbo.http.HttpContainer.findSessionCookie(HttpContainer.java:670)
at oracle.jbo.html.jsp.datatags.ApplicationModuleTag.doStartTag(ApplicationModuleTag.java:152)
at org.apache.jsp.payroll_005fentry.salaryAdministration_jsp._jspService*(salaryAdministration_jsp.java:277)*
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:39)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Unknown Source)
and the line for *(salaryAdministration_jsp.java:277)* is as below:
*int jspxeval_jbo_ApplicationModule_0 = jspxth_jbo_ApplicationModule_0.doStartTag();*
NullPointer will throw at every single page at this line (int jspxeval_jbo_ApplicationModule_0 = jspxth_jbo_ApplicationModule_0.doStartTag();) when there has many connections. Anything to do with the dostarttag() of Application Module?
usually I created the ApplicationModule using Business Component Connections in Jdev 10g and the line are look like this:
<jbo:ApplicationModule id="WBMSVisitBCAppModuleDataControl" definition="DataBindings.WBMSVisitBCAppModuleDataControl" releasemode="Stateless" />
I had tried to uncheck the application module pooling at bc -> configurations but to no avail.
Can anyone please tell me why the applications cannot get the ApplicationModule connections at server but can be get from local development?
What is going wrong here?
Thanks a lot !