Rich, I've checked in some code for BEEHIVE-1096 that modifies the FlowControllerGenerator.includeFieldAnnotations() method so that the annotation processing will include all the declared fields, including the default (package) access and private inherited fields, for shared flows. I also made the change to the runtime CachedPageFlowInfo class to go through the fields of a page flow super class to get the inherited declared fields.
I think we may still have a similar runtime issue for Faces backing bean and initializing inherited shared flows. For the Controls, I still need to make sure the ClientInitializer source gets generated for the inherited field. If you get a chance to look at this, let me know what you think. Kind regards, Carlin On 6/29/06, Carlin Rogers <[EMAIL PROTECTED]> wrote:
Hey Rich, I'm looking at some page flow inheritance issues wrt fields for shared flows (BEEHIVE-1096 <https://issues.apache.org/jira/browse/BEEHIVE-1096>) and controls ( BEEHIVE-1060<https://issues.apache.org/jira/browse/BEEHIVE-1060>) not being initialized correctly. I have a couple questions for you. In both bugs, there are scenarios where fields declared in the base class and inherited in a derived class are not getting initialized. For the shared flow fields, there's a runtime issue as well as an annotation processing issue. The generated _pageflow/annotation-*.xml derived class does not include the Controller member field for a private member of the base class. In addition, the runtime CachedPageFlowInfo class only calls the getDeclaredFields() for the current class so the inherited shared flow fields will never be included. I've also noticed that the generated _pageflow/annotation-*.xml derived class does not include the Controller member field for a controls either. There also seems to be a separate issue with generating the * ClientInitializer.java source. In general, with page flow inheritance, is there any reason we would not include inherited private member fields for shared flows and controls from the base class in the generated _pageflow/annotation-*.xml of a derived class? Anything I'm missing? Otherwise, I'll plan to modify the annotation processing to include these cases. I also have a new method for the runtime CachedPageFlowInfo class to go through the fields of a page flow super class to get the inherited declared fields. Sound right? Any additional thoughts on these two bugs? Thanks, Carlin
