Found this one also but for almost all, the root size was 3. Below one was anomaly. Root Size: 4 Result: null Object: com.opensymphony.xwork2.DefaultTextProvider@4d36d73d Object: com.nqadmin.webaccess.LoginAction@7f716c46 Object: com.nqadmin.webaccess.LoginAction@35224c2f
Also found that the issue doesn't come up if I am logging in only to the second website (/context2). The issue only comes up if there are users logging in via context1, whose login request is forwarded to context2. Since it have been a while including the details of how our setup works. Context 2 & Context 3 are two websites and depending on user type they have to login to one or the other. To make it easy for the user we have Context1 where we allow users to login this site checks the database and determines which site they need to be logging into and forwards the login request to Context2 or Context3. We have users who would login to the right context and some who utilize Context1 to login. Thanks, Prasanth On 04/23/2018 09:42 AM, Prasanth Pasala wrote: > Below is the result of the new logging. > > Root Size: 3 > Result: null > Object: com.opensymphony.xwork2.DefaultTextProvider@4d36d73d > Object: com.xxxxxx.webaccess.LoginAction@40c80ce8 > > Thanks, > Prasanth > > On 04/21/2018 05:09 AM, Yasser Zamani wrote: >> On 4/19/2018 4:39 PM, Prasanth Pasala wrote: >>> There is a index.jsp which is defined as default page in web.xml it just >>> forwards the request to Login.action. There is no chaining of actions in >>> struts itself. We do have a LoginFilter which verifies >>> if a user is logged in. >>> >> So maybe there is a bug with chain interceptor! Could you please use >> following code in your action setUsername method (save it's log in a >> private string field in your action). Then print it when your action >> data are not consistent with request params. >> >> String log = ""; >> ActionInvocation invocation= ActionContext.getActionInvocation(); >> ValueStack stack = invocation.getStack(); >> CompoundRoot root = stack.getRoot(); >> log += "Root Size: " + root.size(); >> Result result = invocation.getResult(); >> log += "\r\nResult: " + result; >> List list = new ArrayList(root); >> list.remove(0); >> Collections.reverse(list); >> for (Object object : list) { >> log += "\r\nObject: " + object; >> } >> this.log = log; //saves for possible future use >> >> Thanks! >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org >> For additional commands, e-mail: user-h...@struts.apache.org >> --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org