You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Colm O hEigeartaigh (JIRA)" <ji...@apache.org> on 2018/06/15 12:02:00 UTC
[jira] [Commented] (CXF-7722) CXF Swagger2Feature does not show
methods if context root is not empty.
[ https://issues.apache.org/jira/browse/CXF-7722?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16513726#comment-16513726 ]
Colm O hEigeartaigh commented on CXF-7722:
------------------------------------------
This issue appears to be working correctly in CXF 3.2.5-SNAPSHOT, but it exists in CXF 3.1.16-SNAPSHOT. Is it an option to upgrade? CXF 3.1.x uses an older version of Swagger UI which might be causing the problem.
> CXF Swagger2Feature does not show methods if context root is not empty.
> -----------------------------------------------------------------------
>
> Key: CXF-7722
> URL: https://issues.apache.org/jira/browse/CXF-7722
> Project: CXF
> Issue Type: Bug
> Components: JAX-RS
> Environment: Eclipse Oxygen, Tomcat 8.0.32, CXF 3.1.11, Spring 4.3.9-RELEASE
> Reporter: Dongfeng Lu
> Priority: Major
> Attachments: CxfSwaggerIssue_XML_Config.zip, Figure 1.png, Figure 2.png
>
>
> We are using CXF 3.1.11, the project is developed and deployed to Tomcat in Eclipse.
> We have been using CXF for a long time, and all of our REST services are configured via XML's <jaxrs:server>. We are trying to add Swagger2Feature to the project, and here is an example of a configuration file.
>
> {code:java}
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:jaxrs="http://cxf.apache.org/jaxrs" xmlns:p="http://www.springframework.org/schema/p"
> xmlns:c="http://www.springframework.org/schema/c" xmlns:context="http://www.springframework.org/schema/context"
> xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
> http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
> http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd">
> <!-- Service beans -->
> <bean id="restServiceOneServer" class="com.example.api.serverOne.impl.OneServerImpl" />
> <!-- Authentication wrappers -->
> <bean id="restServiceOneServerAuth"
> class="org.apache.cxf.interceptor.security.SecureAnnotationsInterceptor"
> p:securedObject-ref="restServiceOneServer" />
> <!-- CXF Swagger2Feature -->
> <bean id="swagger2Feature_oneServer" class="org.apache.cxf.jaxrs.swagger.Swagger2Feature" >
> <property name="title" value="One Server" />
> <property name="usePathBasedConfig" value="true"/>
> </bean>
> <!-- REST server -->
> <jaxrs:server
> address="/oneServer" id="oneServerServiceREST">
> <jaxrs:serviceBeans>
> <ref bean="restServiceOneServer" />
> </jaxrs:serviceBeans>
> <jaxrs:features>
> <ref bean="swagger2Feature_oneServer" />
> </jaxrs:features>
> <jaxrs:providers>
> <ref bean="jsonProvider" />
> <ref bean="wadlProvider" />
> <bean class="org.apache.cxf.jaxrs.security.SimpleAuthorizingFilter"
> p:interceptor-ref="restServiceOneServerAuth" />
> </jaxrs:providers>
> </jaxrs:server>
> </beans>
> {code}
>
> We deployed it to Tomcat in Eclipse under the context root "/example". Figure 1 shows the screenshot, which does not display any method.
> If we deploy it with an empty context root "", we see methods as shown in "Figure 2". This is a good, however, we do need use a non-empty context root, as we are building a WAR file, and that WAR file is supposed to work under any context root. How should we do that?
> The attached project has the code to reproduce the above finding. It is an ANT + Ivy project.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)