Author Message
MarcusHuang
Joined: Feb 25, 2014
Messages: 157
Offline
Hi All,

I need to be able to make a SOAP webservice call. Does anyone have an specifics on whether this is possible. Also do you think it can be accomplished with a Dynamic task?
NicholasKwiatkowski [Avatar]
Joined: Dec 13, 2013
Messages: 32
Location: East Lansing, MI
Offline
MarcusHuang wrote:Hi All,

I need to be able to make a SOAP webservice call. Does anyone have an specifics on whether this is possible. Also do you think it can be accomplished with a Dynamic task?


Engagement Designer does not have a built in WebService client, but yes, you can easily write one as a Dynamic Task. I've done it using the Apache Axis2 library to connect to some of our internal services.

Only thing to note is that by default the Breeze servers don't have any root CA certs loaded -- meaning any site you plan on connecting to, you will need to pull down their certs (including the entire chain with the root and any intermediate certs).

--------------------------- Nick Kwiatkowski Michigan State University, Telecom Systems Planning and Engineering Team Adj. Professor of Media and Information Studies
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Thanks Nick! Regarding certificates: the root should be sufficient. If you see cases where you have failures without intermediate certificates, I'd be interested in seeing logs.

Marcus, if you're not familiar with certificate administration, you can find details in our Deployment Guide:
https://www.devconnectprogram.com/site/global/products_resources/avaya_breeze/releases/3_2/docs/deploying/index.html
MarcusHuang
Joined: Feb 25, 2014
Messages: 157
Offline
Thanks for the input. Still trying to step through how this would work in my head in a manner where it would support any axis web service regardless of the # of required input parameters.

Are you guys thinking this would be a 1 to 1, meaning I would have to create a task for each specific web service i would like to consume? Also any sample code by chance available on this?
NicholasKwiatkowski [Avatar]
Joined: Dec 13, 2013
Messages: 32
Location: East Lansing, MI
Offline
JoelEzell wrote:Thanks Nick! Regarding certificates: the root should be sufficient. If you see cases where you have failures without intermediate certificates, I'd be interested in seeing logs.


Most recently, I was trying to connect with the Amazon SQS service, and it didn't like just having the root CA cert there. It was giving me a PKI Chained Trust error. I'll see if I can break my service and pull the logs for you.

--------------------------- Nick Kwiatkowski Michigan State University, Telecom Systems Planning and Engineering Team Adj. Professor of Media and Information Studies
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Thanks Nick. Marcus, regarding the task type design, I think that in general it will be easiest if you have a task type per web service you need to investigate. Others may have some alternate ideas. I don't have any sample code for you but maybe others do.
NicholasKwiatkowski [Avatar]
Joined: Dec 13, 2013
Messages: 32
Location: East Lansing, MI
Offline
MarcusHuang wrote:
Are you guys thinking this would be a 1 to 1, meaning I would have to create a task for each specific web service i would like to consume? Also any sample code by chance available on this?


The easiest way would be to do a 1:1 mapping for an Axis web service. To do this, install the WTP plugins (if they are not already installed), and use the Web Service Client tool to generate the classes for you. You then just need to wire up the Dynamic Task class to these new WTP classes and you are all set.

If you want to do it the hard, but correct (reusable) way, then you will need to instantiate the Axis2 classes by hand, and do all the hard stuff in the Dynamic Task. Most likely, you will need to accept some JSON string with a group of parameters in order to make it flexible enough to be reused (if you used this tool a few years ago when it was called the Collaboration Designer, this is what was required for most parameters).

--------------------------- Nick Kwiatkowski Michigan State University, Telecom Systems Planning and Engineering Team Adj. Professor of Media and Information Studies
MarcusHuang
Joined: Feb 25, 2014
Messages: 157
Offline
I understand the web service client tool, basically i would be importing the methods behind the wsdl, but what is WTP?
NicholasKwiatkowski [Avatar]
Joined: Dec 13, 2013
Messages: 32
Location: East Lansing, MI
Offline
MarcusHuang wrote:I understand the web service client tool, basically i would be importing the methods behind the wsdl, but what is WTP?


The WTP suite is a set of plugins for Eclipse that include the web service client tool. https://eclipse.org/webtools/.

--------------------------- Nick Kwiatkowski Michigan State University, Telecom Systems Planning and Engineering Team Adj. Professor of Media and Information Studies
MarcusHuang
Joined: Feb 25, 2014
Messages: 157
Offline
Thank you sir!
Go to:   
Mobile view