4 Replies Latest reply on May 31, 2006 11:23 AM by Chris Hane

    Accessing Snnotations on Proxied Local Object

    Chris Hane Novice

      I'm trying to access the annotations on a @In property (which is a SFSB) from another SFSB. However, the annotations do not appear to be accessible since the @In SFSB is proxied.

      Is there a way to access the annotations? Or should I go ask in another forum (pointers to the right one? I tried asking in the beginners forum)?

      Specifically I have the following class:

      @Name("quote.editor")
      @Stateful
      public class QuoteEditor implements IQuoteEditor{
      
       public Quote quote;
      
       @Relate(name = "quote")
       public String save(){
       return super.save();
       }
      }



      In another SFSB I have a reference to the above SFSB:
      @Stateful
      @Scope(ScopeType.CONVERSATION)
      @Name("quote.configurator")
      public class QuoteConfigurator implements IQuoteConfigurator {
      
       private static final Log log = LogFactory.getLog(QuoteConfigurator.class);
      
       @In(value="quote.editor")
       private IQuoteEditor qEditor;
      
       public String configure(){
       log.fatal(" methods for class["+qEditor.getClass()+"]:"); //<-- Proxy class and not a QuoteEditor
       for(Method m: qEditor.getMethods()){
       log.fatal(" method["+m.getName()+"]");
       for(Annotation ann : m.getAnnotations()){
       log.fatal(" int ann["+ann+"]");
       }
       }
       return "configure";
       }
      
      }


      All of the methods I expect (and a few more from the proxy stuff), are logged. However, none of the annotations are logged. Also, I have access to the Local interface (IQuoteEditor) annotations, just not the SFSB object (QuoteEditor) and its annotations.

      Is there a way to access the annotations on the proxied object?

      TIA,
      Chris....