Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
jax-rs-whiteboard-1.0.5
-
None
Description
The Aries JAX-RS Whiteboard implementation is using cxf internally (you know it much better than me).
If you create an endpoint for the path "/services" this will not work out of the box using the current implementation.
Instead of the endpoint you will get a response provided by cxf.
I identified that class: https://github.com/apache/cxf/blob/cxf-3.2.5/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
So, the servlet context needs an init parameter with name "hide-service-list-page" that is set to "false".
To set the parameter the component that implements the REST application needs to contain a component property: servlet.init.hide-service-list-page=true
But IMHO the specific application component needs to be independent of the chosen implementation that provides the JAX-RS Whiteboard specification.
So, it should be possible to set "servlet.init.hide-service-list-page=true" for the Aries JAX-RS Whiteboard implementation only and that setting will be applied to all REST applications using that implementation.
I would also prefer if the value is default "true" and could be set to "false".
I don't think a user should need to configure something to get an endpoint "/services" working. It should work as for every other endpoint, too.
Offtopic:
Another default setting – see https://issues.apache.org/jira/browse/CXF-8190 – should IMHO be set: "replace.loopback.address.with.localhost=false"
I will create a separate issue dependent on the reaction of this one.