Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

A proxy service is a virtual service that receives messages and optionally processes them before forwarding them to a service at a given endpoint. This approach allows you to perform necessary transformations and introduce additional functionality without changing your existing service. For example, if you want to use WS-Security with an existing, unsecured service, you can create a secure proxy service with WS-Security enabled with a specified security policy. Additionally, if you want a service to handle messages that are in different formats, you can create a Transformer proxy service to transform requests and responses based on specified XSLT configurations. A proxy service can also switch transports , process the messages with mediation sequences and tasks, and terminate the flow or send a message back to the client even without sending it to the actual service.

Info
titleProxy Service vs. Proxy Server

Do not confuse a proxy service, which processes messages on their way to a service, with a proxy server, which acts as an intermediary for handling traffic to a server. For example, a server might require HTTP basic authentication over a proxy server before it will handle communication from the ESB.

...

A proxy service is created and exposed on the specified transports through the underlying Axis2 engine. The proxy service can be a SOAP or REST/POX service over HTTP/S or SOAP, POX, Plain Text, or Binary / Legacy service for other transports such as JMS and VFS file systems. It exposees exposes service EPRs as per the standard Axis2 conventions based on the service name.

...

Parameter

Value

Default

Description

useOriginalwsdl

true / false

false

Use the given WSDL instead of generating the WSDL.

If this parameter is set to true, the original WSDL published via the publishWSDL parameter is used. This WSDL would not be replaced by a WSDL generated by the proxy service.

Excerpt
hiddentrue

Modified the description to address the FAQ How can you make the proxy WSDL inaccessible/not visible for outside?

modifyUserWSDLPortAddress

true / false

true

(Effective only with useOriginalwsdl=true) If true (default) modify the port addresses to current host.

ApplicationXMLBuilder.allowDTDtrue / falsetrueIf this parameter is set to true, it enables data type definition processing for the proxy service.
Data type definition processing is disabled in the Axis2 engine due to security vulnerability. This parameter allows it to be enabled for individual proxy services.

enablePublishWSDLSafeMode

true / false

true

When creating a proxy, if this parameter is set to true, it prevents the proxy service deployment from failing when the wsdl is not available at server startup.

showAbsoluteSchemaURLtrue / falsefalseIf this parameter is set to true , the absolute path of the referred schemas of the WSDL is shown instead of the relative paths.

The following service parameters are for specific transports:

Transport

Require

Parameter

Description

JMS

Optional

transport.jms.
ConnectionFactory

The JMS connection factory definition (from axis2.xml) to be used to
listen for messages for this service.

 

Optional

transport.jms.
Destination

The JMS destination name (Defaults to the service name).

 

Optional

transport.jms.
DestinationType

The JMS destination type. Accept values "queue" or "topic."

 

Optional

transport.jms.
ReplyDestination

The destination where a reply will be posted.

 

Optional

transport.jms.
Wrapper

The wrapper element for the JMS message.

VFS

Required

transport.vfs.
FileURI

The primary File (or Directory) URI in the vfs* transport format, for this service.

 

Required

transport.vfs.
ContentType

The expected content type for files retrieved for this service. The VFS
transport uses this information to select the appropriate message builder.
Examples:

  • text/xml for plain XML or SOAP
  • text/plain; charset=ISO-8859-1 for text files
  • application/octet-stream for binary data

 

Optional

transport.vfs.
FileNamePattern

A file name regex pattern to match files against a directory specified
by the FileURI.

 

Optional

transport.
PollInterval

The poll interval (in seconds).

 

Optional

transport.vfs.
ActionAfterProcess

DELETE or MOVE.

 

Optional

transport.vfs.
MoveAfterProcess

The directory to move files after processing (i.e. all files process
successfully).

 

Optional

transport.vfs.
ActionAfterErrors

DELETE or MOVE.

 

Optional

transport.vfs.
MoveAfterErrors

The directory to move files after errors (i.e. some of the files
succeed but some fail).

 

Optional

transport.vfs.
ActionAfterFailure

DELETE or MOVE.

 

Optional

transport.vfs.
MoveAfterFailure

The directory to move after failure (i.e. all files fail).

 

Optional

transport.vfs.
ReplyFileURI

Reply file URI.

 

Optional

transport.vfs.
ReplyFileName

Reply file name (defaults to response XML).

 

Optional

transport.vfs.
MoveTimestampFormat

Timestamp prefix format for processed file name.
java.text.SimpleDateFormat compatible string. e.g. yyMMddHHmmss'-'.

...