On Fri, 4 Oct 2002, Daniel Haynes wrote:

> Date: Fri, 4 Oct 2002 10:06:42 +0100
> From: Daniel Haynes <[EMAIL PROTECTED]>
> Reply-To: Struts Users Mailing List <[EMAIL PROTECTED]>
> To: "Struts-User (E-mail)" <[EMAIL PROTECTED]>
> Subject: BeanUtils getPropertyDescriptor error
>
> Hi,
>
> Having gone live with our webapp (and changed the logging) an error stated
> to appear in our logs. However the app is functioning fine. Is this error a
> problem ? The error occurs with submitions from jsps which contain radio
> buttons. In our action class we extract the request parameters to establish
> the state(s) of the radio buttons to process the request.
>
> Is all this ok or am I missing something here ?
>

Is this happening during the population of the form bean (which Struts
does for you)?  Do the exception messages show up only in the debug
messages, and not cause problems in your application itself?

If the answer to both questions is "yes", then this is harmless.  The
BeanUtils.populate() method operates like this:
- Iterate over the keys in the Map that is passed in (i.e. over
  the names of all request parameters included in the request)
- If there is a matching property on the destination bean,
  do the appropriate set
- If there is no matching property on the destination bean,
  ignore this request parameter

The exception is being triggered by the getPropertyDescriptor() call used
to test the third condition.

Craig

> (We are using Struts 1.1)
>
>
> 2002-10-03 17:03:35,765 DEBUG [BeanUtils]
> BeanUtils.populate(com.rule.approve.ApproveForm@c18e99,
> {detailsList[5].qualityID=[Ljava.lang.String;@fba68,
> detailsList[10].qualityID=[Ljava.lang.String;@970991,
> detailsList[6].qualityID=[Ljava.lang.String;@f53870,
> detailsList[11].qualityID=[Ljava.lang.String;@4c4ac9,
> detailsList[7].qualityID=[Ljava.lang.String;@c1e333,
> detailsList[8].qualityID=[Ljava.lang.String;@2b3574,
> detailsList[9].qualityID=[Ljava.lang.String;@c27081,
> action=[Ljava.lang.String;@685be9,
> detailsList[0].qualityID=[Ljava.lang.String;@6a1fbe,
> detailsList[1].qualityID=[Ljava.lang.String;@4a0fe1,
> detailsList[2].qualityID=[Ljava.lang.String;@589d3d,
> detailsList[3].qualityID=[Ljava.lang.String;@bb1bc4,
> detailsList[4].qualityID=[Ljava.lang.String;@1bfefb})
> 2002-10-03 17:03:35,765 DEBUG [BeanUtils]
> name='detailsList[5].qualityID', value.class='[Ljava.lang.String;',
> value='[Ljava.lang.String;@fba68'
> 2002-10-03 17:03:35,781 DEBUG [BeanUtils]         getPropertyDescriptor
> java.lang.NoSuchMethodException: Unknown property 'detailsList'
>       at
> org.apache.commons.beanutils.PropertyUtils.getIndexedProperty(PropertyUtils.
> java:416)
>       at
> org.apache.commons.beanutils.PropertyUtils.getIndexedProperty(PropertyUtils.
> java:363)
>       at
> org.apache.commons.beanutils.PropertyUtils.getPropertyDescriptor(PropertyUti
> ls.java:770)
>       at
> org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:501)
>       at
> org.apache.struts.util.RequestUtils.populate(RequestUtils.java:952)
>       at
> org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.j
> ava:795)
>       at
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:244)
>       at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1109)
>       at
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:470)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>       at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:247)
>       at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>       at com.rule.common.filters.TimerFilter.doFilter(TimerFilter.java:36)
>       at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:213)
>       at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>       at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:243)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>       at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>       at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:190)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>       at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
> .java:528)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>       at
> org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:2
> 46)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>       at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>       at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
>       at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
> )
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>       at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
> java:170)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>       at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170
> )
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>       at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>       at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>       at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :174)
>       at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>       at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>       at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>       at
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
> 1012)
>       at
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107
> )
>       at java.lang.Thread.run(Thread.java:536)
> 2002-10-03 17:03:35,781 DEBUG [BeanUtils]         No such property, skipping
>
>
> > Daniel Haynes
> >
> > Rule Financial
> > 30 Cannon Street
> > London EC4M 6YN
> > T: +44 (0)20 7653 5800
> > M: +44 (0)776 4200 867
> > E: [EMAIL PROTECTED]
> >
>
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to