Hitachi

uCosminexus Application Server Application and Resource Definition Reference Guide


3.3.1 Specifications of the HITACHI EJB-JAR Property file

The HITACHI EJB-JAR Property file has the following DOCTYPE declaration:

<!DOCTYPE hitachi-ejb-jar-property PUBLIC '-//Hitachi, Ltd.//DTD Ejb Jar Property 9.0
//EN' 'file:///Cosminexus-installation-directory/CC/admin/dtds/
hitachi-ejb-jar-property_9_0.dtd'>

The HITACHI EJB-JAR Property file is an xml file containing the following tags.

You cannot change the tags of HITACHI EJB-JAR property file when the EJB-JAR to be set does not contain the DD (ejb-jar.xml). Note that you can also use earlier versions of the property file.

Organization of this subsection

(1) When ejb-jar.xml is included

Tag name

Occurrence pattern

Explanation

<hitachi-ejb-jar-property>

Once

Specifies the root tag.

<description>#1

Zero or more times#2

Describes the EJB-JAR file.#3

<display-name>#1

One or more times#2

Displays the EJB-JAR name.#3

1character-string-length

To change the display name, you can use the alphanumeric characters (0 to 9, A to Z, a to z), and the following special characters:

Plus sign (+), hyphen (-), period (.), caret (^), and underscore (_)

<icon>#1

Zero or more times#2

Defines the EJB-JAR icon displayed on the GUI tool.#3

<small-icon>

Zero or once

Specifies the file name for small icons (16 × 16). #3

<large-icon>

Zero or once

Specifies the file name for large icons (32 × 32). #3

<interceptors>

Zero or once

Specifies the interceptor settings.#4

<description>#1

Zero or more times#2

Describes Interceptors.#4

<interceptor>

One or more times

Specifies the Interceptor class settings.#4

<description>#1

Zero or more times#2

Describes interceptor-class.#4

<interceptor-class>

Once

Specifies the interceptor class name.#4

<around-invoke>

Zero or more times

Defines the aroundinvoke method of interceptors.#4

<class>

Zero or once

From the package name, displays the class in which the aroundinvoke method of interceptors exists. #4

<method-name>

Once

Specifies the name of the aroundinvoke method of interceptors.#4

<post-construct>

Zero or more times

Defines the post-construct method of interceptors.#4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the post-construct method of interceptors exists. #4

<lifecycle-callback-method>

Once

Displays the name of the post-construct method of interceptors. #4

<pre-destroy>

Zero or more times

Defines the pre-destroy method of interceptors.#4

<lifecycle-callback-class>

Zero or once

Specifies from the package name the class in which the pre-destroy method of interceptors exists. #4

<lifecycle-callback-method>

Once

Displays the name of the pre-destroy method of interceptors.#4

<post-activate>

Zero or more times

Defines the post-activate method of interceptors.#4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the post-activate method of interceptors exists.#4

<lifecycle-callback-method>

Once

Displays the name of the post-activate method of interceptors.#4

<pre-passivate>

Zero or more times

Defines the pre-passivate method of interceptors.#4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the pre-passivate method of interceptors exists.#4

<lifecycle-callback-method>

Once

Displays the name of the pre-passivate method of interceptors.#4

<relationships>

Zero or once

Defines a relationship.

You can set up this tag in EJB 2.1 or earlier versions. You cannot set up this tag in EJB 3.0 or later versions. #3

<description>#1

Zero or more times#2

Describes the relationships.#3

<ejb-relation>

One or more times

Defines the relationship between two CMP EntityBeans. #3

<description>#1

Zero or more times#2

Describes ejb-relation.#3

<ejb-relation-name>

Zero or once

Specifies the relationship name.#3

<ejb1>

Once

Specifies the information of ejb1 in relation to ejb2.#3

<description>#1

Zero or more times#2

Describes ejb1.#3

<ejb-relationship-role-name>

Zero or once

Specifies the relationship role name.#3

When you define the relationship between two CMP EntityBeans, specify a unique name for each CMP EntityBean. You can also specify the same name for defining different relationships.

<multiplicity>

Once

Specifies multiplicity of ejb1 instances.#3

You can specify the following character strings:

  • One

  • Many

<cascade-delete>

Zero or once

Specifies whether ejb1 is to be deleted automatically when deleting ejb2.#3

This tag is valid when multiplicity of ejb2 is one.

<ejb-name>

Once

Specifies the ejb1 name.#3

The character string that you can specify is the EJB name (value of the <ejb-name>tag) of the CMP2.0 Entity Bean in an EJB-JAR.

<cmr-field-name>

Once

Specifies the CMR field that acquires the ejb2 instances.#3

The value that you can specify is either No EJB Name or the CMR field of the EJB specified in <ejb name>.

<cmr-field-type>

Zero or once

Specifies the return value type of the CMR field method.#3

The value displayed is the return value of the access method specified in <cmr-field-name>.

The value is displayed as is in the case of java.util.Collection or java.util.Set. In all other cases, value is displayed as null.

<ejb2>

Once

Specifies the information of ejb2 in relation to ejb1.#3

<description>#1

Zero or more times#2

Describes ejb2.#3

<ejb-relationship-role-name>

Zero or once

Specifies the relationship role name.#3

When defining the relationship between two CMP EntityBeans, you specify a unique name for each CMP EntityBean. You can also specify the same name for defining different relationships.

<multiplicity>

Once

Specifies the multiplicity of the ejb2 instances.#3

You can specify the following character strings:

  • One

  • Many

<cascade-delete>

Zero or once

Specifies whether ejb2 is to be deleted automatically when deleting ejb1.#3

This tag is valid when multiplicity of ejb1 is one.

<ejb-name>

Once

Specifies the ejb2 name.#3

The character string that you can specify is the EJB name (value of the <ejb-name> tag) of the CMP2.0 Entity Bean in EJB-JAR.

<cmr-field-name>

Once

Specifies the CMR field that acquires the ejb2 instances.#3

The value that you can specify is either No EJB Name or the CMR field of the EJB specified in <ejb name>.

<cmr-field-type>

Zero or once

Specifies the return value type of the CMR field method.#3

The value displayed is the return value of the access method specified in <cmr-field-name>.

The value is displayed as is in java.util.Collection or java.util.Set. In all other cases, the value is displayed as null.

<security-role>

Zero or more times

Defines the security role.

You can set up this tag in EJB 2.1 or earlier versions. You cannot set up this tag in EJB 3.0 or later versions. #3

<description>#1

Zero or more times#2

Describes the security-role.#3

<role-name>

Once

Specifies the role name.#3

<linked-to>

Zero or once

Specifies the role name defined with the cjaddsec command.

This tag is ignored by the cjsetresprop command.

You can change the tag even if the EJB-JAR to be set does not contain the DD (ejb-jar.xml).

<interceptor-binding>#5

Zero or more times

Specifies the settings related to the class level interceptor and method level interceptor.

This tag is ignored in the cjsetresprop command.

In the following cases, a warning message (KDJE37604-W) is output, and the value of <interceptor-class> of <interceptor-binding> set first is enabled:

  • When you specify multiple <interceptor-binding> tags where a wild card is set in <ejb-name>

  • When you specify multiple <interceptor-binding> tags where <ejb-name>, <named-method>, and all the elements under these tags are matching.

Also, when the setting location is EJB 2.1 or earlier versions, a warning message (KDJE37613-W) is output and this setting is ignored.

<description>#1

Zero or more times#2

Describes interceptor-binding.

<ejb-name>

Once

Specifies <ejb-name> of the wild card (*) or Enterprise Bean. Specifies a wild card for defining the default interceptor.

<interceptor-class>

Zero or more times

Specifies the interceptor class name.

Specify either <interceptor-class> or <interceptor-order>.

<interceptor-order>

Once

Specifies the interceptor order or level settings.

Specify either <interceptor-class> or <interceptor-order>.

<interceptor-class>

One or more times

Specifies the interceptor class name.

<exclude-default-interceptors>

Zero or once

Specifies whether to exclude the default interceptor.

The following character strings are displayed:

  • true (when the default interceptor is excluded)

  • false (when the default interceptor is not excluded)

<exclude-class-interceptors>

Zero or once

Specifies whether to exclude the class interceptor.

The following character strings are displayed:

  • true (when the class interceptor is excluded)

  • false (when the class interceptor is not excluded)

<named-method>

Zero or once

Defines the method.

<method-name>

Once

Specifies the EJB business method name. The specified asterisk (*) is not handled as a wild card

If the specified method does not exist in the Enterprise Bean specified in the <ejb-name> tag, a warning message (KDJE37612-W) is output and the specified value is set up.

<method-params>

Zero or once

Specifies the method arguments.

<method-param>

Zero or more times

Specifies the method arguments.

<application-exception>

Zero or more times

Specifies the settings related to application exception.

This tag is ignored in the cjsetresprop command.

If there are multiple <application-exception> tags with the same <exception-class> value, a warning message (KDJE37604-W) is output and the value set first is enabled.

Also, when the setting location is EJB 2.1 or earlier versions, a warning message (KDJE37613-W) is output and this setting is ignored.

<exception-class>

Once

Specifies the name of the exception class reported to the client.

<rollback>

Zero or once

Specifies whether rollback is to be performed before the occurrence of the specified exception is reported to the client. The following character strings are displayed:

  • true (rollback is performed)

  • false (rollback is not performed)

<inherited>

Zero or once

Specifies whether the sub-classes of the specified class will be handled as application exceptions.

Specify true to handle the sub-classes as exceptions and false if the sub-classes are not to be handled as exceptions. The default value is true.

<ejb-client-jar>

Zero or once

Specifies the client JAR file name. #3

--

--

--

#1

You can specify the xml:lang property. If the xml:lang property is not specified, en(English) is assumed. Note that you cannot specify multiple tags with the same xml:lang property.

#2

You cannot specify this tag multiple times for EJB 2.0 or earlier versions.

#3

Do not change the values specified for annotations.

#4

Do not change the tag name, add or delete the tag, or change the value for the tags output with the cjgetappprop or cjgetresprop commands.

#5

You cannot update the annotation settings using a property file. Only the information defined in ejb-jar.xml can be updated using a property file.

(2) When ejb-jar.xml is not included (EJB 3.0 or later versions)

Tag name

Occurrence pattern

Explanation

<hitachi-ejb-jar-property>

Once

Specifies the root tag.

<description>#1

Zero or more times#2

Describes the EJB-JAR file.#3

<display-name>#1

One or more times#2

Displays the EJB-JAR name.#3

1character-string-length

To change the display name, you can use the alphanumeric characters (0 to 9, A to Z, a to z), and the following special characters:

Plus sign (+), hyphen (-), period (.), caret (^), and underscore (_)

<icon>#1

Zero or more times#2

Defines the EJB-JAR icon displayed on the GUI tool.#3

<small-icon>

Zero or once

Specifies the file name for small icons (16 × 16). #3

<large-icon>

Zero or once

Specifies the file name for large icons (32 × 32). #3

<interceptors>

Zero or once

Specifies the interceptor settings.#4

<description>#1

Zero or more times#2

Describes Interceptors.#4

<interceptor>

One or more times

Specifies the Interceptor class settings.#4

<description>#1

Zero or more times#2

Describes interceptor-class.#4

<interceptor-class>

Once

Specifies the interceptor class name.#4

<around-invoke>

Zero or more times

Defines the aroundinvoke method of interceptors.#4

<class>

Zero or once

From the package name, displays the class in which the aroundinvoke method of interceptors exists. #4

<method-name>

Once

Specifies the name of the aroundinvoke method of interceptors.#4

<post-construct>

Zero or more times

Defines the post-construct method of interceptors. #4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the post-construct method of interceptors exists. #4

<lifecycle-callback-method>

Once

Displays the name of the post-construct method of interceptors. #4

<pre-destroy>

Zero or more times

Defines the pre-destroy method of interceptors.#4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the pre-destroy method of interceptors exists. #4

<lifecycle-callback-method>

Once

Displays the name of the pre-destroy method of interceptors.#4

<post-activate>

Zero or more times

Defines the post-activate method of interceptors.#4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the post-activate method of interceptors exists.#4

<lifecycle-callback-method>

Once

Displays the name of the post-activate method of interceptors.#4

<pre-passivate>

Zero or more times

Defines the pre-passivate method of interceptors.#4

<lifecycle-callback-class>

Zero or once

From the package name, displays the class in which the pre-passivate method of interceptors exists. #4

<lifecycle-callback-method>

Once

Displays the name of the pre-passivate method of interceptors.#4

<interceptor-binding>

Zero or more times

Specifies the settings related to the class level interceptor and method level interceptor. This tag is ignored in the cjsetresprop command. #5

If multiple <interceptor-binding> tags are specified with a wild card (*) in <ejb-name>, the warning message (KDJE37604-W) is output and the value of <interceptor-class> within the <interceptor-binding> tag that is specified first is enabled.

<description>#1

Zero or more times

Displays the description of interceptor-binding. You describe the description of interceptor-binding when defining the default interceptor.

<ejb-name>

Once

Displays the wildcard (*) or <ejb-name> of the Enterprise Bean. You describe the wild card (*) when defining the default interceptor.

<interceptor-class>

Zero or more times

Displays the class name of the interceptor. You describe the class name of the interceptor class when defining the default interceptor.

This tag is not required when <interceptor-order> is specified.

<interceptor-order>

Zero or more times

Displays the settings for the order and the level of the interceptor.

This tag is not required when <interceptor-class> is specified.#4

<interceptor-class>

One or more times

Displays the class name of the interceptor. #4

<exclude-default-interceptors>

Zero or once

Displays whether to exclude the default interceptor. If the default interceptor is to be excluded, you specify true, and if the default interceptor is not to be excluded, specify false. The default value is false. #4

<exclude-class-interceptors>

Zero or once

Displays whether to exclude a class interceptor. If the class interceptor is to be excluded, you specify true, and if the class interceptor is not to be excluded, specify false. The default value is false. #4

<named-method>

Zero or once

Displays the definition of a method.

<method-name>

Once

Displays the method name.#4

<method-params>

Zero or once

Displays the arguments of the method.#4

<method-param>

Zero or more times

Displays the argument of the method.#4

<application-exception>

Zero or more times

Displays settings regarding the application exception.#4

<exception-class>

Once

Displays the exception class name to be reported to the client.#4

<rollback>

Zero or once

Displays whether to execute a rollback before reporting the exception to the client, when a specified exception occurs. You specify true when a rollback is to be executed and false when a rollback is not to be executed. The default value is false. #4

<inherited>

Zero or once

Specifies whether the sub-classes of the specified class will be handled as application exception.

Specify true to handle the sub-classes as exceptions and false if the sub-classes are not to be handled as exceptions. The default value is true. #4

<ejb-client-jar>

Zero or once

Displays the client JAR file name.

--

--

--

#1

You can specify the xml:lang property. If the xml:lang property is not specified, en(English) is assumed. Note that you cannot specify multiple tags with the same xml:lang property.

#2

You cannot specify this tag multiple times for EJB with EJB 2.0 or earlier versions.

#3

Do not change the values specified for annotations.

#4

Do not change the tag name, add or delete the tag, or change the value for the tags output with the cjgetappprop or cjgetresprop commands.

#5

You can add or change this tag only for the definition (when the value specified in the <ejb-name> tag is a wild card (*)) of the default interceptor.