You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "Julie Zhuo (JIRA)" <be...@incubator.apache.org> on 2005/05/14 01:40:06 UTC

[jira] Closed: (BEEHIVE-460) CCE when hitting an action that implements an abstract action that uses generics

     [ http://issues.apache.org/jira/browse/BEEHIVE-460?page=all ]
     
Julie Zhuo closed BEEHIVE-460:
------------------------------


Verified fixed at rev170022.

> CCE when hitting an action that implements an abstract action that uses generics
> --------------------------------------------------------------------------------
>
>          Key: BEEHIVE-460
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-460
>      Project: Beehive
>         Type: Bug
>   Components: NetUI
>     Versions: V1Beta, V1
>     Reporter: Rich Feit
>     Assignee: Julie Zhuo
>      Fix For: V1

>
> Repro:
> Create the following two page flow classes, where MyForm is any class that extends BaseForm (some other class):
>     /base/Base.jpf
>     ---
>     public abstract class ReproController<T extends BaseForm> 
>     extends PageFlowController
>     {
>         @Jpf.Action
>         public abstract Forward someAction(T form);
>     }
>     /derived/Derived.jpf:
>     ---
>     @Jpf.Controller()
>     public class Derived
>         extends Base<MyForm>
>     {
>         ...
>         @Jpf.Action(
>             forwards={
>                @Jpf.Forward(name = "success", path="index.jsp")
>             }
>         )
>         public Forward someAction(MyForm form)
>         {
>             return new Forward("success");
>         }
>     }
> If you hit /derived/Derived.jpf, you get the following exception:
>     java.lang.ClassCastException: base.BaseForm
> 	at repro.subclass.SubclassController.getResources(SubclassController.java:11)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:811)
> 	at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:750)
> 	at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:433)
> 	at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:249)
> 	at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:315)
> 	at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:48)
> 	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
> 	at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:108)
> 	at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:1973)
> 	at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:63)
> 	at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:86)
> 	at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2035)
> 	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
> 	at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:593)
> 	at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:854)
> 	at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:602)
> 	at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:155)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira