You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Caspar MacRae <ea...@gmail.com> on 2011/06/17 16:04:49 UTC

WSDL arg names using CXF dOSGi

Hello,

I'm looking into using CXF dOSGi to provide some dynamic webservices from my
OSGi services.

All is fine except for the argument names and namespace of the generated
WSDL, which is defaulting to arg0, arg1, ... argN

I understand why, reading:
http://cxf.apache.org/faq.html#FAQ-Thepartsinmygeneratedwsdlhavenamesoftheform%22arg0%22%2C%22arg1%22%2C...Whydon%27ttheparts%28andJavageneratedfromthem%29usetheniceparameternamesItypedintotheinterfacedefinition%3F

But, even if I pollute my POJO service interface with lots of javax.jws.Web*
annotations, it still doesn't work.

@WebService(targetNamespace = "app.company.com")
public interface BlahService {

    @WebResult(name = "salutation", partName = "salutation")
    @WebMethod
    public String hello(@WebParam(name = "recipient", partName =
"recipient") String recipient);
}

My implementation class (using SCR) has the properties:
@Properties({
    @Property(name = "service.exported.interfaces", value = {"*"}),
    @Property(name = "service.exported.configs", value = {"org.apache.cxf.ws
"}),
    @Property(name = "org.apache.cxf.ws.address", value =
{BlahServiceImp.WS_URL_BASE})
})

I read something somewhere regarding this issue with iPOJO and someone
stated it's due use of proxies, but I was using Declarative Services, then
switched to vanilla OSGi with an Activator and even tried registering the
concrete implementation - and still no joy (I didn't understand the
reasoning for the iPOJO issue, as regardless of proxies it's the interface
that the instance is registered with the OSGi service registry).

I'm not too familiar with SOAP, WSDL, etc, so I may have missed something
very obvious.


thanks,
Caspar