Hi, this is my framework problem, for certain reasons using default servlet session is disabled, i thought it is struts error. sorry to all.
as session is disabled... can i do the same operation with request.setAttribute(...) ? can any one tell me where the values added in session are read and used in new action, in this code? On Wed, Nov 5, 2008 at 10:14 PM, Greg Lindholm <[EMAIL PROTECTED]> wrote: > > There must have been a change in Struts 2.1.2. > Here is an update to the after() method that uses the ActionContext session > map: > > protected void after(ActionInvocation invocation, ValidationAware > validationAware) > throws Exception > { > Result result = invocation.getResult(); > > if (result instanceof ServletRedirectResult > || result instanceof ServletActionRedirectResult) > { > Map session = invocation.getInvocationContext().getSession(); > > Collection actionErrors = validationAware.getActionErrors(); > if (actionErrors != null && actionErrors.size() > 0) > { > session.put(ACTION_ERRORS_KEY, actionErrors); > } > > Collection actionMessages = validationAware.getActionMessages(); > if (actionMessages != null && actionMessages.size() > 0) > { > session.put(ACTION_MESSAGES_KEY, actionMessages); > } > > Map fieldErrors = validationAware.getFieldErrors(); > if (fieldErrors != null && fieldErrors.size() > 0) > { > session.put(FIELD_ERRORS_KEY, fieldErrors); > } > } > } > > The full interceptor source can be found here: > > http://glindholm.wordpress.com/2008/07/02/preserving-messages-across-a-redirect-in-struts-2/ > > > > Mead Lai wrote: > > > > "java.lang.UnsupportedOperationException: Don't use default servlet > > session". > > Just use the session from ActionContext, don't use the servlet's. > > > > protected Map<String,String> getSession() { > > return ActionContext.getContext().getSession();//from > > ActionContext > > here! > > } > > > > protected HttpServletRequest request(){ > > return ServletActionContext.getRequest(); > > } > > > > > > On Wed, Nov 5, 2008 at 12:05 PM, Narayana S <[EMAIL PROTECTED]> > > wrote: > > > >> Hi, > >> > >> i am using apache Tomcat 6.0.3, struts 2.1.2, and jdk 1.6. can any > >> one help me solving this issue? > >> > >> Thanks in advance. > >> > >> On Tue, Nov 4, 2008 at 7:06 PM, Greg Lindholm <[EMAIL PROTECTED]> > >> wrote: > >> > >> > > >> > > >> > > >> > Ganesh123 wrote: > >> > > > >> > > Excellent work. i am looking for the same solution. i tried > >> > > implementing your interceptor , but it is throwing exception ... > >> > > "java.lang.UnsupportedOperationException: Don't use default > servlet > >> > > session". > >> > > > >> > > near session.setAttribute(ACTION_MESSAGES_KEY,actionMessages); > >> > > > >> > > > >> > > >> > Very strange, I've never seen a session where setAttribute() throws an > >> > UnsupportedOperationException. (And whats a "default servlet > >> session"?) > >> > I can only guess it's something to do with your container environment. > >> > > >> > You had better post your configuration information; platform, > >> container, > >> > cluster setup? etc. maybe someone on the list can help. > >> > > >> > Here are the relevant lines of code from the interceptor. > >> > > >> > ActionContext actionContext = invocation.getInvocationContext(); > >> > HttpServletRequest request = (HttpServletRequest) > >> > actionContext.get(StrutsStatics.HTTP_REQUEST); > >> > HttpSession session = request.getSession(false); > >> > if (session != null) > >> > { > >> > ... > >> > Collection actionMessages = validationAware.getActionMessages(); > >> > if (actionMessages != null && actionMessages.size() > 0) > >> > { > >> > session.setAttribute(ACTION_MESSAGES_KEY, actionMessages); > >> > } > >> > ... > >> > } > >> > > > > > > > > > > > -- > View this message in context: > http://www.nabble.com/-S2--Preserving-messages-across-a-Redirect-in-Struts-2-tp18245061p20343444.html > Sent from the Struts - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >