Difference between revisions of "Ws-call"
(Created page with "==Description== The plugin ''ws-call'' defines the parameters for calling a Web Service. =={{VULCON}} / {{GVCONSOLE}} Configuration== The ws-call Element is used by [[Channel]...") |
(→WSDLInfo) |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
==Description== | ==Description== | ||
− | The plugin ''ws-call'' defines the parameters for calling a Web Service. | + | The {{GVESB}} plugin '''ws-call''' defines the parameters for calling a Web Service. |
=={{VULCON}} / {{GVCONSOLE}} Configuration== | =={{VULCON}} / {{GVCONSOLE}} Configuration== | ||
The ws-call Element is used by [[Channel]] and [[routed-call]]. Its attributes are: | The ws-call Element is used by [[Channel]] and [[routed-call]]. Its attributes are: | ||
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | type || fixed || This attribute must assume the value '''call'''. | ||
+ | |- | ||
+ | | class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.virtual.ws.WSCallOperation'''. | ||
+ | |- | ||
+ | | name || required || Operation name. Used in the [[Flow]] section to associate workflow nodes to VCL operations. | ||
+ | |} | ||
− | * | + | and its subelements: |
− | * '' | + | * [[Description]] |
− | + | * [[Ws-call#AxisWebServiceInvoker|AxisWebServiceInvoker]] | |
+ | * [[Proxy]] '''MOVED on v3.4''' | ||
+ | |||
+ | ===AxisWebServiceInvoker=== | ||
+ | |||
+ | This element is used by [[ws-call]]. | ||
− | + | Its attributes are: | |
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | type || fixed || This attribute must assume the value '''invoker'''. | ||
+ | |- | ||
+ | | class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.virtual.ws.GVWebServiceInvoker'''. | ||
+ | |- | ||
+ | | service || optional || Service name. | ||
+ | |- | ||
+ | | serviceNS || optional || Service NameSpace. | ||
+ | |- | ||
+ | | operation || required || Operation name. | ||
+ | |- | ||
+ | | emptyAction || optional || f true the SOAPAction header is not set in the request. Default to false. | ||
+ | |- | ||
+ | | portName || optional || Port Name | ||
+ | |- | ||
+ | | timeout || optional || Timeout in seconds. | ||
+ | |- | ||
+ | | ref-dp || optional || Name of [[Data_provider|Data Provider]] to use for preparing the request. | ||
+ | |- | ||
+ | | throwsFault || optional || If ''true'' throws Exception "Error invoking operation". If ''false'' returns the Fault response. Default to false. | ||
+ | The attribute's admitted values are: | ||
+ | * true | ||
+ | * false | ||
+ | |- | ||
+ | | use-saaj || optional || Defines whether to use SAAJ to invoke the WebService mode instead of the default Axis2 mode. <br/> NOTE: If you choose to use SAAJ as a way of calling the WebService, Axis2 modules are not enabled. <br/> The attribute's admitted values are: | ||
+ | * true | ||
+ | * false | ||
+ | |- | ||
+ | | returnType || optional || Defines how to set the response data in the object field of output [[GVBuffer]]: | ||
+ | * context : the MessageContext | ||
+ | * envelope : the envelope as XML serialized as string | ||
+ | * body : the body as XML serialized as string | ||
+ | * body-element : the first child of body as XML serialized as string | ||
+ | * header : the header as XML serialized as string | ||
+ | * envelope-om : the envelope as OMMessage | ||
+ | * body-om : the body as OMMessage | ||
+ | * body-element-om : the first child of body as OMMessage | ||
+ | * header-om : the header as OMMessage | ||
+ | Default: context | ||
+ | |} | ||
+ | <div class="version_ge3.4"> | ||
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | emptyAction || optional || if true the SOAPAction header is not set in the request. Default to false. | ||
+ | |} | ||
+ | </div> | ||
− | * Description | + | and has the sub-elements: |
− | * | + | * [[Description]] |
+ | * [[#XPathNamespace|XPathNamespace]] | ||
+ | * [[#WSDLInfo|WSDLInfo]] | ||
+ | * [[#EngageModule|EngageModule]] | ||
+ | <div class="version_ge3.4"> | ||
+ | * [[BasicHttpAuth]] | ||
+ | * [[NTLMHttpAuth]] | ||
* [[Proxy]] | * [[Proxy]] | ||
+ | </div> | ||
+ | ====XPathNamespace==== | ||
− | = | + | Defines a namespace that can be used in XPath. |
+ | The 'gvesb' prefix is reserved. | ||
+ | |||
+ | The following table shows the XPathNamespace element's attributes: | ||
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | prefix || required || Namespace prefix. | ||
+ | |- | ||
+ | | namespace || optional || Namespace. | ||
+ | If not set, the prefix is associated to the default namespace. | ||
+ | The attribute's value can't be null. | ||
+ | |} | ||
+ | |||
+ | Might contain the sub-element [[Description]]. | ||
+ | ====WSDLInfo==== | ||
− | This element | + | This element returns a WSDL through his URL. |
Its attributes are: | Its attributes are: | ||
− | + | {|class="gvtable" | |
− | * ''class' | + | ! Attribute !! Type !! Description |
− | * '' | + | |- |
− | * '' | + | | type || fixed || This attribute must assume the value '''wsdlinfo'''. |
− | + | |- | |
− | + | | wsdl || required || WSDL file URL. | |
− | + | |} | |
− | + | <div class="version_ge3.4/3.3.4"> | |
− | + | {|class="gvtable" | |
− | + | ! Attribute !! Type !! Description | |
− | + | |- | |
− | + | | ws-endpoint-url || optional || Override the endpoint URL defined in the wsdl. Is overridden by the WS_ENDPOINT_URL GVBuffer's property value. | |
− | ** | + | |} |
− | ** | + | </div> |
− | ** | + | |
− | ** | + | ====EngageModule==== |
− | + | ||
+ | Its attributes are: | ||
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | name || required || Defines the name of a module to hire to handle WS-*. <br/> If set, takes precedence over the attribute ''specifications''. <br/> The attribute's admitted values are: | ||
+ | * rampart | ||
+ | * sandesha2 | ||
+ | |- | ||
+ | | type || required || Defines the class that implements the hander for the module to engage. <br/> The attribute's admitted values are: | ||
+ | * it.greenvulcano.gvesb.virtual.ws.module.DefaultModuleHandler (Default value) . | ||
+ | * it.greenvulcano.gvesb.virtual.ws.module.rampart.RampartModuleHandler | ||
+ | * it.greenvulcano.gvesb.virtual.ws.module.sandesha2.Sandesha2ModuleHandler | ||
+ | |- | ||
+ | | specification || required || The specification to implement, mandatory and other than 'NO-SPEC' if the name attribute is not declared. <br/> The attribute's default value is: NO-SPEC. <br/> The attribute's admitted values are: | ||
+ | * NO-SPEC | ||
+ | * WS-Security | ||
+ | * WS-ReliableMessaging | ||
+ | |} | ||
+ | |||
+ | It has the sub-elements: | ||
+ | * [[Description]] | ||
+ | * [[#PolicyData|PolicyData]] | ||
+ | * [[#ModuleProperty|ModuleProperty]] | ||
+ | |||
+ | =====PolicyData===== | ||
+ | |||
+ | This element is an XML that describes the policies for a specific. Currently it is used only for the WS-Security implemented by the module ''rampart''. | ||
+ | |||
+ | Below is an example of policy to be included on the module ''rampart'': | ||
+ | |||
+ | <syntaxhighlight lang="XML"> | ||
+ | <wsp:Policy wsu:Id="UTOverTransport" | ||
+ | xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" | ||
+ | xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"> | ||
+ | <wsp:ExactlyOne> | ||
+ | <wsp:All> | ||
+ | <sp:TransportBinding xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"> | ||
+ | <wsp:Policy> | ||
+ | <sp:TransportToken> | ||
+ | <wsp:Policy> | ||
+ | <sp:HttpsToken RequireClientCertificate="false"/> | ||
+ | </wsp:Policy> | ||
+ | </sp:TransportToken> | ||
+ | <sp:AlgorithmSuite> <wsp:Policy> <sp:Basic256/> </wsp:Policy> </sp:AlgorithmSuite> | ||
+ | <sp:Layout> <wsp:Policy> <sp:Lax/> </wsp:Policy> </sp:Layout> <sp:IncludeTimestamp/> | ||
+ | </wsp:Policy> | ||
+ | </sp:TransportBinding> | ||
+ | <sp:SignedSupportingTokens xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"> | ||
+ | <wsp:Policy> | ||
+ | <sp:UsernameToken | ||
+ | sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/ | ||
+ | securitypolicy/IncludeToken/AlwaysToRecipient"/> | ||
+ | </wsp:Policy> | ||
+ | </sp:SignedSupportingTokens> | ||
+ | <ramp:RampartConfig xmlns:ramp="http://ws.apache.org/rampart/policy"> | ||
+ | <ramp:user>alice</ramp:user> | ||
+ | <ramp:passwordCallbackClass> | ||
+ | org.apache.rampart.samples.policy.sample01.PWCBHandler | ||
+ | </ramp:passwordCallbackClass> | ||
+ | </ramp:RampartConfig> | ||
+ | </wsp:All> | ||
+ | </wsp:ExactlyOne> | ||
+ | </wsp:Policy> | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | The PolicyData Element is used only by ''EngageModule'' and has the following attribute: | ||
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | policy_key || required || Defines the key to set the policy for the service invocation. <br/> The attribute's admitted values are: | ||
+ | * rampartPolicy | ||
+ | |} | ||
+ | |||
+ | =====ModuleProperty===== | ||
+ | |||
+ | This element is a specific property form the module to engage. For example: <br/> | ||
+ | The property '''org.apache.axis2.addressing.AddressingConstants.DISABLE_OUTBOUND_ADDRESSING_VALIDATION''' set to ''true'' prevents a fault if SOAPAction is not setted. | ||
+ | |||
+ | The ModuleProperty Element is used only by ''EngageModule''. Its attributes are: | ||
+ | {|class="gvtable" | ||
+ | ! Attribute !! Type !! Description | ||
+ | |- | ||
+ | | name || required || Name of the ModuleProperty | ||
+ | |- | ||
+ | | value || required || | ||
+ | |- | ||
+ | | type || optional || The attribute's default value is String and its admitted values are: | ||
+ | * String | ||
+ | * Boolean | ||
+ | * Byte | ||
+ | * Short | ||
+ | * Int | ||
+ | * Long | ||
+ | * Float | ||
+ | * Double | ||
+ | |} |
Latest revision as of 10:53, 31 December 2014
Contents
Description
The GreenVulcano® ESB plugin ws-call defines the parameters for calling a Web Service.
VulCon / GV Console Configuration
The ws-call Element is used by Channel and routed-call. Its attributes are:
Attribute | Type | Description |
---|---|---|
type | fixed | This attribute must assume the value call. |
class | fixed | This attribute must assume the value it.greenvulcano.gvesb.virtual.ws.WSCallOperation. |
name | required | Operation name. Used in the Flow section to associate workflow nodes to VCL operations. |
and its subelements:
- Description
- AxisWebServiceInvoker
- Proxy MOVED on v3.4
AxisWebServiceInvoker
This element is used by ws-call.
Its attributes are:
Attribute | Type | Description |
---|---|---|
type | fixed | This attribute must assume the value invoker. |
class | fixed | This attribute must assume the value it.greenvulcano.gvesb.virtual.ws.GVWebServiceInvoker. |
service | optional | Service name. |
serviceNS | optional | Service NameSpace. |
operation | required | Operation name. |
emptyAction | optional | f true the SOAPAction header is not set in the request. Default to false. |
portName | optional | Port Name |
timeout | optional | Timeout in seconds. |
ref-dp | optional | Name of Data Provider to use for preparing the request. |
throwsFault | optional | If true throws Exception "Error invoking operation". If false returns the Fault response. Default to false.
The attribute's admitted values are:
|
use-saaj | optional | Defines whether to use SAAJ to invoke the WebService mode instead of the default Axis2 mode. NOTE: If you choose to use SAAJ as a way of calling the WebService, Axis2 modules are not enabled. The attribute's admitted values are:
|
returnType | optional | Defines how to set the response data in the object field of output GVBuffer:
Default: context |
Attribute | Type | Description |
---|---|---|
emptyAction | optional | if true the SOAPAction header is not set in the request. Default to false. |
and has the sub-elements:
XPathNamespace
Defines a namespace that can be used in XPath. The 'gvesb' prefix is reserved.
The following table shows the XPathNamespace element's attributes:
Attribute | Type | Description |
---|---|---|
prefix | required | Namespace prefix. |
namespace | optional | Namespace.
If not set, the prefix is associated to the default namespace. The attribute's value can't be null. |
Might contain the sub-element Description.
WSDLInfo
This element returns a WSDL through his URL.
Its attributes are:
Attribute | Type | Description |
---|---|---|
type | fixed | This attribute must assume the value wsdlinfo. |
wsdl | required | WSDL file URL. |
Attribute | Type | Description |
---|---|---|
ws-endpoint-url | optional | Override the endpoint URL defined in the wsdl. Is overridden by the WS_ENDPOINT_URL GVBuffer's property value. |
EngageModule
Its attributes are:
Attribute | Type | Description |
---|---|---|
name | required | Defines the name of a module to hire to handle WS-*. If set, takes precedence over the attribute specifications. The attribute's admitted values are:
|
type | required | Defines the class that implements the hander for the module to engage. The attribute's admitted values are:
|
specification | required | The specification to implement, mandatory and other than 'NO-SPEC' if the name attribute is not declared. The attribute's default value is: NO-SPEC. The attribute's admitted values are:
|
It has the sub-elements:
PolicyData
This element is an XML that describes the policies for a specific. Currently it is used only for the WS-Security implemented by the module rampart.
Below is an example of policy to be included on the module rampart:
<wsp:Policy wsu:Id="UTOverTransport"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
<wsp:ExactlyOne>
<wsp:All>
<sp:TransportBinding xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<wsp:Policy>
<sp:TransportToken>
<wsp:Policy>
<sp:HttpsToken RequireClientCertificate="false"/>
</wsp:Policy>
</sp:TransportToken>
<sp:AlgorithmSuite> <wsp:Policy> <sp:Basic256/> </wsp:Policy> </sp:AlgorithmSuite>
<sp:Layout> <wsp:Policy> <sp:Lax/> </wsp:Policy> </sp:Layout> <sp:IncludeTimestamp/>
</wsp:Policy>
</sp:TransportBinding>
<sp:SignedSupportingTokens xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<wsp:Policy>
<sp:UsernameToken
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/
securitypolicy/IncludeToken/AlwaysToRecipient"/>
</wsp:Policy>
</sp:SignedSupportingTokens>
<ramp:RampartConfig xmlns:ramp="http://ws.apache.org/rampart/policy">
<ramp:user>alice</ramp:user>
<ramp:passwordCallbackClass>
org.apache.rampart.samples.policy.sample01.PWCBHandler
</ramp:passwordCallbackClass>
</ramp:RampartConfig>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
The PolicyData Element is used only by EngageModule and has the following attribute:
Attribute | Type | Description |
---|---|---|
policy_key | required | Defines the key to set the policy for the service invocation. The attribute's admitted values are:
|
ModuleProperty
This element is a specific property form the module to engage. For example:
The property org.apache.axis2.addressing.AddressingConstants.DISABLE_OUTBOUND_ADDRESSING_VALIDATION set to true prevents a fault if SOAPAction is not setted.
The ModuleProperty Element is used only by EngageModule. Its attributes are:
Attribute | Type | Description |
---|---|---|
name | required | Name of the ModuleProperty |
value | required | |
type | optional | The attribute's default value is String and its admitted values are:
|