Class WebappUberspector

java.lang.Object
org.apache.velocity.util.introspection.UberspectImpl
org.apache.velocity.util.introspection.AbstractChainableUberspector
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.RuntimeServicesAware

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

    Nested Classes
    Modifier and Type
    Class
    Description
    class 
    Executor for getAttribute(name) method.
    class 
    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

    conversionHandler, introspector, log, rsvc
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    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 method

    Methods inherited from class org.apache.velocity.util.introspection.AbstractChainableUberspector

    getIterator, getMethod, wrap

    Methods inherited from class org.apache.velocity.util.introspection.UberspectImpl

    getConversionHandler, setLog, setRuntimeServices

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • WebappUberspector

      public WebappUberspector()
  • Method Details

    • 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 - target object
      identifier - property key
      i - tool info
      Returns:
      A Velocity Getter Method.
    • 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 - target object
      identifier - property key
      arg - value to set
      i - tool info
      Returns:
      A Velocity Setter method.