...
URI can be used at serveral places inside ServiceMix.
Endpoint resolution
when When calling context.resolveEndpointReference(epr).
You could something like:
Code Block | ||||
---|---|---|---|---|
| ||||
DocumentFragment epr = URIResolver.createWSAEPR("http://localhost:8192?http.soap=true");
ServiceEndpoint se = client.getContext().resolveEndpointReference(epr);
exchange.setEndpoint(se);
send(exchange);
|
ActivationSpec
Code Block | ||||
---|---|---|---|---|
| ||||
<sm:activationSpec targetUridestinationUri="interface:http://www.foo.bar/MyInterface"> ... </sm:activationSpec> |
Code Block | ||||
---|---|---|---|---|
| ||||
<beans ... xmlns:my="http://servicemix.apache.org/demo/"> ... <sm:activationSpec componentName="component" service="my:service" endpoint="endpoint"> ... </sm:activationSpec> ... </beans> |
Warning | ||||||
---|---|---|---|---|---|---|
Be careful with namespaces. ServiceMix maintains an endpoint registry which it uses to look up endpoints. The example above registers the corresponding endpoint with the key:
However, an endpoint reference of
... will result in a different, non-matching key:
... which will ultimately cause the routing to fail. |
EIP component
See servicemix-eip.
...
The ServiceMix container can parse the following URIs:
interface:qname
unmigrated-wiki-markup- {{
operation:qname
\[sep
\]name
}} service:qname
{{Wiki Markup endpoint:qname
\[sep
\]name
}}
QName will be represented as:
{{ Wiki Markup namespace
\[sep
\]name
}}
The seprator separator used will be:
- '/' if the namespace looks like 'http://'
- ':' if the namespace looks like 'urn:foo:bar'
...