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

Vedran Pavic commented on CXF-6869:
-----------------------------------

Sergey, I've created the PR to address the discussed concerns.

Changes are probably obvious from the commit messages but I'll explain what 
I've done once more:

- updated Spring Boot dependencies to {{1.3.5.RELEASE}}
- added {{cxf-rt-rs-service-description}} to {{cxf-spring-boot-starter-jax-rs}} 
so that the {{?_wadl}} links from service listing page work out of the box
- improved the auto-configuration
- removed {{@Configuration}} from {{JaxRsConfig}} and removed {{JaxRsConfig}} 
import from {{AbstractSpringConfigurationFactory}} - these two were the main 
offenders from the auto-configuration perspective

The auto-configuration support now works like this:

- main auto-configuration condition is now {{@ConditionalOnClass(\{ 
SpringBus.class, CXFServlet.class \})}}, i.e. it is dependent on presence of 
{{cxf-core}} and {{cxf-rt-transports-http}} modules
- it provides auto-configuration capabilities for {{CXFServlet}}, {{SpringBus}} 
and JAX-RS specific config i.e. {{SpringComponentScanServer}}
- {{CXFServlet}} auto-configuration is disabled on presence of bean named 
{{cxfServletRegistration}}
- {{SpringBus}} auto-configuration is disabled on presence of {{SpringBus}} bean
- JAX-RS specific configuration is conditional on presence of 
{{cxf-rt-frontend-jaxrs}} module and is disabled on presence of bean named 
{{jaxRsServer}}

The samples previously linked are working with this implementation:
https://github.com/vpavic-samples/spring-boot-cxf-jax-ws
https://github.com/vpavic-samples/spring-boot-cxf-jax-rs

Looking forward to your feedback.

> Consider adding Spring Boot starter
> -----------------------------------
>
>                 Key: CXF-6869
>                 URL: https://issues.apache.org/jira/browse/CXF-6869
>             Project: CXF
>          Issue Type: New Feature
>          Components: Integration
>            Reporter: Vedran Pavic
>            Assignee: Sergey Beryozkin
>
> I've recently authored a PR in Spring Boot to add support for 
> auto-configuration of {{CXFServlet}} and default CXF's configuration:
> https://github.com/spring-projects/spring-boot/pull/5659
> The PR was closed with "won't fix" resolution since Boot team are unwilling 
> to add CXF as a dependency to the project. Instead a 3rd party starter was 
> suggested.
> The concept of a 3rd party starter is generally encouraged for technologies 
> that don't have first-class support in projects from Spring portfolio. Such 
> 3rd party starters are listed here:
> https://github.com/spring-projects/spring-boot/blob/master/spring-boot-starters/README.adoc
> If CXF team is interested, I'm willing to port my PR to CXF.
> Note that the original PR was focused around JAX-WS support, but can be 
> easily expanded to include JAX-RS support as well.



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

Reply via email to