Andy McCright created CXF-7638:
----------------------------------

             Summary: JAXRS CTS/TCK issue:  register(...) should ignore 
components when invalid contracts are passed in
                 Key: CXF-7638
                 URL: https://issues.apache.org/jira/browse/CXF-7638
             Project: CXF
          Issue Type: Bug
          Components: JAX-RS
    Affects Versions: 3.2.2
            Reporter: Andy McCright
            Assignee: Andy McCright
             Fix For: 3.2.3


We're seeing some failures when running the JAX-RS 2.1 TCK - particularly 
around the register method. The javadoc states that the implementation MUST 
ignore the component if the call to register specifies a contract (interface) 
that the component does not implement.

So, for example, suppose somebody calls code like this:

 

public class MyProvider implements MessageBodyWriter<MyObject> ...

 

Client c = ClientBuilder.newClient();

c.register(MyProvider.class, ContainerRequestFilter.class); // should ignore

c.register(new MyProvider, ExceptionMapper.class, MessageBodyReader.class); // 
should ignore

Map<Class, int> contractPriorityMap = new HashMap<>();

contractPriorityMap.put(ClientResponseFilter.class, 20);

c.register(MyProvider.class, contractPriorityMap); // should ignore

c.register(new MyProvider.class, contractPriorityMap); // should ignore

 

The TCK tests basically check that nothing gets registered when a passed-in 
contract is not assignable to the provider class.  And scenarios like the four 
mentioned above are failing.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to