on 01-20-2015 7:02 AM
Hi,
we have a dynamic web application which uses Hibernate 4.1.9 and Spring 3.1.4 and hosted on a Netweaver 7.30.
we are getting an error msg
java.lang.IllegalStateException: Cannot activate session
we are not sure whats the cause of this error and how to handle it. how can we handle it? as out application is already in production, and this issue is becoming a show stopper for us.
stack traces as shown below:
500 Internal Server Error is returned for HTTP request
[https://pj1.company.com.sa:443/company.com~it~ca~olswar/report/groupReport.xhtml]:
component [facesServlet],
web module [company.com~it~ca~olswar],
application [company.com/it~ca~olsear],
DC name
[company.com/it~ca~olsear],
CSN component[],
problem categorization
[com.sap.ASJ.web.000137],
internal categorization [336953622].
[EXCEPTION]
java.lang.IllegalStateException: Cannot activate session:
at
com.sap.engine.session.runtime.http.HttpRuntimeSessionModel.beforeActivate(HttpRuntimeSessionModel.java:91)
at
com.sap.engine.session.runtime.RuntimeSessionModel.activate(RuntimeSessionModel.java:301)
at
com.sap.engine.session.runtime.SessionRequest.session(SessionRequest.java:90)
at
com.sap.engine.session.runtime.http.HttpSessionRequest.getSession(HttpSessionRequest.java:512)
at
com.sap.engine.services.servlets_jsp.server.runtime.client.RequestContext.getSession(RequestContext.java:619)
at
com.sap.engine.services.servlets_jsp.server.runtime.client.HttpServletRequestFacadeWrapper.getSession(HttpServletRequestFacadeWrapper.java:328)
at
org.springframework.web.context.request.ServletRequestAttributes.updateAccessedSessionAttributes(ServletRequestAttributes.java:222)
at
org.springframework.web.context.request.AbstractRequestAttributes.requestCompleted(AbstractRequestAttributes.java:48)
at
org.springframework.web.context.request.RequestContextListener.requestDestroyed(RequestContextListener.java:78)
at
com.sap.engine.services.servlets_jsp.server.application.WebEvents.requestDestroyed(WebEvents.java:866)
at
com.sap.engine.services.servlets_jsp.server.runtime.client.HttpServletRequestFacadeWrapper.reset(HttpServletRequestFacadeWrapper.java:88)
at
com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:551)
at
com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
at
com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
at
com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:276)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
at
com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at
com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at
com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at
com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
at
com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
at
com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
at
com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at
com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at
com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
at
com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
at
com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
at
com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at
com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at
com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Caused
by: com.sap.bc.proj.jstartup.sadm.ShmNotOwnerException: Cannot lock web session
735 (rc = 14 no permission).
at
com.sap.bc.proj.jstartup.sadm.ShmWebSession.nativeLoad(Native Method)
at
com.sap.bc.proj.jstartup.sadm.ShmWebSession.<init>(ShmWebSession.java:261)
at
com.sap.bc.proj.jstartup.sadm.ShmWebSession.findSession(ShmWebSession.java:319)
at
com.sap.bc.proj.jstartup.sadm.ShmWebSession.findSession(ShmWebSession.java:333)
at
com.sap.engine.session.runtime.http.HttpRuntimeSessionModel.activateShmSlot(HttpRuntimeSessionModel.java:377)
at
com.sap.engine.session.runtime.http.HttpRuntimeSessionModel.beforeActivate(HttpRuntimeSessionModel.java:86)
...
47 more
Hi Moyad,
Were you able to solve this issue?
Thanks,
Vivek
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Moayad,
Increase the shared memory Web session table size.
Please go through the below link for detailed solution.
(JSTSG)(P4-IIOP)Ses-P004 - Java Server Troubleshooting Guide - SCN Wiki
Thanks,
Hamendra
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Moayad,
Please give a try to the below document
https://websmp201.sap-ag.de/~sapidb/011000358700001414332011E/xi31_fp37_relnotes_en.pdf
Thanks,
Hamendra
Hello Moayad,
This error may be due an outdated SAP kernel, so upgrading the kernel may make a difference.
Otherwise, further things should be checked. An HTTPWatchTrace would help us identify the root casue. And this note is also worth mentioning 1910608 here. (In the resolution part you can see references to a kernel patch upgrade.)
Best Regards,
Peter
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Peter,
I checked, the kernel is updated.
we have been analyzing, I believe it could be related to loadbalancer.
as our application is hosted on multiple servers and each server with 3 nodes and we depend on single sign on from the Portal,
we found that it fails on some nodes in the beginning and as time passes it starts failing on more nodes until the server is restarted then it starts working for few hours before going into the same cycle.
regards,
Moayad
Hi Peter,
I am changing a configuration in the App web.xml, and I am hoping it will fix the issue in our production environment.
I have changed and added the load-on-startup attribute
in our web.xml we had the following configuration.
<servlet>
<display-name>login/loginLocalServ</display-name>
<servlet-name>login/loginLocalServ</servlet-name>
<servlet-class>com.company.ols.login.LoginServletLocal</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login/loginServ</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>facesServlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>facesServlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
and now I have changed it to
<servlet>
<display-name>login/loginLocalServ</display-name>
<servlet-name>login/loginLocalServ</servlet-name>
<servlet-class>com.company.ols.login.LoginServletLocal</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login/loginServ</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>facesServlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>facesServlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
User | Count |
---|---|
86 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.