org.apache.myfaces.buildtools.maven2.plugin.builder.annotation
Annotation Type JSFJspProperty


@Documented
@Target(value=TYPE)
@Retention(value=SOURCE)
public @interface JSFJspProperty

Defines a logical property of a component that is accessed via the component's Attributes map, rather than javaBean getter/setter methods.

These logical properties are accessible from views (eg available as JSP tag attributes) just like properties declared with the JSFProperty annotation.

A class or interface that defines just one logical property may use this annotation directly; to declare more than one logical property should use the JSFJspProperties annotation to group a set of these. Classes that implement interfaces with this annotation, or subclass a base class that has this annotation, will inherit the declared attributes.

This annotation should only be applied to classes that also have the JSFComponent and JSFValidator annotation.

Version:
$Revision: 955479 $ $Date: 2010-06-16 23:34:37 -0500 (Wed, 16 Jun 2010) $
Author:
Leonardo Uribe (latest modification by $Author: lu4242 $)

Optional Element Summary
 java.lang.String desc
          A short description of the purpose of this attribute.
 boolean inheritedTag
          Indicate if this property is inherited from a parent tag class or not.
 boolean literalOnly
          Indicate that the getter and setter does not evaluate EL or ValueBinding expressions.
 java.lang.String longDesc
          A long description of the purpose of this attribute.
 java.lang.String name
          The name that identifies this attribute.
 boolean required
          Define whether this attribute is mandatory for the associated component, ie whether it is an error to create an instance of the component and not to provide a value for this attribute.
 java.lang.String returnType
          The type of this attribute.
 boolean stateHolder
          Use saveAttachedXXX and restoreAttachedXXX to save and restore state
 boolean tagExcluded
          Define if this tag is excluded from tld.
 

name

public abstract java.lang.String name
The name that identifies this attribute.

This String is the key used to look up the attribute in the component's Attributes map.

Examples: border, id, value

Default:
""

returnType

public abstract java.lang.String returnType
The type of this attribute.

This must be a fully-qualified class name of a java type.

TODO: doesn't the JSF spec also allow short-cuts for common types here?

Default:
""

required

public abstract boolean required
Define whether this attribute is mandatory for the associated component, ie whether it is an error to create an instance of the component and not to provide a value for this attribute.

Default:
false

tagExcluded

public abstract boolean tagExcluded
Define if this tag is excluded from tld.

This is very ugly feature, and should be used as little as possible. It allows a parent class (or interface) to declare logical properties, then a subclass to "undeclare" them. This is completely broken OO design, but is required in a few rare cases by the JSF specification.

Default:
false

longDesc

public abstract java.lang.String longDesc
A long description of the purpose of this attribute.

This is commonly shown as help in IDEs.

Default:
""

desc

public abstract java.lang.String desc
A short description of the purpose of this attribute.

This is commonly shown as a "tool tip" or popup-help in IDEs.

Default:
""

inheritedTag

public abstract boolean inheritedTag
Indicate if this property is inherited from a parent tag class or not.

Since:
1.0.6
Default:
false

stateHolder

public abstract boolean stateHolder
Use saveAttachedXXX and restoreAttachedXXX to save and restore state

Since:
1.0.6
Default:
false

literalOnly

public abstract boolean literalOnly
Indicate that the getter and setter does not evaluate EL or ValueBinding expressions.

Since:
1.0.6
Default:
false


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