JAX-RPC handlers and proxy operation
You can set the gateway to act purely as a proxy for your service, then use JAX-RPC handlers to set the endpoints for incoming request messages for the service.
When you deploy a service to the gateway and enable proxy operation, the gateway takes no action with regard to that service other than to invoke it as a WSIF service. When you deploy a service to run in proxy mode, you also enable selective SOAP parsing for that service, and deploy a JAX-RPC handler that sets the transport.url context property to set the target endpoint for the service.
When the gateway receives a message, it needs to know whether the request being invoked is request and response, or one-way. Because the Gateway is not parsing the SOAP message, it cannot get this information from the message. Therefore the requesting clients append an operationMode HTTP query string parameter to the Web address for the gateway service. The value of this parameter is either oneway or requestResponse. For example, if the Web address of the deployed proxy service is http://.../wsgwsoap/urn:wsgw::ProxyService, then requesting clients indicate that they are sending a one-way request by using the following URL:
http://.../wsgwsoap/urn:wsgw::ProxyService?operationMode=onewayIf the operationMode parameter is missing, the gateway assumes that the requested method is requestResponse.
A gateway service that runs in proxy mode has no gateway-deployed target services and therefore no WSDL that the gateway can use to configure the WSIF service invocation. A generic template WSDL file is used to configure the basic parameters for the invocation call (for example which WSIF provider to use), but you can override the default by supplying your own equivalent template. The default template WSDL defines a single portType with two operations: oneway and requestResponse. If the operation mode is oneway, then the gateway selects the one-way operation from the WSDL. The default template WSDL is located at http://.../wsgw/admin/ProxyServiceTemplate.wsdl.
If you want the gateway to use a different template WSDL file, then you specify the Web address of the new template WSDL file when you deploy the service to the Web services gateway. Your new template WSDL must implement the same port type, binding, service, and port names as the default template. The only differences that can exist are in the extension elements used to configure the binding. In your new template WSDL, the value of the <soap:target address> tag must be a properly formatted Web address but it does not have to point to a real page. For example, a value of this.is.a.fake.url is rejected, whereas a value of http://this.is.a.fake.url is accepted. The JAX-RPC handler that sets the transport.url property overrides this value at runtime with the real Web address.
Note: If the JAX-RPC handler is not deployed, then the gateway attempts to send all requests to the fake url specified in the <soap:target address> tag in the template WSDL.
Proxy operation is currently supported only by the SOAP over HTTP channel.
For the detailed steps to take to enable proxy operation for a Web service, see Deploying a gateway service for proxy operation.
JAX-RPC handlers - An alternative to gateway filters
Working with JAX-RPC handlers
Deploying a gateway service for proxy operation