[
https://issues.apache.org/jira/browse/CXF-7638?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16359955#comment-16359955
]
John D. Ament commented on CXF-7638:
------------------------------------
[~andymc] what about the following (in your case)?
{code:java}
c.register(new MyProvider(), ExceptionMapper.class,
MessageBodyWriter.class);{code}
where one contract is valid, and the other is not.
> 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
> Priority: Major
> 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)