I'm browsing thru the source code... any help would be extremely welcomed 
!

In addition this is the dump:

[20/04/05 13:10:31:116 EDT] 67e967e9 WebGroup      E SRVE0026E: [Servlet 
Error]-[BeanUtils.populate]: java.lang.ArrayIndexOutOfBoundsException
        at java.lang.Throwable.<init>(Throwable.java)
        at java.lang.Throwable.<init>(Throwable.java)
        at 
java.lang.ArrayIndexOutOfBoundsException.<init>(ArrayIndexOutOfBoundsException.java:60)
        at java.lang.reflect.Array.get(Native Method)
        at 
org.apache.struts.action.DynaActionForm.get(DynaActionForm.java:296)
        at 
org.apache.commons.beanutils.PropertyUtils.getIndexedProperty(PropertyUtils.java:474)
        at 
org.apache.commons.beanutils.PropertyUtils.getIndexedProperty(PropertyUtils.java:428)
        at 
org.apache.commons.beanutils.PropertyUtils.getNestedProperty(PropertyUtils.java)
        at 
org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java)
        at 
org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java)
        at 
org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:808)
        at 
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1252)
        at 
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
        at 
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
        at 
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
        at 
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at 
com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
        at 
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
        at 
com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
        at 
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
        at 
com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
        at 
com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
        at 
com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:76)
        at 
hronline.secure.app.HROnlineFilter.doFilter(HROnlineFilter.java:162)
        at 
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
        at 
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:974)
        at 
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:564)
        at 
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:200)
        at 
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:119)
        at 
com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:276)
        at 
com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
        at 
com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:116)
        at 
com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:186)
        at 
com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
        at 
com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
        at 
com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:618)
        at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:439)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:672)



Hello,

I have a DynaActionForm such as:
<form-bean name="dynaCWWHistoryForm" type=
"org.apache.struts.action.DynaActionForm">
   <form-property name="cancelButton" type=
"org.apache.struts.util.ImageButtonBean"></form-property>
   <form-property name="displayContent" type="java.lang.Boolean"></
form-property>
   <form-property name="frmtPrinter" type="java.lang.String"></
form-property>
   <form-property name="historyItems" type="personal.history.HistoryVO[]"
></form-property>
   <form-property name="language" type="java.lang.String"></form-property>
   <form-property name="scheduleTypes" type="java.util.List"></
form-property>
   <form-property name="systemDate" type="java.lang.String"></
form-property>
   <form-property name="updateButton" type=
"org.apache.struts.util.ImageButtonBean"></form-property>
   <form-property name="workWeekSchedule" type="java.lang.String"></
form-property>
   <form-property name="years" type="java.util.List"></form-property>
</form-bean>

If I assign a size to the array such as:
   <form-property name="historyItems" type="personal.history.HistoryVO[]" 
size="4"></form-property>
It works fine.

My problem is two fold:
1. The HistoryVO[] can be of any size... therefore I cannot assgin a size 
to the <form-property>
2. The user can add rows dynamically to DOM using JavaScript... how can 
this also work with the DynaActionForm ?

Much appreciated,
Glenn

Reply via email to