Converting SOAP to REST Responses and vice versa in APIGEE - apigee

North Bound Client can send only SOAP Request , while SOUTH Bound can Only accept REST Request and send Response as only REST
Is there any policy in apigee to convert REST to SOAP and vice versa
Please explain how to convert otherwise

When creating a new API proxy, you can use an existing WSDL to create a REST to SOAP mapping to your backend service. Hopefully that does what you are looking for.

Use Assign Message Policy.
For example:
North Bound Client SOAP Request -> Assign Message Policy To Create REST Request Payload -> South Bound Client REST Request
For more details on Assign Message policy, can refer to https://docs.apigee.com/api-platform/reference/policies/assign-message-policy.

Related

-Does InvokeHttp works slow if calling https endpoint?

i am trying to expose an REST endpoint on NIFi with the help of hanldeHttpRequest and HandleHttpResponse processor.
The Purpose of this endpoint is to fetch data from other endpoint and present fetched data as http response through hanldeHttpResponse processor.
Below screen map be helpfull for more understanding.
I want some appropriate result

How to get Http header values in Apache Camel- Jersey Rest API

I have an application which uses Apache Camel to build an API. It basically uses blueprint.xml to define routes and processing is done by a bean(please note its not any processor bean. Just a plain Java bean). It uses Jersey client to invoke the backend system Rest API.
My requirement is to get the http headers in the code to be able to send them to our custom logging system.
a) I tried #httpHeaders annotation but this does not inject the headers on my code.
b) Since its not using any BeanProcessor i dont have an Exchange object from where i can get the header values.
Please help with a way to get header values on the code.
Add the request context to your class
#Context
private HttpServletRequest request;
and get the headers in your endpoint using request.getHeader
Returns the value of the specified request header as a String.

Asynchronous JMS

I'm trying to understand OSB and i have the situation shown in figure.
JMSProducer is a Business Service that produce a message (request) that is put in RequestQueue
JMSConsumer is a proxy consume the message request
JMSReplyProducer is a Business Service JMSReplyProducer generate a response
JMSReplyConsumer is a proxy that consume the response.
I have problem to set the flow. I'm using OEPE to setup the Oracle Service BUS. I've already create a JMSProducer that send a request to JMSconsume and I let
JMSConsumer to consume the request. In JMSConsumer i have a pipeline pair and in the request pipeline a node stage with a log.
I don't understand, as shown in Figure, how to put in comunication the JMSConsumer with JMSReplyProducer and let JMSReplyCOnsume to consume the response.
Set up the queues first
The OSB cluster on the left has a proxy service (represented by the circle at the top left)
That proxy routes to a JMS-transport business service with URL pointing to RequestQueue, and Is Response Required checked, and using the default correlation ID to pull from ResponseQueue
On the cluster on the right, create a JMS-transport proxy that reads from RequestQueue, has Is Response Required checked, and outputs back to ResponseQueue. You can then fill out that proxy to do whatever you want.

B2B handling SOAP Message but there is no response

Dears,
I developed my first datapower b2b solution, it must handle soap messages, the sender is sending soap message and the b2b service must retrieve soap also.
and I did the following :
I created an external Profile ExternalParter_hub and internal Partner IntrenalPartner_hub.
I set the destination for IntrenalPartner_hub to soap web service as a back-end.
IntrenalPartner_hub I made the response type SOAP.
I created B2BGW service and i added the Profiles above and i created HTTP Front Side handler for it.
In the B2BGW service that i created , i used the Document Routing Preprocessor in Advanced tab and I set the xsl document to assign sender and reciever data.
I created MPGW service and routes to the B2BGW service.
I tested the service using soapui by calling MPGW url as endpoint,
the soapui response panel is empty and the header section tells me that everything is ok. When Opening debug probe it tells that the soap service returns success soap message...
but MPGW service doesn't recieves any response from B2BGW service!!
and B2B Transaction Viewer show that message result is success ??
what is the missing part !!!!
The B2BGW in DataPower can't return any Response data other than its own "signals", eg. AS2 MDN or ebMS receipts.
You have to either create/fetch your Response data in the MPGW "proxy" and attach that as the Result to the HTTP 200 Response from the B2BGW or use a url-open() (XSLT or GWS) in the Response (server-to-client) rule of the internal B2B partner.
So, there is no missing part, only a limitation in DataPower B2BGW...

API Endpoint Semantics

Is an API endpoint the 'method', like https://api.foursquare.com/v2/venues/ or the full URL including non-query-string parameters like https://api.foursquare.com/v2/venues/5104
In other words, are these two separate endpoints or considered the same endpoint?
http://myapi.com/somemodel/1
http://myapi.com/somemodel/2
According to this Wikipedia article, the endpoint is a web service, defined by a WSDL file, and
does nothing more than define the
address or connection point to a web
service. It is typically represented
by a simple HTTP URL string.
Microsoft uses the term endpoint in various contexts, but they all amount to the same thing: the endpoint is the entire interface, not one particular method.
In the context of a REST endpoint, the endpoint would contain the requisite GET, PUT, POST and DELETE methods (as applicable).

Resources