org.apache.velocity.tools.view
Class WebappUberspector

java.lang.Object
  extended by org.apache.velocity.util.introspection.UberspectImpl
      extended by org.apache.velocity.util.introspection.AbstractChainableUberspector
          extended by org.apache.velocity.tools.view.WebappUberspector
All Implemented Interfaces:
org.apache.velocity.util.introspection.ChainableUberspector, org.apache.velocity.util.introspection.Uberspect, org.apache.velocity.util.introspection.UberspectLoggable

public class WebappUberspector
extends org.apache.velocity.util.introspection.AbstractChainableUberspector

This custom uberspector allows getAttribute() and setAttribute() as standard getters and setters for the "request","session" and "application" keys.

It allows VTL statements like:

 #set($session.foo = 'youpi')
 session parameter 'foo' has value: $session.foo
 

This uberspector requires Velocity 1.6+ ; to use it, you must specify org.apache.velocity.tools.view.WebappUberspector as the last uberspector to the runtime.introspector.uberspect property in you velocity.properties file.

For instance:

runtime.introspector.uberspect = org.apache.velocity.util.introspection.UberspectImpl,org.apache.velocity.tools.view.WebappUberspector

Version:
$Id: WebappUberspector.java $
Author:
Claude Brisson

Nested Class Summary
 class WebappUberspector.GetAttributeExecutor
          Executor for getAttribute(name) method.
 class WebappUberspector.SetAttributeExecutor
          Executor for setAttribute(name,value) method
 
Nested classes/interfaces inherited from class org.apache.velocity.util.introspection.UberspectImpl
org.apache.velocity.util.introspection.UberspectImpl.VelGetterImpl, org.apache.velocity.util.introspection.UberspectImpl.VelMethodImpl, org.apache.velocity.util.introspection.UberspectImpl.VelSetterImpl
 
Field Summary
 
Fields inherited from class org.apache.velocity.util.introspection.AbstractChainableUberspector
inner
 
Fields inherited from class org.apache.velocity.util.introspection.UberspectImpl
introspector, log
 
Constructor Summary
WebappUberspector()
           
 
Method Summary
 org.apache.velocity.util.introspection.VelPropertyGet getPropertyGet(Object obj, String identifier, org.apache.velocity.util.introspection.Info i)
          Property getter
 org.apache.velocity.util.introspection.VelPropertySet getPropertySet(Object obj, String identifier, Object arg, org.apache.velocity.util.introspection.Info i)
          Property setter
 void init()
          init method
 
Methods inherited from class org.apache.velocity.util.introspection.AbstractChainableUberspector
getIterator, getMethod, wrap
 
Methods inherited from class org.apache.velocity.util.introspection.UberspectImpl
setLog
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WebappUberspector

public WebappUberspector()
Method Detail

getPropertyGet

public org.apache.velocity.util.introspection.VelPropertyGet getPropertyGet(Object obj,
                                                                            String identifier,
                                                                            org.apache.velocity.util.introspection.Info i)
Property getter

Specified by:
getPropertyGet in interface org.apache.velocity.util.introspection.Uberspect
Overrides:
getPropertyGet in class org.apache.velocity.util.introspection.AbstractChainableUberspector
Parameters:
obj -
identifier -
i -
Returns:
A Velocity Getter Method.
Throws:
Exception

init

public void init()
init method

Specified by:
init in interface org.apache.velocity.util.introspection.Uberspect
Overrides:
init in class org.apache.velocity.util.introspection.AbstractChainableUberspector

getPropertySet

public org.apache.velocity.util.introspection.VelPropertySet getPropertySet(Object obj,
                                                                            String identifier,
                                                                            Object arg,
                                                                            org.apache.velocity.util.introspection.Info i)
Property setter

Specified by:
getPropertySet in interface org.apache.velocity.util.introspection.Uberspect
Overrides:
getPropertySet in class org.apache.velocity.util.introspection.AbstractChainableUberspector
Parameters:
obj -
identifier -
arg -
i -
Returns:
A Velocity Setter method.
Throws:
Exception


Copyright © 2002-2011 The Apache Software Foundation. All Rights Reserved.