Go to new doc!

+49 228 5552576-0


info@predic8.com

serviceProxy

A service proxy can be deployed on front of a Web server, Web Service or a REST resource. It conceals the server and offers the same interface as the target server to its clients.

Can be used in

proxies

Syntax

				<serviceProxy name="string" 
							  port="integer"
							  method="[*,POST,PUT,GET,DELETE,TRACE,OPTIONS]"
							  host="[string,*]"
							  blockRequest="[true,false]"
							  blockResponse="[true,false]"
							  ip="[ip]">
					<path />?
					<ssl />?
					<request>
						[interceptors]*
					</request>
					[interceptors]*
					<response>	
						[interceptors]*
					</response>
					<localhost />?
					<target />?
				</serviceProxy>
			
Listing 1: serviceProxy Syntax

Sample

				<serviceProxy port="80">
					<response>
						<transform xslt="customer2person.xsl" />
					</response>		
					<target host="www.thomas-bayer.com" port="80" />
				</serviceProxy>			
			
Listing 2: serviceProxy Example

Attributes

Name Mandatory Default Description Example
name no A name is created based on the pattern: [target host] [method] [path]:[target port] Test Web Service
port no 80 Listen Port 80
host no * Applies rule only if attribute is * or client host equals this attribute. localhost
method no * Applies rule only if attribute is * or request method equals this attribute. false
blockResponse no false false
blockRequest no false false
ip no missing If present, binds the port only on the specified IP. Useful for hosts with multiple IP addresses. 127.0.0.1

Child Elements

Name Cardinality Description
localhost 0..1 Defines the host address that is used when connecting to the server.
path 0..1 Limits client request by path components.
request 0..* Limits interceptors to requests only.
response 0..* Limits interceptors to response only.
ssl 0..1 Configures inbound (in <serviceProxy/>) or outbound (in <target/>) SSL.
target 0..1 Specifies target host and port.

Interceptor Child Elements

Name Cardinality Description
accessControl 0..1 Interceptor to restrict access to services and resources.
adminConsole 0..1 Initializes the Admin Console.
balancer 0..1 LoadBalancer Interceptor
basicAuthentication 0..1 HTTP Basic Authentication Interceptor
clusterNotification 0..1 Up/Down push interface interceptor for cluster managment
counter 0..* Interceptor that provides a test web site.
exchangeStore 0..* Interceptor that stores exchanges.
formValidation 0..* Interceptor that validates form parameter.
groovy 0..* Runs Groovy scripts.
interceptor 0..* References a interceptor defined in the monitor-beans.xml
log 0..* Logs request and response.
regExReplacer 0..* Interceptor that replaces parts of the content based on a regulare expression.
rest2Soap 0..* Interceptor that exposes a SOAP service as REST resource.
rewriter 0..* Interceptor to rewrite URLs.
statisticsCSV 0..* Interceptor that logs in a CSV file.
statisticsJDBC 0..* Interceptor that logs in a database.
switch 0..* Interceptor for content based routing.
throttle 0..* Interceptor that delays and limits requests.
transform 0..* Interceptor that applies XSLT transformations
validator 0..* Interceptor that validates against a WSDL and referenced Schemas
webServer 0..1 Web Server Interceptor
wsdlRewriter 0..1 Interceptor that rewrites URLs in endpoint and import definitions of a WSDL.
xmlProtection 0..1 Interceptor that protects against certain forms of XML attacks.