Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-1756

wsdl2java @WebService annotation on Impl class should be on Interface class JSR181 3.1

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 2.1.2
    • 2.1.3
    • Tooling
    • None
    • CXF 2.1.2 and 2.0.8

    Description

      Looks like XFIRE-496 (http://jira.codehaus.org/browse/XFIRE-496) was never fixed or carried over to CXF.

      I'm getting an error from my Eclipse Jax-ws validator for the code created by wsdl2java: JSR-181 3.1: name element cannot be used with endpointInterface.

      According to JSR181 section 3.1, if an Interface has an Impl, the @WebService annotation on the Impl class must only have serviceName and endpointInterface attributes. The other attributes (name, portName, targetNamespace, wsdlLocation) must be on the Interface class @WebService annotation.

      java2wsdl creates this on the Impl class (removed data between quotes) but should only have serviceName and endpointImpl:
      @javax.jws.WebService(name = "",
      serviceName = "",
      portName = "",
      targetNamespace = "",
      wsdlLocation = "",
      endpointInterface = "")

      and this on the Interface class (missing serviceName, portName, wsdlLocation):
      @WebService(targetNamespace = "", name = "")

      java2wsdl appears to work correctly with the annotations in the proper place in the SEI and Impl classes.

      Attachments

        Activity

          People

            dkulp Daniel Kulp
            bob fields Bob Fields
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: