Hi Jim,

Since I have the service object already, is there any way that I can get the
ServiceInfo for the service instead of creating a one?

If I have to create a ServiceInfo instance, what are the minimum fields I
need to add before passing it to JavaToWSDLProcessor.


Here is the code I have. Unfortunately, the wdl file generated is empty.


  private void generateCXFWsdlStream(String serviceName, OutputStream os)
throws IOException
    {
        Service service = getCXFServiceObject(serviceName);
        List serviceInfos = service.getServiceInfos();
        
        for (ServiceInfo serviceInfo : service.getServiceInfos()) {
                System.out.println("serviceInfo targetNamespace" +
serviceInfo.getTargetNamespace());
        }
        
        File tempFile = new File(outdir, serviceName + ".wsdl");
        JavaToWSDLProcessor wsdlProcessor = new JavaToWSDLProcessor();
        
        wsdlProcessor.generate((ServiceInfo) serviceInfos.get(0),tempFile);
    }


Thanks in advance,

Li





jim ma wrote:
> 
> On Fri, Jun 19, 2009 at 1:29 PM, liw <[email protected]> wrote:
> 
>>
>> Hi, we are migrating from xfire to cxf. In xfire, we have the following
>> code
>> for generating wsdl.
>>
>>  XFire xfire = (XFire)BeanFactory.getBeanInstance("xfire");
>>  Service origRegisteredService =
>> xfire.getServiceRegistry().getService(serviceName);
>>  origRegisteredService.getWSDLWriter().write(os);
>>
>> We need to migrate the above code from xfire to CXF.
>>
>> 1) Is JavaToWSDLProcessor.generate() the right API to use for generating
>> wsdl in CXF?
> 
> 
> Yes. You can also look at JavaToWSDLProcessor.generate(ServiceInfo
> service,
> File output)  if you already
> created a serviceInfo instance.
> 
> 
>>
>> 2) If so, given a serviceName, what are the APIs we need to use to get
>> the
>> ServiceInfo, so we can pass it to JavaToWSDLProcessor.generate() method?
> 
> 
> JavaToWSDLProcessor uses serviceBuilder to create service . It only create
> one serviceInfo for the given serviceClass.  So you can create ServiceInfo
> first and pass it to the generate(serviceInfo, outputFile) api.
> Dose this help ?
> 
> 
> Jim.
> 
> 

-- 
View this message in context: 
http://www.nabble.com/How-to-generate-wsdl-programmatically-using-cxf--tp24105734p24401484.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to