Ok,
No problem for me, As i said i'm not really a jbi expert, as i just
said, i could handle this in code generator
when i see i've a wsdl with two port i could duplicate the wsdl and then
generate two endpoint in xbean.xml
BTW the idea of a WSDL deployer is interesting.
Andrea
Guillaume Nodet ha scritto:
You're wrong. A JBI endpoint maps to a port.
Your suggestion would work if we write a WSDL base deployer, where no
xbean.xml is needed.
In such case, a WSDL could lead to creating several endpoints.
On Wed, Apr 16, 2008 at 5:58 PM, Andrea Zoppello <[EMAIL PROTECTED]>
wrote:
Hi,
I think we miss something here.
try to explain:
i've a wsdl where i've
1) Only one "port type" element ( wsdl:porType element )
2) two bindings soap11 soap12
3) two wsdl port, one for each binding on the same port.
Not really an expert of jbi but i think endpoint has 1-1 relation with
port type not with port, but maybe i'm wrong.
Any thought?
BTW not a real problem for me to configure two endpoint, i could just do
this automatically in my code generator
tool.
Andrea
Freeman Fang ha scritto:
Hi Andrea,
You mean one cxf bc consumer endpoint map to two ports in wsdl?
I don't think it's a good idea to do it. Since cxf bc consumer is a jbi
endpoint, and jbi specs use wsdl to describe the endpoint, and one wsdl
port is perfectly mapping to one jbi endpoint. If you have two ports in
wsdl, you should have two endpoints in jbi.
Regards
Freeman
Andrea Zoppello wrote:
Yeah Freeman i've understand very well this,
What i means here if it's possible to modify the code of the
CxfBcConusmer, so if there's only one CxfBcConusmerwith a wsdl with two
ports, could
automatically configure two Jetty context??
Andrea
Freeman Fang ha scritto:
Hi Andrea,
Yes, we can handle this directly in CxfBcConusmer, you need
configure two cxf bc consumer endpoint, one for soap11 and one for soap12.
In your wsdl, you must have two ports associated with differenet
bindings, one for soap11 and one for soap12, right? So you can configure
two cxf bc consumer endpoints, whose endpoint name is the port name from
your wsdl, you can use same locationURI for those two endpoint. By this way,
both soap11 binding and soap12 binding is supported with same locationURI.
Regards
Freeman
Andrea Zoppello wrote:
Hi,
It's just an idea, but if this is possible why not to handle this
directly in CxfBcConsumer??
Andrea
Freeman Fang ha scritto:
Hi Andrea,
Yeah, I have tried it.
You won't see the port already in use exception, since in cxf we
use jetty to publish the endpoint underlying, so jetty will take care of it,
something like different context handler for different endpoint.
Regards
Freeman
Andrea Zoppello wrote:
Hi,
Are you sure have you tried???
In my opinion you'll have a port already in use exception.
Andrea
Freeman Fang ha scritto:
Hi Andrea,
Yeah, you can publish those two endpoints with same
locationURI with cxf as well.
Regards
Freeman
Andrea Zoppello wrote:
Yes i've just think about that could but in that case i
must use two different url ( one for each endpoint )
instead i want to use the same uri.
This is a very common use case in integrattion scenario,
when you need the same webservice supporting more bindings
With Axis2 this is possible, You shoul consider to add
this capabilities to cxf too.
Andrea
Freeman Fang ha scritto:
Hi Andrea,
You can expose same webservice both on soap11 and soap12
by using two cxf bc consumer endpoint with different endpointName.
Regards
Freeman
Andrea Zoppello wrote:
Hi all,
I'm trying to expose using a cxf consumer a webservice
that must expose ( against the same port type )
two port ( one for soap 11 and one for soap 12 ).
The service part of the wsdl looks like:
<service name="DocumentRegistry_Service">
<port name="Service_Port_Soap11"
binding="tns:Service_Binding_Soap11">
<soap:address location="
http://servicelocation/DocumentRegistry_Service"/>
</port>
<port name="Service_Port_Soap12"
binding="tns:Service_Binding_Soap12">
<soap12:address location="
http://servicelocation/DocumentRegistry_Service"/>
</port>
</service>
This is perfectly legal ( in Axis2 this is possible )
but the CXF Consumer code consider only one of the two ports
when you deploy the endoint, this means that with cxf
at the moment it's not possible to expose the same webservice both on
SOAP11 and SOAP12....
Any Idea on this??? In my opinion this is a limitation
when comparing cxf with axis.
Do you plan to solve that problem??
Andrea