ServiceMix does not enforce this binding to be present.
Actually ServiceMix does not support WSDL 2 yet, so ...

Anyway, ServiceMix expects a WSDL 1.1 description containing a PortType.
This PortType will be used to know which interface a given JBI
endpoint implements.
If the WSDL has some services defined, ServiceMix will look for a
matching Port using the servicemix name and endpoint name of the JBI
endpoint, and will retrieve the corresponding PortType.
This is the only real information used by ServiceMix.   However,
components may be free to provide / use binding or service
informations.

This is at least my understanding of the abstract WSDL model defined
by the spec: a WSDL description for a JBI endpoint only requires a
PortType (or WSDL2 Interface) with the associated xml schemas.

If you want more JBI specific informations, feel free to post at
http://forum.java.sun.com/forum.jspa?forumID=512.

Cheers,
Guillaume Nodet

On 5/9/06, Sloan, John L (John) <[EMAIL PROTECTED]> wrote:

This is a JBI question, not a ServiceMix question,
so this may not be the best forum, but gosh, I feel
so warm and cozy here. Anyway:

JBI 1.0, 5.5.6.1, p. 57 "JBI Service Engine WSDL Binding"

QUOTE

A JBI 1.0 service engine binding is identified by assigning
the value

"http://java.sun.com/xml/ns/jbi/binding/service+engine";

to the type property of a WSDL binding component, as defined in
[WSDL 1.1] and [WSDL 2.0].

UNQUOTE

Okay, I get the idea that it is a good idea to have a concrete
(versus abstract) service model that says "this thing can be
accessed via JBI". But I'm not sure how this actually works in
practice. Does this mean something like

<wsdl:binding name="MyBinding" type="jbi:MyPortType">

requiring MyPortType (from the abstract service model) to be in
the JBI namespace (where "jbi" is defined to be the URI above)?

I've extracted the ServiceMix code that uses wsdl4j to parse
the WSDL and dropped it into my unit test just to verify what
I think ServiceMix is doing with my WSDL, and this would seem to
be the case. But this incursion of JBI into the abstract service
model just doesn't seem right to me, so I'm assuming I'm confused.
(In the words of Dr. Who: "Look at me! I'm stupid!" :-) I do think
ServiceMix is doing just what the spec requires.

An example working WSDL might be useful. (One of my fearless
colleagues also suggested looking at the WSDL generated by
the ServiceMix JSR181 component, which may be my next step.)

--
John Sloan           |  email [EMAIL PROTECTED]
Avaya Inc.           |  voice  +1 303 538 2746
1300 West 120th Ave. | office           B1-C46
Westminster CO 80234-2701 USA


Reply via email to