麻烦大家帮忙看看这个问题
javax.servlet.ServletException: BeanUtils.populate
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:475)
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:823)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:194)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
jp.co.ybgm.common.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:161)
原因 java.lang.IndexOutOfBoundsException: Index: 141, Size: 0
java.util.ArrayList.rangeCheck(ArrayList.java:604)
java.util.ArrayList.get(ArrayList.java:382)
org.apache.commons.beanutils.PropertyUtilsBean.getIndexedProperty(PropertyUtilsBean.java:511)
org.apache.commons.beanutils.PropertyUtilsBean.getIndexedProperty(PropertyUtilsBean.java:408)
org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:760)
org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:837)
org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:903)
org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:830)
org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:433)
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:473)
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:823)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:194)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)用的是strust框架,用过arraylist保存数据到ACTIONFORM,这个excption也不是必出,只有DEBUG到某个拦截器那里才会出这个问题,如果不在那个点只是偶然出现,已经试过ACTIONFORM的reset()和修改actionform中arraylist的改造,但是debug到那个点还是会出错Strustsjava web

解决方案 »

  1.   

    还有就是Exception的指向基本都是引进的jar文件,基本上除了个拦截器,根本看不到相应的代码
      

  2.   

    这个大家都知道数组越界,但是本质不在这里,actionform在提交过程中将list的数据丢失了,或者没有自动收集才是问题,这个BUG据客户说一天能点出5次,而且如果仅仅是简单的数组越界就不会这么纠结了,我已经说了给出的指向基本上不是我们代码里的东西,都是框架里的
      

  3.   

    同样的操作和数据中也许10次在tomcat发布的情况下出1次,但是如果在拦截器处放置断点DEBUG就会抛出这个BUG