[ 
https://issues.apache.org/jira/browse/WW-4134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14982130#comment-14982130
 ] 

ASF subversion and git services commented on WW-4134:
-----------------------------------------------------

Commit 0a08f6b673a2334a76ab0ae64ad2956cc4f4947a in struts's branch 
refs/heads/master from [~lukaszlenart]
[ https://git-wip-us.apache.org/repos/asf?p=struts.git;h=0a08f6b ]

WW-4134 Checks if Response wasn't committed to allow store messages
(cherry picked from commit 0958077)


> MessageStoreInterceptor java.lang.IllegalStateException if there is no session
> ------------------------------------------------------------------------------
>
>                 Key: WW-4134
>                 URL: https://issues.apache.org/jira/browse/WW-4134
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Interceptors
>    Affects Versions: 2.3.14.3
>            Reporter: Jan Čustović
>             Fix For: 2.3.25, 2.5
>
>
> When there is no session the following error happens on {code:xml}<result 
> type="redirect">{code}.
> {code}
> [org.apache.struts2.dispatcher.Dispatcher.error:38] []  - Exception occurred 
> during processing request: Cannot create a session after the response has 
> been committed
> java.lang.IllegalStateException: Cannot create a session after the response 
> has been committed
>         at 
> org.apache.catalina.connector.Request.doGetSession(Request.java:2880) 
> ~[catalina.jar:7.0.37]
>         at 
> org.apache.catalina.connector.Request.getSession(Request.java:2315) 
> ~[catalina.jar:7.0.37]
>         at 
> org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:898)
>  ~[catalina.jar:7.0.37]
>         at 
> javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:229)
>  ~[servlet-api.jar:na]
>         at 
> javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:229)
>  ~[servlet-api.jar:na]
>         at 
> javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:229)
>  ~[servlet-api.jar:na]
>         at org.apache.struts2.dispatcher.SessionMap.put(SessionMap.java:177) 
> ~[struts2-core-2.3.14.3.jar:2.3.14.3]
>         at 
> org.apache.struts2.interceptor.MessageStoreInterceptor.after(MessageStoreInterceptor.java:279)
>  ~[struts2-core-2.3.14.3.jar:2.3.14.3]
>         at 
> org.apache.struts2.interceptor.MessageStoreInterceptor.intercept(MessageStoreInterceptor.java:195)
>  ~[struts2-core-2.3.14.3.jar:2.3.14.3]
>         at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>  ~[xwork-core-2.3.14.3.jar:2.3.14.3]
> {code}
> This always happens if you wget your resource that has redirect.
> The interceptor should check if the session is available and only then 
> perform message storing.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to