You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fortress@directory.apache.org by Veniamin Gvozdikov <g....@googlemail.com.INVALID> on 2023/11/02 16:42:10 UTC
Fortress REST with Swagger support
I'm trying to use the CXF feature
https://cxf.apache.org/docs/swagger2feature.html on fortress 3.0.0 to get
API access over swagger interface. I've already added these lines but I
don't understand where I need to turn the feature on in java code. Could
you please give me some advice on this?
--- a/src/main/resources/applicationContext.xml
+++ b/src/main/resources/applicationContext.xml
@@ -46,6 +46,12 @@ under the License.
</bean>
<bean id="fortressResponseInterceptor"
class="org.apache.directory.fortress.rest.FortressResponseInterceptor"/>
+
+ <!-- CXF Swagger2Feature -->
+ <bean id="swagger2Feature"
class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
+ <!-- customize some of the properties -->
+ <property name="basePath" value="/app/swaggerSample"/>
+ </bean>
<jaxrs:server id="restContainer" address="/">
<jaxrs:serviceBeans>
@@ -67,6 +73,11 @@ under the License.
<jaxrs:providers>
<ref bean="customJsonProvider"/>
</jaxrs:providers>
+
+ <!-- Swagger -->
+ <jaxrs:features>
+ <ref bean="swagger2Feature" />
+ </jaxrs:features>
</jaxrs:server>
</beans>
--
Regards,
Veniamin
Re: Fortress REST with Swagger support
Posted by Shawn McKinney <sm...@apache.org>.
> On Nov 4, 2023, at 1:11 AM, Yudhi Karunia Surtan <br...@gmail.com> wrote:
>
> I tried the above configuration and found that Swagger2Feature is not applicable for fortress 3.0.0 since version 3.0.0 has been moved using jakarta dependency.
>
Good catch Yudhi.
> found log with the following :
>
> 04-Nov-2023 12:42:19.573 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.springframework.web.context.ContextLoaderListener]
> org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'restContainer': javax/ws/rs/core/Application
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1770)
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:598)
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520)
> at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326)
> at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
> at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324)
> at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200)
> at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973)
> at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:942)
> at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:608)
> at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:394)
> at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:274)
> at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:102)
> at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4422)
> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4860)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:683)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:658)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:712)
> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1136)
> at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1974)
> at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123)
> at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1046)
> at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:428)
> at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1659)
> at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114)
> at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402)
> at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345)
> at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:893)
> at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:845)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332)
> at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145)
> at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866)
> at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:917)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:795)
> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:578)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:347)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:478)
> Caused by: java.lang.NoClassDefFoundError: javax/ws/rs/core/Application
> at org.apache.cxf.jaxrs.swagger.Swagger2Feature$Portable.addSwaggerResource(Swagger2Feature.java:267)
> at org.apache.cxf.jaxrs.swagger.AbstractSwaggerFeature$Portable.initialize(AbstractSwaggerFeature.java:190)
> at org.apache.cxf.feature.DelegatingFeature.initialize(DelegatingFeature.java:48)
> at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.applyFeatures(JAXRSServerFactoryBean.java:260)
> at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:192)
> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:578)
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1874)
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1827)
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1766)
> ... 51 more
> Caused by: java.lang.ClassNotFoundException: javax.ws.rs.core.Application
> at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1353)
> at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1165)
> ... 61 more
>
> and also it is confirmed by the Swagger2Feature code that it still used javax dependency on swagger feature.
>
> <image.png>
>
> With all the things i've found, i think it is imposible to use swagger feature at cxf for fortress version 3.0.0
>
We could try running the swagger lib through the tomcat or eclipse migration tool. But, we can’t publish dependencies (in our pom) that have not migrated.
> Have you tried with fortress version 2.x.x ?
---------------------------------------------------------------------
To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
For additional commands, e-mail: fortress-help@directory.apache.org
Re: Fortress REST with Swagger support
Posted by Yudhi Karunia Surtan <br...@gmail.com>.
I tried the above configuration and found that Swagger2Feature is not
applicable for fortress 3.0.0 since version 3.0.0 has been moved using
jakarta dependency.
found log with the following :
04-Nov-2023 12:42:19.573 SEVERE [main]
> org.apache.catalina.core.StandardContext.listenerStart Exception sending
> context initialized event to listener instance of class
> [org.springframework.web.context.ContextLoaderListener]
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'restContainer': javax/ws/rs/core/Application
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1770)
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:598)
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520)
> at
> org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326)
> at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
> at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324)
> at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200)
> at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973)
> at
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:942)
> at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:608)
> at
> org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:394)
> at
> org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:274)
> at
> org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:102)
> at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4422)
> at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4860)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:683)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:658)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:712)
> at
> org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1136)
> at
> org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1974)
> at
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
> at
> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at
> java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123)
> at
> org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1046)
> at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:428)
> at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1659)
> at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
> at
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114)
> at
> org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402)
> at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345)
> at
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:893)
> at
> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:845)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332)
> at
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
> at
> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at
> java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145)
> at
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866)
> at
> org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at
> org.apache.catalina.core.StandardService.startInternal(StandardService.java:433)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at
> org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:917)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:795)
> at
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:578)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:347)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:478)
> Caused by: java.lang.NoClassDefFoundError: javax/ws/rs/core/Application
> at
> org.apache.cxf.jaxrs.swagger.Swagger2Feature$Portable.addSwaggerResource(Swagger2Feature.java:267)
> at
> org.apache.cxf.jaxrs.swagger.AbstractSwaggerFeature$Portable.initialize(AbstractSwaggerFeature.java:190)
> at
> org.apache.cxf.feature.DelegatingFeature.initialize(DelegatingFeature.java:48)
> at
> org.apache.cxf.jaxrs.JAXRSServerFactoryBean.applyFeatures(JAXRSServerFactoryBean.java:260)
> at
> org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:192)
> at
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:578)
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1874)
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1827)
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1766)
> ... 51 more
> Caused by: java.lang.ClassNotFoundException: javax.ws.rs.core.Application
> at
> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1353)
> at
> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1165)
> ... 61 more
>
and also it is confirmed by the Swagger2Feature code that it still used
javax dependency on swagger feature.
[image: image.png]
With all the things i've found, i think it is imposible to use swagger
feature at cxf for fortress version 3.0.0
Have you tried with fortress version 2.x.x ?
On Fri, Nov 3, 2023 at 3:24 AM Shawn McKinney <sm...@apache.org> wrote:
>
>
> > On Nov 2, 2023, at 11:42 AM, Veniamin Gvozdikov <
> g.veniamin@googlemail.com.INVALID> wrote:
> >
> > I'm trying to use the CXF feature
> > https://cxf.apache.org/docs/swagger2feature.html on fortress 3.0.0 to
> get
> > API access over swagger interface. I've already added these lines but I
> > don't understand where I need to turn the feature on in java code. Could
> > you please give me some advice on this?
> >
>
> A little progress. Added the dependency to the pom
>
> ```
> <dependency>
> <groupId>org.apache.cxf</groupId>
> <artifactId>cxf-rt-rs-service-description-swagger</artifactId>
> <version>3.6.2</version>
> </dependency>
> ```
>
> And enabled the swagger feature in applicationContext.xml
>
> ```
> <!-- CXF Swagger2Feature -->
> <bean id="swagger2Feature"
> class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
> <property name="basePath" value="/app/swaggerSample"/>
> </bean>
> ```
>
> Can build and deploy, but don’t know what to do next. I’m sure it can’t be
> this easy.
>
> Also, the endpoint is secured so the container will enforce http basic
> auth. Not a show stopper just something that will have to be handled
> somehow.
>
> Still digging …
>
> —
> Shawn
>
> > --- a/src/main/resources/applicationContext.xml
> > +++ b/src/main/resources/applicationContext.xml
> > @@ -46,6 +46,12 @@ under the License.
> > </bean>
> >
> > <bean id="fortressResponseInterceptor"
> > class="org.apache.directory.fortress.rest.FortressResponseInterceptor"/>
> > +
> > + <!-- CXF Swagger2Feature -->
> > + <bean id="swagger2Feature"
> > class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
> > + <!-- customize some of the properties -->
> > + <property name="basePath" value="/app/swaggerSample"/>
> > + </bean>
> >
> > <jaxrs:server id="restContainer" address="/">
> > <jaxrs:serviceBeans>
> > @@ -67,6 +73,11 @@ under the License.
> > <jaxrs:providers>
> > <ref bean="customJsonProvider"/>
> > </jaxrs:providers>
> > +
> > + <!-- Swagger -->
> > + <jaxrs:features>
> > + <ref bean="swagger2Feature" />
> > + </jaxrs:features>
> > </jaxrs:server>
> >
> > </beans>
> >
> > --
> > Regards,
> > Veniamin
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
> For additional commands, e-mail: fortress-help@directory.apache.org
>
>
Re: Fortress REST with Swagger support
Posted by Shawn McKinney <sm...@apache.org>.
> On Nov 2, 2023, at 11:42 AM, Veniamin Gvozdikov <g....@googlemail.com.INVALID> wrote:
>
> I'm trying to use the CXF feature
> https://cxf.apache.org/docs/swagger2feature.html on fortress 3.0.0 to get
> API access over swagger interface. I've already added these lines but I
> don't understand where I need to turn the feature on in java code. Could
> you please give me some advice on this?
>
A little progress. Added the dependency to the pom
```
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-service-description-swagger</artifactId>
<version>3.6.2</version>
</dependency>
```
And enabled the swagger feature in applicationContext.xml
```
<!-- CXF Swagger2Feature -->
<bean id="swagger2Feature" class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
<property name="basePath" value="/app/swaggerSample"/>
</bean>
```
Can build and deploy, but don’t know what to do next. I’m sure it can’t be this easy.
Also, the endpoint is secured so the container will enforce http basic auth. Not a show stopper just something that will have to be handled somehow.
Still digging …
—
Shawn
> --- a/src/main/resources/applicationContext.xml
> +++ b/src/main/resources/applicationContext.xml
> @@ -46,6 +46,12 @@ under the License.
> </bean>
>
> <bean id="fortressResponseInterceptor"
> class="org.apache.directory.fortress.rest.FortressResponseInterceptor"/>
> +
> + <!-- CXF Swagger2Feature -->
> + <bean id="swagger2Feature"
> class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
> + <!-- customize some of the properties -->
> + <property name="basePath" value="/app/swaggerSample"/>
> + </bean>
>
> <jaxrs:server id="restContainer" address="/">
> <jaxrs:serviceBeans>
> @@ -67,6 +73,11 @@ under the License.
> <jaxrs:providers>
> <ref bean="customJsonProvider"/>
> </jaxrs:providers>
> +
> + <!-- Swagger -->
> + <jaxrs:features>
> + <ref bean="swagger2Feature" />
> + </jaxrs:features>
> </jaxrs:server>
>
> </beans>
>
> --
> Regards,
> Veniamin
---------------------------------------------------------------------
To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
For additional commands, e-mail: fortress-help@directory.apache.org
Re: Fortress REST with Swagger support
Posted by Shawn McKinney <sm...@apache.org>.
> On Nov 2, 2023, at 11:42 AM, Veniamin Gvozdikov <g....@googlemail.com.INVALID> wrote:
>
> I'm trying to use the CXF feature
> https://cxf.apache.org/docs/swagger2feature.html on fortress 3.0.0 to get
> API access over swagger interface. I've already added these lines but I
> don't understand where I need to turn the feature on in java code. Could
> you please give me some advice on this?
>
Hello Veniamin,
Welcome to our mailing list. Out of the two questions you sent me (before I redirected you here), this is the question that I don’t know the answer.
(So, create a new thread here with your other question)
I did a little research on Swagger …
First, are you trying to get Swagger to produce a document of the Fortress REST APIs?
I’m assuming the answer is yes, but want to be sure.
I may refer this question to our dev list as someone there may have experience.
I’ll also do more digging and see what I can come up with.
So, I definitely want to help.
—
Shawn
> --- a/src/main/resources/applicationContext.xml
> +++ b/src/main/resources/applicationContext.xml
> @@ -46,6 +46,12 @@ under the License.
> </bean>
>
> <bean id="fortressResponseInterceptor"
> class="org.apache.directory.fortress.rest.FortressResponseInterceptor"/>
> +
> + <!-- CXF Swagger2Feature -->
> + <bean id="swagger2Feature"
> class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
> + <!-- customize some of the properties -->
> + <property name="basePath" value="/app/swaggerSample"/>
> + </bean>
>
> <jaxrs:server id="restContainer" address="/">
> <jaxrs:serviceBeans>
> @@ -67,6 +73,11 @@ under the License.
> <jaxrs:providers>
> <ref bean="customJsonProvider"/>
> </jaxrs:providers>
> +
> + <!-- Swagger -->
> + <jaxrs:features>
> + <ref bean="swagger2Feature" />
> + </jaxrs:features>
> </jaxrs:server>
>
> </beans>
>
> --
> Regards,
> Veniamin
---------------------------------------------------------------------
To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
For additional commands, e-mail: fortress-help@directory.apache.org