Skip to Content
0

HCI Process Integration: URL-Parameter to oData-interface

May 10, 2017 at 05:02 PM

655

avatar image
Former Member

Dear Community,

I’m looking for an HCI Process Integration that:

  • takes two URL-Parameters (https Sender)
  • adds some static values
  • and sends all to an oData-interface (receiver)

Unfortunately I could not create a suitable process. The mapping-component cannot be connected directly with the http-Sender - please see warning message on the image.

Is that integration process even possible?
What kind of component can be used to create a JSON/oData structure that processes two values from the http sender (url parameter)?

Thank you, best
Peter

hci-pi.png (18.9 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Best Answer
Sriprasad Shivaram Bhat May 11, 2017 at 09:12 AM
1

Hello Peter,

Below might help you.

a) Above one which you are showing is just a warning,you can ignore it.

b) If you want to read and customize the header or parameter you can use a content modifier after start message event step.

1) HTTP Adapter configuration

2) You can create a XML by reading HTTP headers and your own custom values.

3) Create a mapping with source XML Schema of Content Modifier XML and then you can transform it and send it to target side based on your requirement.

c) To get the custom headers add below in run-time configuration.

d) This is how request from Postman [ Google Chrome Plugin Used to push HTTP messages ] Looks

Hope it helps.

Regards,

Sriprasad Shivaram Bhat


Show 4 Share
10 |10000 characters needed characters left characters exceeded
Former Member

Hello Sriprasad,

thank you - now deploying works fine.
When sending a test-request via postman I receive:

com.sap.gateway.core.ip.component.odata.exception.OsciException: com.sap.gateway.core.ip.component.odata.exception.OsciException: OK : 200 : HTTP/1.1 <html><head><title>Request Rejected</title></head><body>The requested URL was rejected. Please consult with your administrator.<br><br>Your support ID is: 10987250521983515918</body></html>
, cause: com.sap.gateway.core.ip.component.odata.exception.OsciException: OK : 200 : HTTP/1.1 <html><head><title>Request Rejected</title></head><body>The requested URL was rejected. Please consult with your administrator.<br><br>Your support ID is: 10987250521983515918</body></html>

OK : 200 -> so the connection should be fine
I can't find any further information or a reason for "Request Rejected" - do you have an idea?

Thank you once agin,
Best Peter

0

Hello Peter,

Could you please check in your target system,if any trace or audit log available which gives more error details.

Which system you are trying to connect.?

Regards,

Sriprasad Shivaram Bhat

0
Former Member

Dear Sriprasad,

we try to connect to hybris Marketing, log with: /n/IWBEP/ERROR_LOG:

Method 'IMPORTHEADERS_CREATE_ENTITY' not implemented in data provider class.

Thank you,
Best Peter

hci-pi.png (42.4 kB)
0

Hello Peters,

I don't have much expertise in SAP Hybris Marketing integration.Still you can check if there are any entities with the ImportHeaders present or not.

Also please tag the relevant Community ( May be someone from SAP Hybris Marketing can help you out) to this question get the answer more quickly.

Regards,

Sriprasad Shivaram Bhat

0
Sanjali Salian May 11, 2017 at 10:11 AM
0

Hi Peter,

To access the query parameters from an incoming request URL we can use the CamelHttpQuery [1] which is a header key in HCI,

For example,

So now we have the incoming URL param string in header 'queryParams' which can be accessed as follows,
'header.queryParams'

Although this will have the entire URL param as a single string, to modify and add static value we can write a script using the new 'queryParams' header.

Hope this helps.

Kind Regards,
Sanjali

Reference:
1. https://uacp2.hana.ondemand.com/doc/dd250f2e3c2645a8ae327e935071281e/Cloud/en-US/DevGuide_ManageIntContent_External.pdf


Show 1 Share
10 |10000 characters needed characters left characters exceeded
Former Member

Hi, using header.queryParams acquires ALL of the query parameters as a single string. Is it possible to get each separate query parameter as key value pairs?

Thank you

0