It must have been the late nights.  It is getConduit(EndpointInfo ep) in the 
transport factory...ep.getAddress()...of course :)

 


----- Original Message ----
From: Coder One <[email protected]>
To: [email protected]
Sent: Mon, January 25, 2010 1:23:57 PM
Subject: Re: Config Head Scratcher

I was hoping to key off of "service1" in order to pick the right JMS 
destination (our own lookup system), but it seems like I can't get to 
"service1" from the Conduit.prepare(Message)....is there a way to do that?
 
 
 
ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
factory.setServiceClass(XyzService.class);
factory.setAddress("service1");
factory.setDataBinding(new org.apache.cxf.aegis.databinding.AegisDatabinding());
factory.setTransportId("http://acme.com/mytransports/abc";); 

Thanks,



----- Original Message ----
From: Daniel Kulp <[email protected]>
To: [email protected]
Cc: Coder One <[email protected]>
Sent: Mon, January 25, 2010 10:49:30 AM
Subject: Re: Config Head Scratcher


When the runtime creates the binding object, it has to give it a name (to put 
in the wsdl).  For the soap binding, it defaults to the service name + 
"SoapBinding".      It's kind of hard to set, though.    The simple:server 
element has a "binding" child element.  You can set that to a bean of type 
org.apache.cxf.binding.soap.SoapBindingConfiguration
and the bindingName property on that bean.    That SHOULD do it.

Dan



On Mon January 25 2010 4:29:27 am Coder One wrote:
> I got this log in my transport factory on the getConduit()...
>  
>  targetInfo=BindingQName={http://services.xyz.acme.com/}XyzServiceSoapBindi
> ng, ServiceQName={http://services.xyz.acme.com/}XyzService,
>  QName={http://services.xyz.acme.com/}XyzServicePort 
> The question is, where did that BindingQName came from?  How did CXF
>  determine the BindingQName? 
> I use the below client-side code to create a simple front-end to the
>  service: 
>            ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
>            factory.setServiceClass(XyzService.class);
>            factory.setAddress("Holala");
>            factory.setDataBinding(new
>  org.apache.cxf.aegis.databinding.AegisDatabinding());
>  factory.setTransportId("http://acme.com/mytransports/abc";); 
> On the server-side, I use the following:
>  
>    <simple:server id="xyzWebService"
>                    serviceClass="com.acme.xyz.services.XyzService"
>                    address="/xyzService">
>        <simple:serviceBean>
>            <ref bean="xyzService"/>
>        </simple:serviceBean>
>        <simple:dataBinding>
>            <bean class="org.apache.cxf.aegis.databinding.AegisDatabinding"
>  /> </simple:dataBinding>
>    </simple:server>
>  
> Thanks...
> 

-- 
Daniel Kulp
[email protected]
http://www.dankulp.com/blog



Reply via email to