[ 
https://issues.apache.org/jira/browse/CXF-6834?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15245222#comment-15245222
 ] 

Vedran Pavic commented on CXF-6834:
-----------------------------------

Hi Sergey - thanks for your interest.

Generally, a 3rd party starter for Spring Boot offers the following advantages:
- provides dependency management - user only needs to add the starter as a 
dependency to their project, everything else will then get pulled in 
transitively with correct versions
- auto-configuration for common use cases which is triggered simply by presence 
of required classes in the classpath; in CXF's case this includes registration 
of {{CXFServlet}} which is mapped to {{/services/*}} and automatic import of 
default config for {{SpringBus}} via 
{{cxf-core-3.1.6.jar!/META-INF/cxf/cxf.xml}}
- configuration properties for customization of auto-configured 
functionalities; in this case, the auto-configured {{CXFServlet}}'s path 
mapping, servlet {{loadOnStartup}} and servlet init params can be customized 
using (externalized) application properties (we can also evaluate if there's 
something else to allow customization for)

With this approach, all that's left for used to do in a Spring Boot application 
is to register their {{Endpoint}} beans. Please take a look at the sample 
application in my original PR:
https://github.com/spring-projects/spring-boot/pull/5659

I hope this addresses your concerns.

> add support for CXF inside Spring Boot
> --------------------------------------
>
>                 Key: CXF-6834
>                 URL: https://issues.apache.org/jira/browse/CXF-6834
>             Project: CXF
>          Issue Type: Improvement
>          Components: JAX-RS
>            Reporter: james strachan
>            Assignee: Sergey Beryozkin
>             Fix For: 3.1.7, 3.2.0
>
>
> right now spring boot has support for Jersey; it'd be great to integrate 
> support for CXF too.
> e.g.
> * 
> https://github.com/spring-projects/spring-boot/tree/master/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jersey
> * 
> https://github.com/spring-projects/spring-boot/tree/master/spring-boot-starters/spring-boot-starter-jersey
> * 
> https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-jersey
> * 
> https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-jersey1
> mostly this is about submitting a PR against the spring-boot project; but it 
> may require a few changes in CXF to be more spring/spring-boot ready or to 
> work better with Spring Boot's auto configuration mechanism and tooling:
> * 
> https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-auto-configuration.html
> * 
> https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
> Docs on creating auto configuration here:
> https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-auto-configuration.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to