Hi Chris,

I am able to resolve the issue by initializing the Bean object in Model when
page loads.

 

Action class

//-- baen initialize --//

this.cBookingFactorsModel.setCBookingFactorsBean(new CBookingFactorsBean());

 

JSP Page:

 

<s:textfield name="cBookingFactorsBean.salesAfterDiscount" size="13"
cssClass="Input"/>

 

But the error on server console is still seen.

 

WARNING: Error setting value

ognl.OgnlException: target is null for setProperty(null,
"salesAfterDiscount", [Ljava.lang.String;@e6235d)

        at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1651)

 

 

Any idea

  _____  

From: Raghuveer.V [mailto:raghuve...@infotechsw.com] 
Sent: Tuesday, September 22, 2009 12:10 PM
To: 'musom...@aol.com'; 'user@struts.apache.org'
Subject: RE: Struts2 - OGNL - access bean property in model object

 

Hi Chris,

 

I tested it even in similar way still the data is not set when clicked saved
button and I get following error in console.

 

WARNING: Error setting value

ognl.OgnlException: target is null for setProperty(null,
"salesAfterDiscount", [Ljava.lang.String;@e6235d)

        at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1651)

 

 

 

 

 

 

JSP Page:

<s:textfield name="cBookingFactorsBean.salesAfterDiscount" size="13"
cssClass="Input"/>

 

Struts.xml:

 

<action name="bookingFactorsAction*" method="{1}"
class="com.test.actions.CEACBookingFactorsAction">                

      <interceptor-ref name="servletConfig"/>

      <interceptor-ref name="prepare" />

      <interceptor-ref name="debugging" />

      <interceptor-ref name="scopedModelDriven">

            <param name="scope">session</param>

            <param name="name">cBookingFactorsModel</param>

            <param name="className">

                  com.test.model.CBookingFactorsModel

            </param>

      </interceptor-ref>

      <interceptor-ref name="params" />

      <interceptor-ref name="conversionError" />

      <interceptor-ref name="workflow" />

      <interceptor-ref name="defaultStack" />

      <result>/jsp/eacModelInputFactors.jsp</result>

      <result  name="input">/jsp/eacModelInputFactors.jsp</result>

      <result
name="eac_model_input_factors">/jsp/eacModelInputFactors.jsp</result>      

 

Error:

Sep 22, 2009 11:51:05 AM
com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn

WARNING: Error setting value

ognl.OgnlException: target is null for setProperty(null,
"salesAfterDiscount", [Ljava.lang.String;@e6235d)

        at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1651)

        at ognl.ASTProperty.setValueBody(ASTProperty.java:101)

        at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)

        at ognl.SimpleNode.setValue(SimpleNode.java:246)

        at ognl.ASTChain.setValueBody(ASTChain.java:172)

        at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)

        at ognl.SimpleNode.setValue(SimpleNode.java:246)

        at ognl.Ognl.setValue(Ognl.java:476)

        at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:192)

        at
com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:155
)

        at
com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:143
)

        at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(Para
metersInterceptor.java:273)

        at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parame
tersInterceptor.java:187)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method
FilterInterceptor.java:87)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parame
tersInterceptor.java:195)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method
FilterInterceptor.java:87)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(St
aticParametersInterceptor.java:148)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterce
ptor.java:93)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInt
erceptor.java:235)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDr
ivenInterceptor.java:89)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(S
copedModelDrivenInterceptor.java:128)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(Prof
ilingActivationInterceptor.java:104)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(Debu
ggingInterceptor.java:267)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingIn
terceptor.java:126)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareIn
terceptor.java:138)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method
FilterInterceptor.java:87)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nIntercepto
r.java:148)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletCon
figInterceptor.java:164)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasIntercep
tor.java:128)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(Ex
ceptionMappingInterceptor.java:176)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(D
efaultWorkflowInterceptor.java:163)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method
FilterInterceptor.java:87)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(Con
versionErrorInterceptor.java:122)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parame
tersInterceptor.java:195)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method
FilterInterceptor.java:87)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(S
copedModelDrivenInterceptor.java:128)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(Debu
ggingInterceptor.java:267)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareIn
terceptor.java:138)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method
FilterInterceptor.java:87)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletCon
figInterceptor.java:164)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati
on.java:236)

        at
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)

        at
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:468)

        at
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOper
ations.java:77)

        at
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilt
er(StrutsPrepareAndExecuteFilter.java:76)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:215)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:188)

        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:210)

        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:174)

        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127
)

        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117
)

        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:108)

        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)

        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)

        at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processC
onnection(Http11BaseProtocol.java:665)

        at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav
a:528)

        at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo
rkerThread.java:81)

        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:685)

        at java.lang.Thread.run(Unknown Source)

 

-----Original Message-----
From: musom...@aol.com [mailto:musom...@aol.com] 
Sent: Monday, September 21, 2009 6:29 PM
To: user@struts.apache.org
Subject: Re: Struts2 - OGNL - access bean property in model object

 

 

 

 

 

 

JSP page:

 

 

 

<s:textfield name="CBookingFactorsBean.salesAfterDiscount" size="13"

cssClass="Input"/>

 

 

 

 The c in CBookingFactorsBean should be lower case , I think.

 

 

 

 

 

Chris

 

 

 

 

 

 

-----Original Message-----

From: Raghuveer.V <raghuve...@infotechsw.com>

To: user@struts.apache.org

Sent: Mon, Sep 21, 2009 7:48 am

Subject: RE: Struts2 - OGNL - access bean property  in model object

 

 

 

 

 

 

 

 

 

 

Hi Rouxel,

 

 

 

I am using ScopedModelDriven.

 

I am not using prepare,since ModelDSriven interceptor takes care of

initializing model object.

 

 

 

I have following implemented methods of ScopedModelDriven and other servlet

config related methods in my Action class.

 

 

 

--------------------

 

 

 

public Object getModel(){

 

                  System.out.println("getting model.");

 

                  return cBookingFactorsModel;

 

            }     

 

 

 

            public String getScopeKey() {

 

                  System.out.println("getting key.");

 

                  return key;       

 

            }

 

            

 

            public void setModel(Object obj) {

 

                  System.out.println("setting model: "+obj.toString());

 

                  this.cBookingFactorsModel=(CBookingFactorsModel)obj;

 

 

            }

 

            

 

            public void setScopeKey(String key) {

 

                  System.out.println("setting key: "+key);        

 

                  this.key=key;           

 

            }           

 

            

 

 

 

            public void setServletRequest(HttpServletRequest request) {

 

                  this.request=request;         

 

            }

 

            public void setSession(Map map) {

 

                        this.session_map=map;         

 

            }     

 

            

 

            public CBookingFactorsModel getCBookingFactorsModel() {

 

                  return cBookingFactorsModel;

 

            }

 

 

 

 

 

 

 

            public void setCBookingFactorsModel(CBookingFactorsModel

bookingFactorsModel) {

 

                  cBookingFactorsModel = bookingFactorsModel;

 

            }

 

 

 

 

 

  _____  

 

From: Raghuveer.V [mailto:raghuve...@infotechsw.com] 

Sent: Monday, September 21, 2009 4:32 PM

To: 'user@struts.apache.org'

Subject: Struts2 - OGNL - access bean property in model object

 

 

 

 

 

 

 

I have following property in model object(ScopedModelDriven).

 

 

 

CBookingFactorsBean cBookingFactorsBean=null;

 

 

 

In JSP page i get error when accessing [b]'salesAfterDiscount'[/b] property

of custom object(CBookingFactors[b]Bean[/b]) in

model(CBookingFactors[b]Model[/b]).

 

 

 

------------------

 

JSP page:

 

 

 

<s:textfield name="CBookingFactorsBean.salesAfterDiscount" size="13"

cssClass="Input"/>

 

 

 

----------------------------        

 

 

 

WARNING: Error setting value

 

ognl.OgnlException: target is null for setProperty(null,

"SalesAfterDiscount", [Ljava.lang.String;@110d68a)

 

        at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:1651)

 

        at ognl.ASTProperty.setValueBody(ASTProperty.java:101)

 

        at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)

 

        at ognl.SimpleNode.setValue(SimpleNode.java:246)

 

        at ognl.ASTChain.setValueBody(ASTChain.java:172)

 

        at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)

 

        at ognl.SimpleNode.setValue(SimpleNode.java:246)

 

        at ognl.Ognl.setValue(Ognl.java:476)

 

        at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:192)

 

        at

com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:155

)

 

        at

com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:143

)

 

        at

com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(Para

metersInterceptor.java:273)

 

        at

com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parame

tersInterceptor.java:187)

 

        at

com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method

FilterInterceptor.java:87)

 

        at

com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati

on.java:236)

 

        at

com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(S

copedModelDrivenInterceptor.java:128)

 

        at

com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati

on.java:236)

 

        at

org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(Debu

ggingInterceptor.java:267)

 

        at

com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati

on.java:236)

 

        at

com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareIn

terceptor.java:138)

 

        at

com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method

FilterInterceptor.java:87)

 

        at

com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati

on.java:236)

 

        at

org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletCon

figInterceptor.java:164)

 

        at

com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati

on.java:236)

 

        at

org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)

 

        at

org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:468)

 

        at

org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOper

ations.java:77)

 

        at

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilt

er(StrutsPrepareAndExecuteFilter.java:76)

 

        at

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application

FilterChain.java:215)

 

        at

org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh

ain.java:188)

 

        at

org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja

va:210)

 

        at

org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja

va:174)

 

        at

org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127

)

 

        at

org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117

)

 

        at

org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java

:108)

 

        at

org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)

 

        at

org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)

 

        at

org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processC

onnection(Http11BaseProtocol.java:665)

 

        at

org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav

a:528)

 

        at

org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo

rkerThread.java:81)

 

        at

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav

a:685)

 

        at java.lang.Thread.run(Unknown Source)

 

 

 

 

 

 

Reply via email to