Excellent -- thanks for checking it out.
Rich

Patrick Osborne (JIRA) wrote:

[ http://issues.apache.org/jira/browse/BEEHIVE-785?page=comments#action_12312583 ]
Patrick Osborne commented on BEEHIVE-785:
-----------------------------------------


I verified this fix with my applications and I'm getting the behaviour I 
expect.  Thanks for the fix Rich.

Illegal argument exception when clicking a link which contains a request 
parameter
----------------------------------------------------------------------------------

        Key: BEEHIVE-785
        URL: http://issues.apache.org/jira/browse/BEEHIVE-785
    Project: Beehive
       Type: Bug
 Components: NetUI
Environment: Windows and Linux with Tomcat.
   Reporter: Patrick Osborne
   Assignee: Krista Baker

Found the following with SVN revision: 179480
I receive the following runtime exception when clicking on a link with request 
parameters.  The actions that fail take no parameters( forms ).  Form posting 
and action links without parameters work as expected.
Exception:    java.lang.RuntimeException: Exception processing bean and request 
parameters:
caused by : java.lang.IllegalArgumentException: No bean specified   Stack 
Trace:    java.lang.RuntimeException: Exception processing bean and request 
parameters:
at 
org.apache.beehive.netui.pageflow.ProcessPopulate.handleStrutsProperties(ProcessPopulate.java:347)
at 
org.apache.beehive.netui.pageflow.ProcessPopulate.populate(ProcessPopulate.java:288)
at 
org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processPopulate(PageFlowRequestProcessor.java:390)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:205)
at 
org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:600)
at 
org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:864)
at 
org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:600)
at 
org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:163)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
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.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IllegalArgumentException: No bean specified
at 
org.apache.commons.beanutils.PropertyUtils.getPropertyDescriptor(PropertyUtils.java:837)
at org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:934)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:808)
at 
org.apache.beehive.netui.pageflow.ProcessPopulate.handleStrutsProperties(ProcessPopulate.java:343)
... 34 more The html generated looks like this:
       <td class="datagrid" align="center"><a 
href="/taskWeb/task/deleteTask.do?task.id=732"><span>delete</span></a></td>
       <td class="datagrid" align="center"><a 
href="/taskWeb/task/viewFiles.do?task.id=732"><span>view</span></a></td>
I generate the links via tags in a datagrid, like this:
   <netui-data:rows>
       <netui-data:anchorCell cellAlign="center" value="delete" 
action="deleteTask"  >
           <netui:parameter name="task.id" value="${container.item.id}" />
       </netui-data:anchorCell>
       <netui-data:anchorCell cellAlign="center" value="view" action="viewFiles"  
>
           <netui:parameter name="task.id" value="${container.item.id}" />
       </netui-data:anchorCell>
       <netui-data:spanCell cellAlign="center" value="${container.item.id}"/>
       <netui-data:spanCell cellAlign="center" value="${container.item.name}"/>
.....
The data source is defined as follows:
   <netui-data:dataGrid dataSource="pageFlow.data.taskList" name="taskList" >
   <netui-data:configurePager defaultPageSize="20" />
taskList is a List of bean objects: List<TaskDto> taskList
TaskDto is a pure java bean with just getters / setters.

Reply via email to