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

chenlin commented on WW-4310:
-----------------------------

Hi Lukasz Lenart ,

Do you use sticky-session for cluster configuration? 
[CHENLIN] sticky-session is used. All user requests are coming to one server by 
load balance ( IBM Http server)

How loginForm is created?
[CHENLIN]  We create loginForm into our Action which extend Action support

Class CustomAction extends ActionSupport  implements SessionAware, RequestAware 
{
        private LoginForm loginForm;
        public LoginForm getLoginForm() {
                return loginForm;
        }

        public void setLoginForm(LoginForm loginForm) {
                this.loginForm = loginForm;
        }

}

 Is default constructor present?
 [CHENLIN] No. we don't put following default constructor into LoginForm. I 
think it will have default one.
 
 public LoginForm (){
 }
 
Have you stress-tested your application? 
Maybe it only happens under heavy load? 
[CHENLIN] Yes, during stress-testing, no such issue reports 
Have you tried to run application in non-clustered environment?
[CHENLIN] Our SIT evironment is clustered within 1 server. It is also having 
similar issue after sometime.
If the application works in three of four nodes of cluster I assume it has 
something to do with clustering and replication.

> All form submission failed due to ognl.OgnlException: target is null for 
> setProperty
> ------------------------------------------------------------------------------------
>
>                 Key: WW-4310
>                 URL: https://issues.apache.org/jira/browse/WW-4310
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Interceptors, Expression Language, Integration
>    Affects Versions: 2.3.15.1
>         Environment: IBM AIX 6.1.0.0
> Websphere Application server 7.0.0.21
> Websphere Portal server 7.0.0.2  
>            Reporter: chenlin
>
> Hi Lukasz Lenart ,
> We are using struts-portlet framework in Websphere Portal server clustering ( 
> 1 Deploy Manager and 4 Portal servers instances) in production. 
> Currently there is one issue happen in one of 4 servers randomly.  The 
> exception is showing login form in set Property is null in one server, but at 
> that time other 3 servers are working fine. This issue can happen in any one 
> of 4 servers  in our production environment. We have also raised few PMR  to  
> IBM team for this issue. But IBM  said it is not caused by them.  We need 
> your help to check if any possible way to cause this issue in struts.  
> If possible, pls share us your avaliable timing and contact, we would like to 
> have a call with you and IBM support to identify root cause. 
>    
>  ===IBM response=============
> When I refer the past PMR ( 18484,000,834)  we shared on all the findings and 
> waiting for your Application team feedback,  as such I don't think any  
> further action pending on  IBM Support end. do check with Application team 
> and  can we ask Application team not using 
> the code what Application team using is  not an IBM  API / service code "     
>                     
> com.opensymphony.xwork2.util.logging.commons.CommonsLogger" , good to   
> check with Application team to discuss with respective vender. 
>     
> The  above error code from strut's application code, check with Application 
> support and ask them to explore further. 
> As  I hope we all are in same page now, as  PMR 20364,000,834  & PMR 
> 18184,000,834  - findings Pointing same  struts2 loging function, even 
> application team explore why they enabled this log ? ,how this impacted the  
> Application Interface page with user login error.
> =====Error Log========
> [3/18/14 1:58:12:142 GMT+08:00] 00000062 OgnlValueStac W 
> com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn Error setting 
> expression 'loginForm.userId' with value '[Ljava.lang.String;@1560156'
>                                 ognl.OgnlException: target is null for 
> setProperty(null, "userId", [Ljava.lang.String;@1560156)
>    at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2326)
>    at ognl.ASTProperty.setValueBody(ASTProperty.java:127)
>    at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
>    at ognl.SimpleNode.setValue(SimpleNode.java:301)
>    at ognl.ASTChain.setValueBody(ASTChain.java:227)
>    at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
>    at ognl.SimpleNode.setValue(SimpleNode.java:301)
>    at ognl.Ognl.setValue(Ognl.java:737)
>    at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:234)
>    at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:183)
>    at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:170)
>    at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:148)
>    at 
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:318)
>    at 
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:231)
>    at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to