cancel
Showing results for 
Search instead for 
Did you mean: 

Call another Message Interface from Java Mapping

Former Member
0 Kudos

Hi Gurus!!

I have designed a Java Mapping that does a Socket Connection. Before send the response of the Java Mapping, I have to send information to our SAP System.

I have see in a blog that I can call a RFC from the Java Mapping, but my doubt is, can I call another Message Interface designed on XI?

Thanks and regards,

Manuel Míguez.

Accepted Solutions (0)

Answers (2)

Answers (2)

henrique_pinto
Active Contributor
0 Kudos

That's tricky, since the proper way of doing it would be through BPM.

Anyway, if you expose your XI interface as a WebService (Soap sender cc) you could access it through Mapping Lookup (lookup works for RFC, DB and Soap lookups). Check https://help.sap.com/javadocs/NW04S/current/pi/index.html

But be aware that Mapping Lookup API is not intended for inserts/updates (since it doesn't contain any transacational handling), just mere lookups (selects in tables), so I'm not sure it is the best approach for your case.

Regards,

Henrique.

Former Member
0 Kudos

Hi Henrique,

I have to update a table on SAP, I'm thinking to use a RFC that updates the table.

My problem is that I can´t use Java Proxies because they are not processed in parallel way, then I have to use Java Mapping to get socket connections.

Thanks and Regards,

Manuel Míguez.

Former Member
0 Kudos

HI

As per my understanding of your requirement. If you need to send the response 1 to SAP in single thread then you need to do RFC from Java Mapping.

Thanks

Gaurav

Former Member
0 Kudos

Is there another way to do a Socket Connection using XI apart from Java Proxies and Java Mapping?

prateek
Active Contributor
0 Kudos

Can you explain your end to end scenario?

Regards,

Prateek

Former Member
0 Kudos

Hi Prateek,

This is an explanation of my scenario (SAP-XI-ExternalServer).

From SAP, we send a request to XI (ABAP Proxy), on a Java Mapping we send this message to the external server using the TCP/IP protocol. The external server sends 2 responses. With the firsr response, I have to update a table on SAP, and the second response is the response of the Java Mapping, that is threated in a BPM. My problem is with the first response.

Regards,

Manuel.

Former Member
0 Kudos

why don't use BPM?

Former Member
0 Kudos

Hi Anand,

My Java Mapping is in a BPM, but I need to do the process with a Socket Connection opened and I have the socket connection opened in the Java Mapping. When the process is out of the Java Mapping I loss the control of the socket connection.

Hope have seen clear enough.

Regards,

Manuel.

henrique_pinto
Active Contributor
0 Kudos

in the same http connection you have to messages being transmitted?

Or are they in different connections?

Henrique.

Former Member
0 Kudos

Hi,

An ideal design would be redesign your output message of the Javamaping and bring all data (both response), I am sure you can get that. Then continue processing within BPM.

If that is not called for, use a JCO to call the RFC of our first response. You will lose the monitoring features here!!!.

regards

Unni

Former Member
0 Kudos

They must be transmitted on the same connection. This is my "problem".

Thanks and regards,

Manuel.