v2.JavaJaxRS.cxf.server.ApplicationContext.xml.mustache Maven / Gradle / Ivy
The newest version!
<?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:cxf="http://cxf.apache.org/core"
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd">
<import resource="classpath:META-INF/cxf/cxf.xml" />
<!-- JAXRS providers -->
<bean id="jsonProvider" class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider" />
{{#useMultipartFeature}}
<bean id="multipartProvider" class="org.apache.cxf.jaxrs.provider.MultipartProvider" />
{{/useMultipartFeature}}
<!-- Controller -->
{{#useSpringAnnotationConfig}}
<context:annotation-config/>
<context:component-scan base-package="{{apiPackage}}.impl" />
{{/useSpringAnnotationConfig}}
{{^useSpringAnnotationConfig}}
{{#apiInfo}}
{{#apis}}
<bean id="{{classname}}" class="{{package}}.impl.{{classname}}ServiceImpl" />
{{/apis}}
{{/apiInfo}}
{{/useSpringAnnotationConfig}}
{{#useSwaggerFeature}}
<!-- CXF Swagger2Feature -->
{{! http://cxf.apache.org/docs/swagger2feature.html }}
<bean id="swagger2Feature" class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
<!--property name="basePath" value="/services"/-->
{{#useSwaggerUI}}
<property name="supportSwaggerUi" value="true" />
{{/useSwaggerUI}}
<!--property name="contact" value="${swagger.contact}" />
<property name="title" value="${swagger.title}" />
<property name="version" value="${swagger.version}" />
<property name="description" value="${swagger.description}" />
<property name="license" value="${swagger.license}" />
<property name="licenseUrl" value="${swagger.licenseUrl}" /-->
</bean>
{{/useSwaggerFeature}}
<cxf:bus>
<cxf:inInterceptors>
{{#useGzipFeature}}
<ref bean="GZIPInInterceptor"/>
{{/useGzipFeature}}
{{#useBeanValidationFeature}}
<!-- BeanValidation 1.1 for CXF -->
<ref bean="validationInInterceptor" />
{{/useBeanValidationFeature}}
</cxf:inInterceptors>
<cxf:outInterceptors>
{{#useGzipFeature}}
<ref bean="GZIPOutInterceptor"/>
{{/useGzipFeature}}
{{#useBeanValidationFeature}}
<!-- BeanValidation 1.1 for CXF -->
<ref bean="validationOutInterceptor" />
{{/useBeanValidationFeature}}
</cxf:outInterceptors>
<cxf:features>
{{#useLoggingFeature}}
<cxf:logging />
{{/useLoggingFeature}}
{{#useGzipFeature}}
<ref bean="compressGZIPFeature"/>
{{/useGzipFeature}}
</cxf:features>
<cxf:properties>
<entry key="javax.ws.rs.ext.ExceptionMapper" value-ref="exceptionMapper"/>
</cxf:properties>
</cxf:bus>
{{#useWadlFeature}}
<bean id="wadlGenerator"
class="org.apache.cxf.jaxrs.model.wadl.WadlGenerator">
<property name="linkJsonToXmlSchema" value="true" />
</bean>
{{/useWadlFeature}}
{{#useGzipFeature}}
<bean id="GZIPInInterceptor" class="org.apache.cxf.transport.common.gzip.GZIPInInterceptor"/>
<bean id="GZIPOutInterceptor" class="org.apache.cxf.transport.common.gzip.GZIPOutInterceptor" >
<!--property name="force" value="true" /-->
<!--property name="threshold" value="0" /-->
</bean>
<bean id="compressGZIPFeature" class="org.apache.cxf.transport.common.gzip.GZIPFeature"/>
{{/useGzipFeature}}
{{#useBeanValidationFeature}}
<bean id="commonValidationFeature" class="org.apache.cxf.validation.BeanValidationFeature"/>
<bean id="exceptionMapper" class="org.apache.cxf.jaxrs.validation.ValidationExceptionMapper"/>
<bean id="validationProvider" class="org.apache.cxf.validation.BeanValidationProvider" />
<bean id="validationInInterceptor" class="org.apache.cxf.jaxrs.validation.JAXRSBeanValidationInInterceptor">
<property name="provider" ref="validationProvider" />
</bean>
<bean id="validationOutInterceptor" class="org.apache.cxf.jaxrs.validation.JAXRSBeanValidationOutInterceptor">
<property name="provider" ref="validationProvider" />
</bean>
{{/useBeanValidationFeature}}
{{^useBeanValidationFeature}}
<bean id="exceptionMapper" class="org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper">
<property name="addMessageToResponse" value="true" />
</bean>
{{/useBeanValidationFeature}}
<!-- REST server -->
<jaxrs:server id="restServer" address="/services">
<jaxrs:serviceBeans>
{{#apiInfo}}
{{#apis}}
<ref bean="{{classname}}" />
{{/apis}}
{{/apiInfo}}
</jaxrs:serviceBeans>
<jaxrs:providers>
<ref bean="jsonProvider" />
{{#useMultipartFeature}}
<ref bean="multipartProvider" />
{{/useMultipartFeature}}
{{#useWadlFeature}}
<ref bean="wadlGenerator" />
{{/useWadlFeature}}
</jaxrs:providers>
<jaxrs:features>
{{#useSwaggerFeature}}
<ref bean="swagger2Feature" />
{{/useSwaggerFeature}}
{{#useBeanValidationFeature}}
<ref bean="commonValidationFeature" />
{{/useBeanValidationFeature}}
</jaxrs:features>
</jaxrs:server>
</beans>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy