cancel
Showing results for 
Search instead for 
Did you mean: 

Additional parameters as multipart data!

Former Member
0 Kudos

Hi Experts,

Requirement: To receive data from Agile ACS, a PLM system.

Description: PLM system is sending data as a multipart document through HTTP post method. Multipart document contains the axml file, archived xml file.

Problem statement: When agile send the request to XI thru HTTP channel, the URL parameters like interface, sender service, sap-user, sap-password, etc are sent as mulptipart document.

When agile send the request to XI thru SOAP channel running in nosoap mode, again the URL parameters like channel, nosoap, sap-user, sap-password, etc are sent as mulptipart document.

Kindly a solution on how can the URL parameters coming as multipart data be used to recognize the collaboration agreements and routing logics to send the message to Integration engine.

Thanks in Advance,

Karthik

HTTP log of the request message:

POST /sap/xi/adapter_plain HTTP/1.1

user-agent: Jakarta Commons-HttpClient/3.0

host: <host>:<port>

content-length: 2753

content-type: multipart/form-data; boundary=----


314159265358979323846

-


314159265358979323846

Content-Disposition: form-data; name="adapter_plain"; filename="TO0010626713.AXML"

Content-Type: application/octet-stream; charset=ISO-8859-1

Content-Transfer-Encoding: binary

....PK.........T.:................agile.xml.TMo.0...+....l.ESW...JmA.....&.Xul.vJ..k.$...ns

...a.....k&....+y...(.P&*.ru..\..........0.....e..v3$............d.$..(......H..._..q.....u.^.......'k.X.Kc.L...........|..f.

f.Pc..~h......Nu...r...x..=..hx....~?.0V...[!..<{BM...m....@J..-....F`..b......x....i.....K..t.K.......* ......dVi..Q.q.........0VwL.....}..8...a7... ..=.@f.!.a.WB...qH1V.]...O...u....`t.\b.....@...#..pQ.0..j.`..Q>b.t...Y2a..I....J...e....4.0..%k....d.{&.%l.Q...;`../.N....\.......&.s.n.H...#.......w.q......Ft...@..0}2....u.y...X..&.....<....JI|...........V.&.......X,..x-T.\oiC.J.a.z..Mv...4...... .R..rU>Y..P.A0_...=..|.......ivYW..rTV.v.z.PK..e`..t.......PK...........T.:e`..t.........................agile.xmlPK..........7...........

.----


314159265358979323846

Content-Disposition: form-data; name="service"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

AgileToSAP

-


314159265358979323846

Content-Disposition: form-data; name="sap-password"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

init1

-


314159265358979323846

Content-Disposition: form-data; name="sap-client"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

111

-


314159265358979323846

Content-Disposition: form-data; name="QOS"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

EO

-


314159265358979323846

Content-Disposition: form-data; name="interface"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

MI_Async_Out

-


314159265358979323846

Content-Disposition: form-data; name="namespace"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

http://<host>/sap/xi/workbench/namespace

-


314159265358979323846

Content-Disposition: form-data; name="sap-user"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

user123

-


314159265358979323846

Content-Disposition: form-data; name="AgileRecordLocator"

Content-Type: text/plain; charset=US-ASCII

Content-Transfer-Encoding: 8bit

AAAt8QBcH5IAAC6TACXERQAgRTJDRUVCNDc0MjAyNDlBOEI1MkYwRkUwQjJGOUFEQUU=

-


314159265358979323846--

Accepted Solutions (1)

Accepted Solutions (1)

JoelTrinidade
Active Contributor
0 Kudos

hi Karthik,

Kindly a solution on how can the URL parameters coming as multipart data be used to recognize the collaboration agreements and routing logics to send the message to Integration engine.

Sorry dear karthik , thats not the way XI works . Directly picking up data from url and recongnizing it for collaboration agreements is quite an enterprising thought but unfortunately it does not work that way.

Regards

joel.

Answers (4)

Answers (4)

Former Member
0 Kudos

That's gr8 idea. Thank you!

In that case, Can we use the same HTTP url to send message to XI pipeline?

Can you please help me with sample URL/ sample code/ any pointers to go forward in this direction?

Thanks much,

Karthik

stefan_grube
Active Contributor
0 Kudos

You can forward the message as HTTP post to the URL of the HTTP sender adapter.

Writing a servlet and working with HTTP connection is standard Java development, the Internet is full of examples

Regards

Stefan

Former Member
0 Kudos

Thanks you, sir!

So if not by HTTP, is it possible by SOAP/ AXIS or any other adapter?

Please respond!

Thanks,

Karthik

stefan_grube
Active Contributor
0 Kudos

This is not possible.

If you cannot change the message from the 3rd party system, maybe you can write a simple servlet and deploy this on PI server.

The servlet reads and interprets the form data and calls the HTTP adapter with a URL and a message.

Regards

Stefan

Former Member
0 Kudos

Kindly help!

Former Member
0 Kudos

u2022 Are multipart HTTP calls supported?

No, you can only send one payload at a time with the Plain HTTP Adapter. The payload that is displayed as "MainDocument" in the XI monitor is the payload that is sent. Additional attachments are ignored by the adapter.

Check SAP Notes 839803 which explains the above..

Rajesh

Former Member
0 Kudos

Thank you, sir!

Can you provide some supporting document to articulate that it is not possible in XI?

Also is there any workround for this implementation?

Regards,

Karthik

Edited by: Karthik Kaveriselvan on May 5, 2009 1:42 PM