cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Kulp (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CXF-1756) wsdl2java @WebService annotation on Impl class should be on Interface class JSR181 3.1
Date Wed, 20 Aug 2008 20:26:44 GMT

    [ https://issues.apache.org/jira/browse/CXF-1756?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12624124#action_12624124
] 

Daniel Kulp commented on CXF-1756:
----------------------------------


name="" shouldn't be there.  I agree with that. 

The rest are allowed per JAX-WS spec.

In particular:
wsdlLocation is specifically DISCOURAGED from being on the SEI interface and the reference
implementation would not put it there.   If it's on the SEI, you cannot use that sei in a
"code first" type scenario as the wsdl would always have to be pulled in.

targetNamespace also needs to be allowed to be able to model/use implementations where the
"service" is in a different namespace than the portType/binding nodes.

portName isn't even mentioned in the jsr311 spec.  


In anycase, I'll remove the name attribute, but the others need to stay.

Note: I checked a bunch of the impls in the JAX-WS TCK and I see things like:

@WebService(
    portName="HelloPort",
    serviceName="HelloService",
    targetNamespace="......,
    wsdlLocation="WEB-INF/........./.wsdl",
    endpointInterface="........Hello"
)
public class HelloImpl implements Hello {




> wsdl2java @WebService annotation on Impl class should be on Interface class JSR181 3.1
> --------------------------------------------------------------------------------------
>
>                 Key: CXF-1756
>                 URL: https://issues.apache.org/jira/browse/CXF-1756
>             Project: CXF
>          Issue Type: Bug
>          Components: Tooling
>    Affects Versions: 2.1.2
>         Environment: CXF 2.1.2 and 2.0.8
>            Reporter: Bob Fields
>            Priority: Minor
>
> 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.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message