[
https://issues.apache.org/struts/browse/STR-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Paul Benedict closed STR-3000.
------------------------------
Resolution: Won't Fix
I debated whether to make a limited change to wrap RequestUtils.populate() of
processPopulate(), or make no changes at all. I am choosing the latter because
this unfriendly behavior has been known for many years and, oddly enough,
people may be depending on it. If this issue arises again for another person,
we can re-open and address it. But for now, upgrading is the best solution.
> IllegalArgumentException not handled while processing query string
> ------------------------------------------------------------------
>
> Key: STR-3000
> URL: https://issues.apache.org/struts/browse/STR-3000
> Project: Struts 1
> Issue Type: Bug
> Components: Core
> Affects Versions: 1.2.9, 1.3.5
> Environment: Using jakarta-tomcat 5.0.28 and java1.4.2.
> Reporter: Chris Book
> Fix For: 1.4.0
>
>
> The following exception is routinely in my tomcat logs. I'm not sure of the
> exact query string that causes the property parsing to crash, but this
> exception is unhandled. Regardless, struts shouldn't allow this exception to
> get down to the tomcat layer.
> I've set this as 'major' because it seems to cause tomcat to eventually stop
> responding to requests. I upgraded from 1.2.9 to 1.3.5 hoping this would be
> fixed but it crashes with both versions.
> 2007-01-28 12:10:04 StandardWrapperValve[action]: Servlet.service() for
> servlet action threw exception
> java.lang.IllegalArgumentException: Invalid mapped property ' U (feat'
> at
> org.apache.commons.beanutils.PropertyUtilsBean.getMappedProperty(PropertyUtilsBean.java:476)
> at
> org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:662)
> at
> org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715)
> at
> org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:884)
> at
> org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:811)
> at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
> at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:451)
> at
> org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:794)
> at
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:191)
> at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
> at
> org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:446)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
> at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
> at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
> at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
> at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
> at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
> at java.lang.Thread.run(Thread.java:534)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.