Simon Kissane created CXF-7703:
----------------------------------

             Summary: Public constructor of SwaggerUiService takes 
package-private argument of SwaggerUiResourceLocator
                 Key: CXF-7703
                 URL: https://issues.apache.org/jira/browse/CXF-7703
             Project: CXF
          Issue Type: Bug
    Affects Versions: 3.2.4
            Reporter: Simon Kissane


In CXF 3.2.4 (and also in master), the class 
org.apache.cxf.jaxrs.swagger.SwaggerUiService has a single public constructor,
public SwaggerUiService(SwaggerUiResourceLocator locator, Map<String, String> 
mediaTypes)

However, the first argument SwaggerUiResourceLocator is a package-private class.
So, effectively no one outside the package can use that constructor.
This doesn't make any logical sense. Either the constructor should be 
package-private, or the SwaggerUiResourceLocator class should be public.

In CXF 3.1.11, I subclass Swagger2Feature.SwaggerUIService to modify its 
behaviour.
I am trying to upgrade from CXF 3.1.11 to CXF 3.2.4.
In CXF 3.2.4, Swagger2Feature.SwaggerUIService has been replaced by 
SwaggerUiService class.
But I cannot subclass it because SwaggerUiResourceLocator is package-private.

I think the simplest solution would be to make SwaggerUiResourceLocator a 
public class.



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

Reply via email to