<core:property>

Sets a property of a Node parent tag (either a Page or an Element).

See setProperty(String name, Object value).

Tag Information

Tag Class: com.semanticcms.core.taglib.PropertyTag
TagExtraInfo Class: None
Body Content: scriptless
Display Name: None

Attributes

Name Required Evaluation Type Description
name Yes Runtime Object

The name of property.

TODO: Allow object property names? Too confusing?

value No Runtime Object

The value of the property. If not provided, the output of the body is used with whitespace trimmed.

target No Runtime Node

Target object whose property will be set.

If not provided, sets the property on the closest parent Node parent tag (either a Page or an Element).

The target must not be frozen, which, in the context of JSP, means only the parent element tags within the current page, and the current page itself, can reliably have properties set. Trying to set properties outside this scope is not advised and will likely be unreliable at best. An exception will be thrown when trying to set a property on a frozen node.

In the future, we may add "attributes" to nodes, which would provide for different scopes (application, session, request, page?) and could be changed dynamically.

allowExisting No Runtime boolean

Optionally allows an existing property, when set to true. When set to false (the default), and the property already exists, an exception is thrown.

A property on a target may not be changed once set. This includes when it has been set to null.

Variables

No Variables Defined.