Invoking REST API using Oracle SOA Suite - web-services

Did anyone worked on calling REST webservice for sending the Json Payload information to Azure Public Cloud from Oracle SOA Suite. Can anyone guide me on how to achieve this functionality as i am new to Oracle SOA Suite.

How did you call the REST API from oracle soa suite?Oracle SOA Suite supports REST Adapter to invoke REST API.Can you please post the error if you have used REST adapter in soa suite?

Assuming that you are using the Rest Adapter and invoking it using the invoke component in the BPEL, you can modify the headers by double-clicking on the invoke component then selecting the headers tab. There you can select a header variable that you already filled with the authentication details needed.
Another option that is not recommended but will do the trick for you is to use the java embedded component in the BPEL and use it to write pure Java code to call the API.

Related

Is spring integration is suited for enterprise application integration?

We are designing a Java middleware web application, something like a ESB, such as IBM message broker or mule.
We have many Oracle EBS interfaces(soap web services), and now the salesforce CRM wants to call the EBS interfaces through the middleware application.
Slaesforce CRM calls the middleware by rest json, and the middleware calls EBS by SOAP webservice. The picture below helps you know my meanings.
We have struggled many days to design the middleware with Spring Integration. But we found it difficult to do this. We still need to generate a jar file(by CXF) for every EBS interface(each wsdl with a jar file), and call the EBS interface by the traditional web service way.
We do not want to generate the webservice client jar files for each EBS interface. Is spring integration suitable for this(no generating the jar files for each WSDL, just some configuration or not much coding)? If not, can you suggest some other product else?
Thank you very much in advance.
For the SOAP interaction Spring Integration provides the WS module which is fully based on the Spring WS project.
I don't see reason to generate something, if you just can use the Spring Integration's <int-ws:outbound-gateway> to call that Oracle ESB service.
For this purpose you just need to know which XML to build for the request and which to parse from the response.
Seems for me for this purpose it would be enough for you to know the service WSDL and investigate it from the SOAP UI.
If I were you I'd just forget the CXF when we are with Spring :-).
An API gateway is one product which can be used here. Typically, it acts as a proxy between the client and the applications, but it can also do transformation between JSON and XML, which is what would happen in a REST to SOAP conversion.
MuleESB, although not a gateway can also be used for this purpose, see this link How to convert SOAP web service to REST web service in Mule
We did this by ourselves.
We developed the middleware by ourselves with Java.
We used java with freemarker template to convert the json request to required soap envelope body. Then used apache httpclient to call the web service(oracle EBS).

how to call external webservice in salesforce APEX

I'm new to SFDC. I need to perform integration between SFDC and EBS. I have a SOAP webservice from EBS to create party,account, account site and site details.
Now i need to call this webservice in SFDC(using APEX). Can you please let me know how i can achieve this (Expecting Step by step explanation) or any document which will tell me how this can be achieved.
Salesforce provides an integrated tool called Wsdl2Apex. It can be used to create Apex classes from the WSDL to call the web service from Apex. See SOAP Services: Defining a Class from a WSDL Document, which includes step by step instructions on how to generate the Apex classes from a WSDL.
Remember that you will also need to setup a Remote Site to allow the callout to the web service URL.
There are a couple of alternatives depending on how complicated your WSDL is.
Firstly, there is also an open source version of Wsdl2Apex.
Secondly, I've created an independent tool that has increased support for various WSDL features. See Dreamforce 2014 Presentation - Improved Apex support for SOAP based web services.

How can I expose a WSDL using Mulesoft so Salesforce can call it

I'm new to the Mulesoft. Currently we have a requirement that need to use Mulesoft to expose a WSDL for Salesforce to call. When Salesforce call this web service, it will transform some account information and Mulesoft will load them to a MySQL table. Could anyone help how can I create this? Thank you!
Definitely... As Nuno said you need to use CXF component in Mule to expose your SOAP webservice.. Actually using Mule platform you can able to expose any kind of Web Service you required like (Soap,Rest) that other applications can able to read ..
Take a look into an easy way of creating the webservice and exposing the WSDL :- http://training.middlewareschool.com/mule/soap-code-first-build/
To publish a SOAP service you should use the CXF component (reference). Take a look into the documentation Publishing a SOAP API to have an ideia in how to begin your flow.
Please take some time to have a quick look into the Mule User guide, since it explains the essentials to start developing with Mule. You will need it to learn how to interact with MySQL too (Database connector).

Using the results of a RESTful web service as data in Crystal Reports

In our current project, we want to use data from a RESTful web service to populate a Crystal Report. The service is RESTful and does not expose metadata. Is it possible to bind a Crystal report to such a web serve?
I'm currently working from the assumption that I will need to build some kind of adapter if I want this scenario to work. Am I reinventing the wheel?
Have you tried the "XML and Web Services" data source?
The schema is a requirement.
If you post a dummy GET service, it would be easy to test.

Is it possible for Spring RESTful services to privde a WADL or something similar?

Situation:
We are planning to build a set of new services a long side a set of old SOAP (Spring, apache CXF) web services. Our customers are used to being able to use ?wsdl to get a wsdl describing a service and the content it will accept/return.
I'm looking at providing the new services via spring controllers and RESTful urls. However not all of a request can be handled via a RESTful url, so we still need to have a payload request and responses. I'm looking at use #RequestBody and #ResponseBody and spring's Message Converters to auto(magically) handle both XML and JSON content. The idea being to let spring do as much of the heaving lifting as possible.
The problem:
I'm trying to figure out if it's possible given the REST/Message converter concept, to be able to provide a description of a service and it's request/response data in a similar fashion to the ?wsdl request. I understand that there are WADL documents that can be generated by some systems, but they appear to be a proposel and not fully accepted yet.
Does anyone know if spring can generate WADLs or something else that I can use to allow clients to query the RESTful services data structures?
SpringMVC doesn't support WADL auto generation, mostly because it doesn't use the JSR-311 standard REST API.
I have create a blog entry with a simple WADL generation Controller in java :
Tuxgalaxy Blog Entry.
But Tomasz Nurkiewicz also provide a WADL generation Controller in scala :
nurkiewicz Blog Entry.
You could use CXF JAX-RS for your REST services since you're already using it for SOAP (you can even expose the same service as SOAP and REST with CXF), and CXF gives you the WADL that you want by adding ?_wadl&_type=xml
The following code will work with Spring REST 4x and its based on the suggested code by tuxgalaxy provided on below https://jira.spring.io/browse/SPR-8705
http://javattitude.com/2014/05/26/wadl-generator-for-spring-rest/