3

I feel I am stuck.

Here is wsdl: http://www.doffin.no/ws/tdeservice.asmx?wsdl

I generate classes using apache maven cxf plugin. Because of the names with sequence "X0020" I have two classes which I want to rename.

  • one generated for wsdl:definitions/wsdl:service[@name='TDE_x0020_Connect'];

  • another for wsdl:definitions/wsdl:portType[@name='TDE_x0020_ConnectSoap'].

Also I want the getter method of the first class, which returns the second, to be renamed. I tried to use bindings file:

<jaxws:bindings
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    wsdlLocation="TdeService.wsdl"
    xmlns:jaxws="http://java.sun.com/xml/ns/jaxws">
    <jaxws:bindings node="wsdl:definitions/wsdl:service[@name='TDE_x0020_Connect']">
        <jaxws:class name="TdeConnect"/>
    </jaxws:bindings>
    <jaxws:bindings node="wsdl:definitions/wsdl:portType[@name='TDE_x0020_ConnectSoap']">
        <jaxws:class name="TdeConnectSoap"/>
    </jaxws:bindings>
    <jaxws:bindings node="wsdl:definitions/wsdl:service[@name='TDE_x0020_Connect']/wsdl:port[@name='TDE_x0020_ConnectSoap']">
        <jaxws:method name="getTdeConnectSoap"/>
    </jaxws:bindings>
</jaxws:bindings>

However, classes are renamed while method is not:

@WebEndpoint(name = "TDE_x0020_ConnectSoap")
public TdeConnectSoap getTDEX0020ConnectSoap() {
    return super.getPort(TDEX0020ConnectSoap, TdeConnectSoap.class);
}
@WebEndpoint(name = "TDE_x0020_ConnectSoap")
public TdeConnectSoap getTDEX0020ConnectSoap(WebServiceFeature... features) {
    return super.getPort(TDEX0020ConnectSoap, TdeConnectSoap.class, features);
}

I feel I am doing something wrong, could you please give a hint or a link to comprehensive manual about the problem?

4

1 に答える 1