Various custom configuration elements support a common content model used to supply JSR-223 scripts inside other object configurations. Where applicable, the specific configuration elements that share this content model will link to this page. These include the following documentation pages:
This feature is new in V3.4 and is a supplement to the older supported approach of defining scripted beans in native Spring files and referring to the beans by reference.
Namespace and Schema
Configuration elements that contain scripts are of type ScriptType
, which is a type used across a number of namespaces. The specific namespace will depend on where the element shows up in your configuration.
The following sections describe the attributes and child elements of an element of type An element of type Name Type Default Description If the An element of type Wrap inline scripts with an XML CDATA block An inline script is usually wrapped inside an XML CDATA block to protect against special XML characters. For example: All inline scripts should be wrapped this way, even simple scripts.ScriptType
.Attributes
ScriptType
has the following XML attributes:Use language
string optional "javascript"
Defines the JSR-223 language to use. The default is ECMAScript using either the Rhino (Java 7) or Nashorn (Java 8) engines. customObjectRef
3.2string optional The ID of a Spring bean defined elsewhere in the configuration. customObjectRef
attribute is present, the result of the referenced Spring bean is made available to the script in a variable named custom
. This is in addition to whatever input context is routinely made available to the script. For details, consult the individual configuration element pages listed above.Child Elements
ScriptType
has the following child elements:Name Cardinality Description <Script>
Exactly OneAn inline script <ScriptFile>
Path to a local file or classpath resource containing the script <Script>
<![CDATA[
// script goes here
]]>
</Script>