Vert.x Client to call SOAP(WCF)

1,222 views
Skip to first unread message

sudhir kumar

unread,
May 29, 2017, 9:13:02 AM5/29/17
to vert.x
Hi Team,


   We have requirement to build a Rest API Client that will be talk to legacy WCF service(written in .Net) that takes SOAP request and gives SOAP XML response . What would be best practise to proceed with this using Vert.x? As these service takes time to response, Is it better to use Spring Boot ? I can see a similar post where  Brian Lalor  [https://groups.google.com/forum/#!msg/vertx/nKhjVmVFdak/7lF2Z1vxxEQJ]  have suggested Spring -WS instead of Axis. 


Cheers,
Sudhir

Hòa Lê

unread,
May 30, 2017, 9:54:49 PM5/30/17
to vert.x
Dear kumar !
   I worked with SOAP in vertx. 
   I used executeBlockingto call Axis ws client
   
  vertx.executeBlocking(t->{
        //call axis here
        }, false,result->{
       
        });


Vào 20:13:02 UTC+7 Thứ Hai, ngày 29 tháng 5 năm 2017, sudhir kumar đã viết:

sudhir kumar

unread,
May 31, 2017, 1:42:04 AM5/31/17
to vert.x

Roland Tepp

unread,
May 31, 2017, 6:52:25 AM5/31/17
to vert.x
We've been in a similar situation and what we ended up with was essentially use synchronous SOAP classes generated by CXF and call them inside a executeBlocking context.

It sort of works, but it does have a huge drawback that since the call to backing SOAP service is synchronous and is using blocking http client implementation, it very quickly exhausted default open file handles limit.

Creating a completely asynchronous SOAP implementation on top of Vert.x HTTP api was way out of scope for our team/project, but I found myself wondering many times if such a library/extension to Vert.x would be a worthwile investment of time and resources...

Thomas SEGISMONT

unread,
May 31, 2017, 9:13:05 AM5/31/17
to ve...@googlegroups.com
It might be worth having a look at http://cxf.apache.org/docs/asynchronous-client-http-transport.html

You could use the async CXF client. Beware thought to wrap the CXF callbacks with runOnContext to make sure you come back on Vert.x land properly

--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/fb3db2cb-072a-4879-a696-c995c1907005%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

sudhir kumar

unread,
Jun 30, 2017, 9:23:27 AM6/30/17
to vert.x
Hi Team,

We have started consuming SOAP services using axis2 with Vertx. I am using Eclipse IDE and added addressing.mar and soapmonitor.mar to the project's java-build-path. On debugging everything works fine but when I build a shadow/fat jar, deploy that fat jar and then try to access the resource/url, I am getting "Unable to engage module : Addressing" .
I have  myService._getServiceClient.engageModule("addressing") in my code.

Looking for a help here.
Reply all
Reply to author
Forward
0 new messages