[jboss-user] [JBoss Seam] - Re: Protected methods on Seam components

petemuir do-not-reply at jboss.com
Fri Feb 16 07:10:34 EST 2007


[Sorry about the rant below - I would claim its an attempt to drag back on topic, but as I can't answer the question I guess it isn't ;)]

"fhh" wrote : It means that they are only accessible from subclasses or from any class of that package. Anyway, that is not a security feature. It is used to seperate visible api from implementation details. If you are the sole developer, why bother?

What? Are you saying that we aren't allowed to use protected methods if we work on small projects?!  I would still use encapsulation even when I was working alone - for a start it helps describe the code (and how you should call methods, secondly its kinda a fundamental part of OO.

Anyway, Mike quite clearly stated he was implementing this code so that it would make the implementors (aka other developers) life easier - I would infer he *is* writing an API (albeit for internal use).

anonymous wrote : anonymous wrote : 
  |   | A final method can't be subclassed so cglib doesn't add a method proxy for them
  |   | 
  | 
  | Yes, but you annotated referenceSession. You did not show getters and setters for that property but I assume they are not final.
  | 

No.  Mike is making the point that cglib subclasses the component, and through this allows Seam to biject.  If a method is final then it can't be altered (hmm, not sure if this is true when using reflection or not) and so bijection cannot occur.  (Please note that I'm not saying this is what happens at all, just interpreting what Mike said ;) - I have no real idea about how this side of things works).

anonymous wrote : 
  | And I still don't get what you are trying to do. From what object are you calling your protected method?

I really doubt he is trying to call a protected method from somewhere BUT is trying to call a public method (e.g. from JSF) which in turn calls a protected method.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4017574#4017574

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4017574



More information about the jboss-user mailing list