Calling overridden superclass methods in VTL

View: New views
2 Messages — Rating Filter:   Alert me  

Calling overridden superclass methods in VTL

by Christopher Schultz-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

All,

I was reading
http://wiki.apache.org/jakarta-velocity/BuildingSecureWebApplications
and I noticed that, about halfway down the page, there is this warning
about creating subclass wrappers around objects:

"
Subclassing is not helpful as the template designer can call a method
from a superclass with the VTL $reference.super().badmethod().
"

I no documentation of the "super" method neither in the Developer Guide
nor in the VTL Reference. As far as I know, calling "around" a virtual
method is not possible even using regular Java.

Is this statement apocryphal, or was/is this possible at some point?

Thanks,
-chris



signature.asc (267 bytes) Download Attachment

Re: Calling overridden superclass methods in VTL

by Nathan Bubna :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

No, there was never such a feature.  I think the statement should be
something like:

$reference.badMethodDefinedInSuperClass()

The point seems to be that Velocity supports calling any public method
of an object defined in a public class/interface, not merely those
defined in the subclass.  Which is quite true.

On Tue, Aug 11, 2009 at 7:25 AM, Christopher
Schultz<chris@...> wrote:

> All,
>
> I was reading
> http://wiki.apache.org/jakarta-velocity/BuildingSecureWebApplications
> and I noticed that, about halfway down the page, there is this warning
> about creating subclass wrappers around objects:
>
> "
> Subclassing is not helpful as the template designer can call a method
> from a superclass with the VTL $reference.super().badmethod().
> "
>
> I no documentation of the "super" method neither in the Developer Guide
> nor in the VTL Reference. As far as I know, calling "around" a virtual
> method is not possible even using regular Java.
>
> Is this statement apocryphal, or was/is this possible at some point?
>
> Thanks,
> -chris
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@...
For additional commands, e-mail: user-help@...