uCosminexus Application Server, Web Service Development Guide
To customize with the embedded binding declaration, use the jaxws:bindings element, code the binding declaration directly in the WSDL document, and customize.
The following figure shows an example of using the embedded binding declaration to customize the package name:
Figure 15-17 Example of package name customization (Embedded binding declaration)
The following points describe the points to remember when you customize with the embedded binding declaration:
The jaxws:bindings element is used as the container of the embedded binding declaration.
However, you cannot code the jaxws:bindings element as the child element of the jaxws:bindings element. If coded as the child element of the jaxws:bindings element, an error message is output in the standard error output and log and the processing ends (KDJW51034-E).
The following table describes the attributes of the jaxws:bindings element and the operations depending on whether the attribute is specified:
Table 15-20 Relationship between the attributes of the jaxws:bindings element and the operations depending on whether the attribute is specified (Embedded binding declaration)
| No. | Elements | Specification of attribute | Operations |
|---|---|---|---|
| 1 | wsdlLocation | Yes | The attribute cannot be specified. Even if the attribute is specified, it is ignored. |
| 2 | No | Terminates normally. | |
| 3 | Node | Yes | The attribute cannot be specified. Even if the attribute is specified, it is ignored. |
| 4 | No | Terminates normally. | |
| 5 | Version | Yes | Only 2.0 can be specified in the attribute. If a value other than 2.0 is specified, it is ignored and 2.0 is assumed. |
| 6 | No | Terminates normally. |
The following table lists the binding declarations that can be used in the Cosminexus JAX-WS functionality when you use the embedded binding declaration. For details about each binding declaration, see JAX-WS 2.2 specifications.
Table 15-21 Available binding declarations (Embedded binding declaration)
| Element name | Attribute name | Description | ||
|---|---|---|---|---|
| wsdl:definitions and jaxws:bindings elements | version | In the version attribute, you code the WSDL customization version. | ||
| Child element of jaxws:bindings element | -- | This is the child element of the jaxws:bindings element. | ||
| jaxws:package | name | In the name attribute, you code the Java package name corresponding to the targetNamespace attribute of the wsdl:definitions element. | ||
| jaxws:javadoc | -- | This is the Javadoc string that is added to the Java package. | ||
| jaxws:enableWrapperStyle | -- | Shows the enabling or disabling of wrapper style for all the WSDL operations. | ||
| jaxws:enableAsyncMapping | -- | Shows the enabling or disabling of asynchronous mapping for all the WSDL operations. | ||
| wsdl:definitions, wsdl:portType, and child element of the jaxws:bindings element |
-- | This is the child element of the jaxws:bindings element included in the wsdl:definitions and wsdl:portType element. | ||
| jaxws:class | name | In the name attribute, you code the completely modified name of SEI corresponding to the wsdl:portType element. | ||
| jaxws:javadoc | -- | You code the Javadoc string to be added to SEI. | ||
| jaxws:enableWrapperStyle | -- | Shows the enabling or disabling of wrapper style for the wsdl:portType element. | ||
| jaxws:enableAsyncMapping | -- | Shows the enabling or disabling of asynchronous mapping for the wsdl:portType element. | ||
| wsdl:definitions/ wsdl:portType/ wsdl:operation/ Child element of jaxws:bindings element | -- | This is the child element of the jaxws:bindings element included in the wsdl:definitions, wsdl:portType, and wsdl:operation elements. | ||
| jaxws:method | name | In the name attribute, you code the Java method name corresponding to the wsdl:operation element. | ||
| jaxws:javadoc | -- | This is the Javadoc string that is added to the method. | ||
| jaxws:enableWrapperStyle | -- | Shows the enabling or disabling of wrapper style for the wsdl:operation element. | ||
| jaxws:enableAsyncMapping | -- | Shows the enabling or disabling of asynchronous mapping for the wsdl:operation element. | ||
| jaxws:parameter | part | In the part attribute, you code the XPath expression that identifies the wsdl:part child element of the wsdl:message element. | ||
| childElementName | In the childElementName attribute, you code the child element name of the global type definition or global element declaration referenced by the wsdl:part element. | |||
| name | In the name attribute, you code the parameter name of the element identified by the part attribute and childElementName attribute. | |||
| wsdl:definitions, wsdl:portType, wsdl:operation, wsdl:fault, and child element of the jaxws:bindings element |
-- | This is the child element of the jaxws:bindings element included in the wsdl:definitions, wsdl:portType, wsdl:operation, and wsdl:fault elements. | ||
| jaxws:class | name | In the name attribute, you code the completely modified name of the exception class corresponding to the wsdl:fault element. | ||
| jaxws:javadoc | -- | This is the Javadoc string that is added to the exception class. | ||
| wsdl:definitions, wsdl:binding, wsdl:operation element, and child element of the jaxws:bindings element |
-- | This is the child element of the jaxws:bindings element included in the wsdl:definitions, wsdl:binding, wsdl:operation elements. | ||
| jaxws:parameter | part | In the part attribute, you code the XPath expression that identifies the wsdl:part child element of the wsdl:message element. | ||
| childElementName | In the childElementName attribute, you code the child element name of the global type definition or global element declaration referenced by the wsdl:part element. | |||
| name | In the name attribute, you code the parameter name of the element identified by the part attribute and childElementName attribute. | |||
| wsdl:definitions, wsdl:service, child element of jaxws:bindings element | -- | This is the child element of the jaxws:bindings element included in the wsdl:definitions, wsdl:service elements. | ||
| jaxws:class | name | In the name attribute, you code the completely modified name of the service class corresponding to the wsdl:service element. | ||
| jaxws:javadoc | -- | This is the Javadoc string that is added to the service class name. | ||
| wsdl:definitions, wsdl:service, wsdl:port, child element of jaxws:bindings element | -- | This is the child element of the jaxws:bindings element included in the wsdl:definitions, wsdl:service, wsdl:port elements. | ||
| jaxws:method | name | In the name attribute, you code the getter method name corresponding to the wsdl:port element. | ||
| jaxws:javadoc | -- | This is the Javadoc string that is added to the getter method. | ||
| jaxws:provider | -- | If you specify true, SEI is not generated. The getter method of the port is omitted in the service interface that is generated. For details about the jaxws:provider element, see the section 15.2.7 Operation when the jaxws:provider element is coded. |
||
As described in the above table, the location where the jaxws:bindings element and its child element can be coded in a WSDL is defined in the JAX-WS 2.2 specifications. If these elements are coded in locations that are not defined, an error message is output in the standard error output and log and the processing ends (KDJW51029- E).
If you code elements that cannot be coded as the child element of a jaxws:bindings element, an error message is output in the standard error output and log and the processing ends (KDJW51040-E).
Furthermore, if you code attributes that cannot be coded in the attributes of the jaxws:bindings element and its child element, an error message is output in the standard error output and log and the processing ends (KDJW51029-E).
If an attribute is coded repeatedly in the jaxws:bindings element and its child element, an error message of Cosminexus XML Processor is output to the standard error output and log and the processing ends.
You cannot specify the customization of the same object by using the embedded binding declaration. Also, you cannot specify the child element of the jaxws:bindings element repeatedly. If specified, the operation might not function properly.
You can code the jaxws:enableWrapperStyle element in the following locations in WSDL. The following is the priority order when the element is coded in multiple locations at the same time:
The number shows the priority order. No.1 is the highest and the element value with a high priority order is enabled.
All Rights Reserved. Copyright (C) 2013, Hitachi, Ltd.