Description
When org.apache.cxf.jaxrs.model.URITemplate.compareTemplates() is passed two templates with the same number of literal characters, it returns -1 regardless of the order the templates a passed in. I suppose this may be on purpose, but the result is that if compareTemplates() is used as the basis of a Comparator<URITemplate> that is used by java.util.Collections.sort() it can result in:
java.lang.IllegalArgumentException: Comparison method violates its general contract!
I would also expect that this would result in some degree of unpredictability of the prioritization of when selecting the appropriate JAX-RS method to call for a given request.
Attachments
Issue Links
- links to