[ https://issues.apache.org/jira/browse/CXF-3?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15094444#comment-15094444 ]
ASF GitHub Bot commented on CXF-3: ---------------------------------- GitHub user CMoH opened a pull request: https://github.com/apache/incubator-brooklyn/pull/1140 [WIP] CXF implementation of rest api I've worked on a separate REST API project for Brooklyn using CXF, since changing the current brooklyn-rest-server in a manner that's compatible both with karaf and the current launcher seems impossible. However, the main downside is that for the time being there are two parallel implementations of brooklyn REST resources, and the same for the rest-api. Below are the causes for this: 1. While the first duplication is to be expected, duplication of the rest-api project is a bad idea. Unfortunately CXF-3.1.4 is already based on jax-rs-2.x, while brooklyn is using jax-rs-1.1 because of jersey-1.19. 2. Another problem is that ```CatalogApi.createFromMultipart()``` uses HTTP forms, which do not seem to have standard jax-rs annotations. This means custom jersey annotations in brooklyn-rest-api and the reverse in brooklyn-rest-api-cxf. Does anyone have any idea on how to create a single rest-api project with annotations usable both by CXF and Jersey1? I've also moved tests that rely on a having a fully-blown brooklyn instance running to karaf integration tests project. For the time being they fail - I'll try to address them and update the PR, but your input is already valuable. Thanks You can merge this pull request into a Git repository by running: $ git pull https://github.com/CMoH/incubator-brooklyn cxf Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-brooklyn/pull/1140.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1140 ---- commit d848091e18d27bb7cac06ec7e38c40faa19e40a2 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-09T14:01:06Z [BROOKLYN-183] Add CXF projects for rest API Create two new projects holding the CXF resources for later use only within the OSGi launcher. The HA code was removed from the CXF resources, with the intention of implementing HA using karaf cellar. For a time this will create code duplication, but hopefully the jersey code will be dropped when migrating to the karaf distro. REST API tests were adapted from existing tests in the jersey implementation, but this commit does not attempt to have them working. commit 1522141e80c27bcf1e15e013f23086da4d034463 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-10T02:01:12Z [BROOKLYN-183] Remove jersey references from brooklyn-rest-resources-cxf commit 1d9bbda922df0e35b938f47066dc1707699f169a Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-10T02:02:09Z [BROOKLYN-183] Use relative paths for REST resource paths Move the context root at /v1, and use paths relative to that in resource annotations. commit 4c4a442f21f46495d8dcf13d274468feef8a34a0 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-10T02:03:08Z [BROOKLYN-183] Add CXF REST resources to karaf features commit 64081782d23a9a1550f1e14ae1cf2c5078995705 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-11T13:42:37Z [BROOKLYN-183] Move CXF servlet context to /v1 In order to preserve compatibility with the existing brooklyn REST API we need to expose resources at path /v1 instead of /cxf/v1. For now move the whole CXF servlet at /v1, and with resources mounted at / we get the historical path /v1/ for the REST API. We'll need to make the JSGUI configurable with the base REST API path in the future though. Also add appropriate providers to the OSGi CXF service blueprint. commit fb02ea783c288c64bbdd0eff9ba6604ec646573b Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-11T19:15:19Z [BROOKLYN-183] Use relative paths when referring REST resources Don't use absolute paths based on the assumption that the REST API is deployed at /v1. Instead use an UriBuilder provided by JAX-RS as a context-injected UriInfo object, which should work with any root context path. Also drop the /v1 prefix from REST API tests and test fixtures. commit 96710edb0dae01a45d28a5b0d1051bc7020386c1 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-17T14:03:29Z [BROOKLYN-183] Fix usage of resources in CXF unit tests Use HTTP transport instead of local transport so we can have a ServletContext to get/setAttribute. Allow CXF to use BrooklynJacksonJsonProvider for message formatting and parsing. Inject the ManagementContext in resources and providers. Add request/response logging during tests. commit d7409839c1a76a3d3a1831241193d1499c187cb3 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-18T00:43:28Z [BROOKLYN-183] Fix some CXF REST resources and tests Various fixes after migrating to CXF commit 4c5e236c0f47494b2e9073141602db317dfcb4fc Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-19T00:10:33Z [BROOKLYN-183] Fix more CXF REST resources and tests Various fixes to either tests or resources after migrating to CXF commit 65e05701e960cbce504ffdaa27845efdbc5f1e79 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-19T00:54:49Z [BROOKLYN-183] Pull up common implementation of configureCXF All tests ended up using the same configuration of the REST API, so it makes sense to move that into the base class This had the side effect of worsening the interleaving of test methods by testng, so each resource test was separated into its own suite. commit 5c54d2cfcf97d10641f4c13a751cd0482ab00eef Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-19T01:27:12Z [BROOKLYN-183] Fix DeployBlueprintTest Also change getEndpointAddress() to use template method instead of setter/getter. commit 5b540e85d43c68c0d89fda79b1333ccb50a4d205 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-19T01:51:27Z [BROOKLYN-183] Fix SensorResourceIntegrationTest Also start working on tests from the "Integration" group commit 726643a66862447196e0d8cae3c63b7e8f7c2c08 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-30T11:47:12Z [BROOKLYN-183] Move CXF integration tests to karaf/itest Also fix remainder CXF tests, so that brooklyn-rest-resources-cxf builds correctly. commit 4a620a086f98dab8c4bbdf33a352269c19525462 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2015-12-30T21:51:25Z [BROOKLYN-183] Wait for CXF resources to start in karaf itest commit 92fd89f6571a6d69d9b464c7c09a2cd9d7132d42 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2016-01-05T05:41:36Z Merge branch 'master' into cxf commit 7972d8f3d79bd58aaba6c0f6f73a9b458d4e0ea9 Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2016-01-05T05:53:35Z [BROOKLYN-183] Update PR after repo reorganization Move cxf into brooklyn-server. Update poms commit c42595966883267012ad602053c823eb6bf8914d Author: Ciprian Ciubotariu <cheepe...@gmx.net> Date: 2016-01-12T17:40:31Z [BROOKLYN-183] Update CXF resources to match Catalog changes ---- > Get the SAAJ/SOAP handlers working > ---------------------------------- > > Key: CXF-3 > URL: https://issues.apache.org/jira/browse/CXF-3 > Project: CXF > Issue Type: Sub-task > Components: JAX-WS Runtime > Affects Versions: 2.0-M1 > Reporter: Daniel Kulp > Assignee: Daniel Kulp > Fix For: 2.0-M1 > > -- This message was sent by Atlassian JIRA (v6.3.4#6332)