Quarkus: Extension for CXF

Created on 13 Sep 2019  Â·  50Comments  Â·  Source: quarkusio/quarkus

Describe the extension

Discuss CXF support via an extension (either partial support or full is TBD).
Interested, please +1 via the emoji/reaction feature of GitHub (top right)

Configuration suggestion

# Add your application.properties here, if applicable.
TBD

Additional context
(Add any other context about the proposal here.)

We mainly use SOAP/XML based web services driven by our insurance industry standard formats ( MISMO) . We are currently exploring using quarkus to migrate all our existing camel code .

kinextension-proposal triagwontfix

Most helpful comment

Even on a modern stack wil often deals with SOAP WS.
I think we also need a SOAP Client as it's very common to have exisitng SOAP WS that we need to interact with. So if this extension lands please inlcude a SOAP client with it.

All 50 comments

I work in banking environment where SOAP+XML is the de facto standard and still will be standard for the years to come.
CXF is the most mature/flexible jax-ws implementation today so it would be a great choice.
Please note that CXF is also a jax-rs implementation so you can have problems with resteasy (at work we use wildfly and we disable wildfly jaxrs and jaxws subsystems through jboss-deployment-structure.xml).

Thanks for creating this proposal Emmanuel . It will definitely help people working in the insurance and financial services industries who are still on SOAP web services due to existing electronic data interchanges with their B2B customers .

I start a work on it. Now I must test to see if it's do the job....

Even on a modern stack wil often deals with SOAP WS.
I think we also need a SOAP Client as it's very common to have exisitng SOAP WS that we need to interact with. So if this extension lands please inlcude a SOAP client with it.

please assign to me

Pretty interested in this extension as well. Any chance to get some traction on it?

Sorry I have too much works to continue until December.

Le ven. 1 nov. 2019 à 12:40, blaghed notifications@github.com a écrit :

Pretty interested in this extension as well. Any chance to get some
traction on it?

—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/quarkusio/quarkus/issues/4005?email_source=notifications&email_token=AABZ5G7I2XSCAOFZ26YJH63QRQIULA5CNFSM4IWODFZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEC2WM3A#issuecomment-548759148,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABZ5GZ3QORHBEZM7T7JDZDQRQIULANCNFSM4IWODFZA
.

I do not know how to ask for review.. (in PR or in issue). Anyway, now, PR test are ok and I need a full review. thanks

in PR top right corner if it's available. If not leave a comment on the PR

In regards to SOAP client mentioned above #3479 (in short no recommendation)

do we have any update on this component? We would love to use it.. would even volunteer test-driving it. cc @dufoli

@kjozsa still working on It. It is working for jvm but still need work to fix native build.
I do not know this part and do not know who can help me on that part.

Sorry if being ignorant but is this going to be a server extension, a client extension or both?

server extension

Native seems OK now. So I need test before review.

This extension could be really useful, any estimation about when could be available?

The last commit seems to be testable. So you can test the branch.

Now we wait :

  • review from core team
  • return from Quarkus core team (RedHat / IBM) to know where push and package it. They are thinking about managing extension differently. But no decision is taken so, external contributor must wait to have information/decision from them. The subject is complicated because there is lot of different kind of contributor (enterprise, user and passionate) and they have different goal and need.

It's an huge work (more then 200h) so please be patient because we do it as only passionate (we don't use quarkus in our work) and it's just to help. If your are user and paid to use quarkus don't hesitate to help / contribute / test

Server and client is supported.
You can see doc in adoc but because doc is not in guide. But you can found it under doc folder in the branch

Server and client is supported.
You can see doc in adoc but because doc is not in guide. But you can found it under doc folder in the branch

You can paste the link?

Hey @dufoli @Dufgui this seems amazing work, any plans to release an initial version of it?

This looks great, also looking forward to this extension.

Hello, sorry but no. Quarkus team change the rule during development (around 3 months, more 100 hours) and don't want it in core repository. They ask us, to publish and maintain it in a separate repo. My brother and me do it to contribute on Quarkus, not to use it, so we don't want to maintain it. So we don't do it, even if code (client and server) works. So if you want it you can take the code and put it in a repository and maintain it. So, sorry, we will not do it.

We propose this code to community without any warranty. So I let you choose the license, but my advice is it to take the same as Quarkus : Apache 2.

Have a nice day

Agree with dufgui for licensing

ok so new TODO:

  • create a repository with only extension with bom on quarkus
  • publish on maven repository (maven central ?)
  • create a cxf.json with
    {
    "group-id": "org.apache.cxf.core.extensions.quarkus",
    "artifact-id": "cxf-quarkus"
    }
  • create a pull request to https://github.com/quarkusio/quarkus-extension-catalog

@gastaldi is it the right todo to register extension outside of quarkus ?

@Dufgui this is still a work in progress (meaning that we'll document these steps properly) and our tools are not aware of it at the moment.

You'll also need to declare the released versions, as in https://github.com/gastaldi/quarkus-extension-catalog/blob/master/extensions/jsf.json
but yes, that would be the right thing to do if you want a community extension outside the platform :wink:

@Dufgui @dufoli I have been looking forward to this extension for some time. My apologies, but I wasn't 100% sure on whether you are working on getting the extension registered outside of quarkus, given the TODO list @dufoli created. I'm happy to try to take on the remaining TODO list items, but wanted to check and confirm with you first.

is this extension already available for usage? I have been exploring Quarkus as a serious option for migrating an old Java EE application and everything is great with Quarkus, but unfortunately I need to keep exposing SOAP webservices
. This extension would be indeed helpful.

@erickgr2

is this extension already available for usage?

I don't think so.

We are using CXF as a client via STSClient and JaxWsProxyFactoryBean (some time later we'll also need to provide SOAP endpoints) in JVM mode (not native) and that works without such an extension.
Having said that, me and my team are also looking forward to a proper extension.

My team and I are also looking forward to this extension, although it does work in JVM mode.

Actually I would think on using the JVM mode in the application that I would be migrating. @AmsterdamFilho have you been able to expose SOAP services by some means in Quarkus?

No, I am just consuming.

Thank you for clarifying @AmsterdamFilho and @famod. Let's see if some extension comes out soon.

I took a stab at making this available as an extension just a few days ago. I am able to both expose and consume SOAP services in JVM mode, though having some (hopefully minor) issues with native mode that I'm trying to work through.

Would greatly appreciate any help; please feel free to open issues, and/or submit PRs: https://github.com/shumonsharif/quarkus-cxf

@shumonsharif Great news, I will definitely have a look at your extension!

@shumonsharif I could test the extension and indeed I could publish a SOAP service, but I had a problem with dependency injection. Raised the issue https://github.com/shumonsharif/quarkus-cxf/issues/1 for more detail.

@shumonsharif thank you very much.

But many people wait SOAP-clent in quarkus extension, because it more important for interpraise. Alas this repo: not listed on the oficail site (https://quarkus.io/). Unfortunately, i can find it only by reading issues

@Dufgui When is this extension expected to be released? I am trying to convince Telefonica to start using Quarkus instead of Spring Boot, but they have so many legacy SOAP web services. Maybe work together with @shumonsharif to release this extension sooner?

@AmsterdamFilho you can use this. It extension is being developed and relesed there

Closing this issue since the extension already exists and is maintained in https://github.com/shumonsharif/quarkus-cxf/

Hello, I need help to fix native on
https://github.com/shumonsharif/quarkus-cxf/
Can someone use
https://cxf.apache.org/docs/java-to-wsdl.html
or
https://cxf.apache.org/docs/java-to-ws.html
to generate wrapperbean.
You can use integration-test class for that. else any other can be usefull.
Goal is to see what is generated class expected because I have generated it for native (not realtime generation possible) but I need to compare with expected generated class.

good news, I have quarkus cxf extention which work native with java 8. Huge todo remaining but it test is running !

@gsmet can it be elligible for quarkiverse ?

@dufoli definitely, we would love that! But I think @shumonsharif wanted to keep in his own repository?

@gastaldi @dufoli I'm totally open to moving to any repository that makes sense for easier and wider adoption of the library. Quarkiverse sounds like an excellent option, please let me know what it would entail to get us on there and I can take the necessary steps.

I'll get the repository ready for you to push your stuff and give you the necessary permissions. The package and groupId should be renamed to start with io.quarkiverse.cxf though

Repository created in https://github.com/quarkiverse/quarkiverse-cxf and invitation sent. Instructions are in https://github.com/quarkiverse/quarkiverse/wiki. Ping us if you have any questions.

Welcome aboard!

@gastaldi can you invit @Dufgui on repo too ? he will contribute too.

@dufoli done. You can also add other maintainers as you have the Maintainer role for the @quarkiverse/quarkiverse-cxf team

no I have no access to settings of project.
Anyway, I have fix native build in java 11. ;-)

Was this page helpful?
0 / 5 - 0 ratings