An endpoint defines an external destination for an outgoing message through WSO2 ESB. An endpoint may be specified as an address endpoint, WSDL based endpoint, a load balancing endpoint, a fail-over endpoint or an HTTP endpoint. For example, the endpoint for the simple stock quote sample is http:
//localhost
:9000
/services/SimpleStockQuoteService
.
Configuring endpoints
You can use the Management Console to add, edit, and delete endpoints. You can also enable statistics for Address and WSDL endpoints.
In the XML configuration, the <endpoint> element defines an endpoint as follows:
<endpoint [name="string"] [key="string"]> address-endpoint | default-endpoint | wsdl-endpoint | load-balanced-endpoint | fail-over-endpoint </endpoint>
Using named endpoints
You can use the name
attribute to create a named endpoint. You can reuse a named endpoint by referencing it in another endpoint using the key
attribute. For example, if there is an endpoint named "foo," you can reference the "foo" endpoint in any other endpoint where you want to use "foo":
<endpoint key="foo"/>
This approach allows you to reuse existing endpoints in multiple places.
Tracing and handling errors
The endpoints also have a trace
attribute, which turns on detailed trace information for messages being sent to the endpoint. These are available in the trace.log
file, which is configured in the <PRODUCT_HOME>/repository/conf/log4j.properties
file. Setting the trace log level to TRACE
will log detailed trace information including message payloads. For information on endpoint states and handling errors, see Endpoint Error Handling.