Re: Request parameter value different from instance variable value
I think I might have found the reason. The page it is forwarded to have page=ChangePassword as a query string. So I think struts is getting data from the query string and the post data and combining them to form the ChangePassword, ChangePassword as the value for the page variable. I have fixed the logic in ChangePasswordFilter to not forward if the request is going to ChangePassword action. Thanks, Prasanth On 05/08/2018 01:39 AM, Yasser Zamani wrote: > > On 5/7/2018 8:35 PM, Prasanth wrote: >> When I get the value from request object (request.getParameter("page");) it >> returns "ChangePassword". > What does 'String[] pages = request.getParameterValues("page");' return > (it's length and values)? > > Regards. > > - > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > For additional commands, e-mail: user-h...@struts.apache.org >
Re: Request parameter value different from instance variable value
On 5/7/2018 8:35 PM, Prasanth wrote: > When I get the value from request object (request.getParameter("page");) it > returns "ChangePassword". What does 'String[] pages = request.getParameterValues("page");' return (it's length and values)? Regards. - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
Re: Request parameter value different from instance variable value
This seems to be happening only when the PasswordChangedFilter forwards the request to this action. If the action is accessed directly it works fine. Thanks, Prasanth On 05/07/2018 11:05 AM, Prasanth wrote: > Hi, > > I am using struts 2.3.34 and have an form with few text fields and a hidden > field. All the values are set correctly in the action class except for the > hidden field value. > > Below is the html code in the form > id="ChangePassword_page"/> > > In the action the value set to page variable is "ChangePassword, > ChangePassword". When I get the value from request object > (request.getParameter("page");) it returns "ChangePassword". > > Any idea why my action instance variable is set with a different value than > what is in the request parameter? > > Below is the stack trace from the setPage function. > > (java.lang.StackTraceElement[]) > [java.lang.Thread.getStackTrace(Thread.java:1559) > com.xx.webaccess.ContactInfoAction.setPage(ContactInfoAction.java:162) > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > java.lang.reflect.Method.invoke(Method.java:498) > ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:897) > ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1299) > ognl.OgnlRuntime.setMethodValue(OgnlRuntime.java:1508) > > ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:85) > ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:162) > > com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27) > ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2437) > > com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor.setProperty(CompoundRootAccessor.java:81) > ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2437) > ognl.ASTProperty.setValueBody(ASTProperty.java:127) > ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220) > ognl.SimpleNode.setValue(SimpleNode.java:301) > ognl.Ognl.setValue(Ognl.java:713) > com.opensymphony.xwork2.ognl.OgnlUtil$1.execute(OgnlUtil.java:306) > com.opensymphony.xwork2.ognl.OgnlUtil$1.execute(OgnlUtil.java:298) > com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExecute(OgnlUtil.java:393) > com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:298) > > com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:184) > com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:171) > > com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:153) > > com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:303) > > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:221) > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:229) > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:125) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:253) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) > > com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke
Request parameter value different from instance variable value
Hi, I am using struts 2.3.34 and have an form with few text fields and a hidden field. All the values are set correctly in the action class except for the hidden field value. Below is the html code in the form In the action the value set to page variable is "ChangePassword, ChangePassword". When I get the value from request object (request.getParameter("page");) it returns "ChangePassword". Any idea why my action instance variable is set with a different value than what is in the request parameter? Below is the stack trace from the setPage function. (java.lang.StackTraceElement[]) [java.lang.Thread.getStackTrace(Thread.java:1559) com.xx.webaccess.ContactInfoAction.setPage(ContactInfoAction.java:162) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:498) ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:897) ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1299) ognl.OgnlRuntime.setMethodValue(OgnlRuntime.java:1508) ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:85) ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:162) com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27) ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2437) com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor.setProperty(CompoundRootAccessor.java:81) ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2437) ognl.ASTProperty.setValueBody(ASTProperty.java:127) ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220) ognl.SimpleNode.setValue(SimpleNode.java:301) ognl.Ognl.setValue(Ognl.java:713) com.opensymphony.xwork2.ognl.OgnlUtil$1.execute(OgnlUtil.java:306) com.opensymphony.xwork2.ognl.OgnlUtil$1.execute(OgnlUtil.java:298) com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExecute(OgnlUtil.java:393) com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:298) com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:184) com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:171) com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:153) com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:303) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:221) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:229) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:125) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:253) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245) com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140) com.o