Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-7234

JAX-WS generated portType implementation has incorrect @WebService annotation

    Details

      Description

      When generating a Java Bean skeleton web service, based on a WSDL definition, the port type implementation class has an incorrect annotation.

      The port type implementation has:

      @WebService(serviceName = "CreditAgencyInterface", endpointInterface = "org.example.purchasing.creditAgency.CreditAgencyInterface")

      but the interface associated with the implementation defines:

      @WebService(name = "CreditAgencyInterface", targetNamespace = "http://www.jboss.org/examples/creditAgency")

      The end result is that when accessing the WSDL for the endpoint, once deployed to the JBossAS server, the WSDL has an incorrect target namespace and service name - service name is 'CreditAgencyInterface' instead of 'CreditAgencyService', and the target namespace is autogenerated based on the Java package name of the implementation class.

      When the annotation in the port type implementation's annotation was changed to be:

      @WebService(name = "CreditAgencyInterface", serviceName="CreditAgencyService", targetNamespace="http://www.jboss.org/examples/creditAgency", endpointInterface = "org.example.purchasing.creditAgency.CreditAgencyInterface")

      This fixes the serviceName attribute, and adds a 'name' attribute to be the port type. It also specifies explicitly the target namespace.

      Note: tried using jax-ws version 2.0 and 2.1, with same result.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                bfitzpat Brian Fitzpatrick
                Reporter:
                objectiser Gary Brown
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: