HTTP Receiver - Proxy
Hi,
I had to design a file----- XI -
HTTP scenario.
Say i am connect to a 3rd party with address 11.11.111.11 throgh the HTTP call.
But now i am told that a firewall wil be in place between XI and HTTP.
What does that mean ? do i still have to call the address 11.11.111.11 or some thing else ?
do i have to take any specific care in the HTTP receiver ?
Any help is highly appreciated.
Thanks,
Vignesh
Edited by: Vignesh Perumal on Nov 17, 2008 5:48 PM
Hi Vignesh
But now i am told that a firewall wil be in place between XI and HTTP.
What does that mean ? do i still have to call the address 11.11.111.11 or some thing else ?
do i have to take any specific care in the HTTP receiver ?
There is nothing specific you need to do here. Just you need to add a firewall rule that will allow PI to post to this IP.
Give a check doing a ping test to this IP. If not successful contact your network people to solve this.
May be you require HTTPS based on your company security policies. For that you need to install SSL certificate on your PI box, generated from target system and create RFC destination on XI. Use this RFC destination in receiver HTTP
Thanks
Gaurav
Similar Messages
-
PI 7.11 - Sync HTTP receiver adapter with response XML file
Hi
We have a File to HTTP scenario in which we need a sync HTTP interface. We send a file to the HTTP address and receive a XML acknowledge. As I read in this forum: sync HTTP interfaces are not possible with the "standard" HTTP adapter. So I found an entry which recommended to use the SOAP adapter instead.
I configured it:
- Do Not Use SOAP envelope
- modules: RequestResponseBeans, CallSapAdapter, ResponseOneWayBean
If i use this scenario, i get following error in the RWB - Message Display Tool:
Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.lang.NullPointerException: while trying to invoke the method com.sap.engine.interfaces.messaging.api.Message.getMessageId() of an object loaded from local variable 'message1'.
I testet this scenario using CURL and it worked properly. Should this kind of scenario work with the SOAP adapter or do I need to buy/develop an own adapter? Is in NW7.3 possible to configure sync HTTP scenarios?
Thanks in advance
MichaelHi
actually i use a simple HTTP receiver CC with the setting "XI Payload in HTTP Body" to send a XML datafile to a webpage (java servlet). This part works fine by now. But, this servlet would also send back a status information to the state of the received datafile, which I like to catch.
e.g. HTTP response from the servlet (catched using CURL):
HTTP/1.0 403 Forbidden
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.4; JBoss-4.3.0.GA (build: SVNTag=JBPAPP_4_3_0_GA date=200801031548)/Tomcat-5.5
Set-Cookie: JSESSIONID=OALHMomjR9TVgIATi8SrPQ**.ajp13_ls_1; Path=/ls
Content-Type: text/xml
Date: Tue, 06 Mar 2012 16:19:56 GMT
X-Cache: MISS from proxy.xxxx.com
Via: 1.0 proxy.xxxx.com:xxxx (http_scan/4.0.2.6.19)
Proxy-Connection: close
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE transportordersfromls [ <!ELEMENT transportordersfromls (userid, clntid, msgid, (transportorderfromls+ | error))> <!ATTLIST transportordersfromls vers CDATA #REQUIRED> <!ELEMENT userid (#PCDATA)> <!ELEMENT clntid (#PCDATA)> <!ELEMENT msgid (#PCDATA)> <!ELEMENT transportorderfromls (refid, status)> <!ELEMENT refid (#PCDATA)> <!ELEMENT status (ok | error+)> <!ELEMENT ok EMPTY> <!ELEMENT error EMPTY> <!ATTLIST error reason (XMLError | SystemNotAvailable | ApplicationError | OTHER) #REQUIRED message CDATA #REQUIRED> ]>
<transportordersfromls vers="1.0">
<userid/>
<clntid>XXXXX</clntid>
<msgid>0</msgid>
<error reason="OTHER" message="Access denied"/>
</transportordersfromls>
Michael -
Issue with HTTPS in sender soap channel: HTTP 502 Proxy error
Hi
We have a situation where we are providing the target url in SOAP receiver channel dynamically.
This is a synchronous scenario.
Whenever we use the url starting with "HTTP" it works but on using "HTTPS" we are getting the following error "HTTP 502 Proxy error"
Kindly help us resolve this issue.Hi Anurag
Have you tried to open the HTTPS url in the web browser?
Please check with 3rd party and find out whether the web service supports the HTTPS url or not.
Please check the doc below. It may help
502 Bad Gateway Error (What It Is and How To Fix It) -
Code 110 Reason Error in HTTP Receiver adapter
Hello
I am having proxy to HTTP Receiver scenario in which i am calling the target application URL through HTTP Receiver Adapter. This interface is async interface and hence i am not expecting any response from the target system.
When i execute my interface the target system receives data from XI but in SXMB_MONI it sets the status of the message as "<b>Automatic Restart</b>" with the error description as "<b>HTTP client. Code 110 reason</b>" in HTML Code area <b><SAP:Code area="PLAINHTTP_ADAPTER">ATTRIBUTE_CLIENT</SAP:Code></b>
This is causing multiple messages stuck in the queue and presently i am manually clearing all the messages.
i checked the quality of service of the incoming message which is correctly setted as <b>Exactly Once</b>.
Is there any configuration missing?
Thanks in advance.
Regards
RajeevHi Rajeev,
1.)Check in SMICM if your HTTP service is running or not.
2.)If its running fine then you can check whether your SSL certificate is configured properly or not.
Also follow the below mentioned links :
HTTP 110
HTTP Receiver Adapter -> HTTP client code 110 reason error when sending
*Pls reward with points if helpful*
Regards,
Shibani -
Parameter in HTTP receiver adapter
Hey
My requirements are:
I am sending an XML to an external system. Documentation says: "XML should be in a parameter in your request called 'xmlInput'".
How do I actually put my XML in this parameter? Does this have anything to do with the URL Parameters in comm channel configuration?
I have configured a client proxy, http receiver adapter and a communication channel in sm59 and they work OK, but it seems as I don't send the XML in this parameter.
Appreciate your help!
regards OleHey!
Thanks for your answers.
Nana, are you sure of this, that java proxy is the only way I can put the XML in a parameter? I only need to confirm this because there is no place in their documentation that this is stated explicitly, I have only been told this via their technical person...:)
I agree that this is a limitation of the receiving system, and I know that this system is not up to date as I can tell from what they are saying and their documentation.
regards Ole -
HTTPS communication using HTTP receiver adapter URL address as Address Type
Hi All,
If some one who has tried HTTPS communication using HTTP receiver adapter using URL address as Address type can you please guide me what are the steps need to be done.
Note : Address type is a parameter in HTTP adapter setup .
Regards,
ReddyHi,
Check this,
Configurations in Integration Directory
The plain HTTP adapter gives the receiver system the following specifications:
— Specifications for addressing using a URL address:
Target host, service number, and path prefix including query string:
http://<hostname:port>/<path>?<query-string>
You can identify the target host (HTTP port) of a SAP Web Application Server using
the
ICM monitor
Host and port of the HTTP proxy (optional if there is a firewall between the plain
HTTP adapter and the receiver system)
Authentication data for the receiver system.
See also: transaction Display and Maintain RFC Destinations (SM59).
— Specifications for addressing using an HTTP destination:
HTTP destination
— Parameters from the communication channel for technical routing
Content type (the entry text/XML is expected as default)
Specifies the format that the message contents (the payload) should have.
Optional header fields for the receiver-specific protocol
Attributes for the query string
1. Sender party
2. Sender service
3. Receiver Interface
4. Message ID
5. Quality of service
6. Queue ID
All attributes are selected except for the queue ID. If you do not want a value to be
transferred to the receiver, deselect it. The queue ID is only required if the quality of
service is EOIO.
Specifications for payload manipulation
XML code (default UFT-8)
Specifies the character set.
URL escaping
Presents the XML in a URL-enabled format. Special characters that could be
interpreted as control characters are replaced with escape characters (masked).
Prolog
Enhances the payload for particular servers (optional, see below).
Epilog
Enhances the payload for particular servers (optional, see below).
Enhancing the Payload
Regards
Seshagiri -
Is it possible to debug "CL_HTTP_PLAIN_OUTBOUND" FROM HTTP RECEIVER ADAPTER
Hi All,
In my PI interface the data from R/3 ( using abap proxy ) is getting posted on a external server using HTTP receiver adapter .
I assume that it triggers this class when you run the HTTP receiver adapter -CL_HTTP_PLAIN_OUTBOUND
Please let me know how can i enable debugging for triggering this class.
Please let me know the steps to debug this class by triggereing from SAP PI system ( when we run the interface on PI system )
Regards,
ReddyHi ,
i am not sure about this,i wolukd prefer developing JAVA Proxy or File Adapter . try this code it read the data from website, try in you stand alone application,it is able to read or not.
you will face two problems,you have to convert CSC file to XML it is not possible in HTTP Adapter,
import java.lang.*;
import java.util.*;
import java.net.*;
import java.io.*;
class URL2AC
public static void main(String args[]) {
try {
URL url = new URL("http://www.XXXXXXX.com/raj.txt");
URLConnection uc = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(uc.getInputStream()));
while (in.readLine()!=null)
System.out.println(in.readLine());
catch(Exception e) {
e.printStackTrace();
Regards,
Raj -
ICM_HTTP_CONNECTION_FAILED error on http receive method
Hi,
I am trying to read a XML via http. I have developed a code referencing this blog:
/people/rashid.javed/blog/2007/03/11/cricket-world-cup-http-client-and-simple-transformations
When http receive method is executed it gives me an error.
On executiong of: CALL METHOD client->receive it gives error:
code: 400 message: ICM_HTTP_CONNECTION_FAILED
I treid changing host and buf in code below both to http://www.google.com to rule out the possibility of bad url. Also tried setting time out to 500 in send method. Still no luck.
ICM trace shows following:
Thr 4864] *** WARNING => Connection request from (16/6462/1) to host: http://www.google.com/, service: 80 failed (NIEHOST_UNKNO
How do I solve this error, please give me some tips.
I was looking forum for this issue but was not able to find a solution.
Here is complete code:
DATA: client TYPE REF TO if_http_client.
DATA: host TYPE string.
* DATA: proxyh TYPE string VALUE 'IfYouHave.Proxy.com',
* proxyp TYPE string VALUE '8080'.
DATA: buff TYPE string,
respd TYPE string.
DATA: subrc TYPE sysubrc.
CALL METHOD cl_http_client=>create
EXPORTING
host = 'http://www.google.com/ig/api'
* SERVICE =
* proxy_host = proxyh
* proxy_service = proxyp
* SCHEME = SCHEMETYPE_HTTP
* SSL_ID =
* SAP_USERNAME =
* SAP_CLIENT =
IMPORTING
client = client
EXCEPTIONS
argument_not_found = 1
plugin_not_active = 2
internal_error = 3
OTHERS = 4
IF sy-subrc <> 0.
WRITE:/ ' cl_http_client=>create, subrc = ', sy-subrc.
EXIT.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
buff = 'GET'.
CALL METHOD client->request->set_header_field
EXPORTING
name = '~request_method'
value = buff.
buff = 'http://www.google.com/ig/api?weather=21218&hl=en'.
cl_http_utility=>set_request_uri( request = client->request
uri = buff ).
subrc = cl_http_utility=>get_last_error( ).
IF subrc <> 0.
WRITE: / 'Wrong URI format'.
EXIT.
ENDIF.
ENDIF.
CALL METHOD client->send
* EXPORTING
* TIMEOUT = CO_TIMEOUT_DEFAULT
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
http_invalid_timeout = 4
OTHERS = 5
IF sy-subrc <> 0.
CALL METHOD client->get_last_error
IMPORTING
code = subrc
MESSAGE = buff.
WRITE: / 'communication_error( send )',
/ 'code: ', subrc, 'message: ', buff.
EXIT.
ENDIF.
CALL METHOD client->receive
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
OTHERS = 4.
IF sy-subrc <> 0.
CALL METHOD client->get_last_error
IMPORTING
code = subrc
MESSAGE = buff.
FORMAT COLOR COL_BACKGROUND.
WRITE: / 'communication_error( receive )',
/ 'code: ', subrc, 'message: ', buff.
WRITE: / 'communication_error'.
EXIT.
ENDIF.
respd = client->response->get_cdata( ).
WRITE:/ respd.
Thanks in advance,
CD
Edited by: CD on Feb 19, 2009 1:46 PMCheck this link..
[HTTP client code 400 reason ICM_HTTP_CONNECTION_FAILED; -
Receiver Proxy Generation error
Hi Experts,
As per scenario. (file to Proxy and Proxy to file)
I am created two namspaces like this
http://SAP/XI (for SAP)
http://SAPto/MQ (for 3rd party)
for all interfaces i have to do proxy to file and file to proxy ASY. so i created
message interfaces like this.
under http://SAP/XI (for SAP)
MI_OA_ABC
MI_IA_123
http://SAPto/MQ (for 3rd party)
MI_IA_ABC
MI_OA_123
here i am given same name for inbond/outound interfaces
then i am trying to generate proxy (client) under SAP for proxy to file
I am getting bleo error
same as receiver proxy also
error:
Objects from other namesapces are missing unble to save"Hi Srinivasreddy,
U need to save & ACTIVATE the two namespaces.first check it that one.
You are working with FILE to PROXY & PROXY to FILE scenarios.
FILE to PROXY: U can create one namespace for both file & PROXY that enough.
like PROXY to file also.
Regards,
sateesh -
Hi
Im trying to configure the Citrix Mobile Receiver Proxy on a ASA but cant get it to work.
The ASA got several VPN configured, both client, clientless vpn and L2L.
It looks like ASA are terminating SSL every time the iPad connects.
What could be missing here? And any good advice on how to troubleshoot appreciated.
ASA 5585 - OS 9.1(8)
Citrix Receiver - 5.8.3
Citrix config:
group-policy DfltGrpPolicy attributes
dns-server value x.x.x.30 x.x.x.31
vpn-simultaneous-logins 10
vpn-tunnel-protocol ikev1 l2tp-ipsec
default-domain value xxx .org
webvpn
customization value DfltCustomization
vdi type citrix url http://citrix.xxx.org domain xxx.org username CSCO_WEBVPN_USERNAME password CSCO_WEBVPN_PASSWORD
From Log Viewer:I did some captures today and all I got is the outside capture with a RST,ACK back to my test client.
On the inside interface, going to the Citrix server nothing. Did check for both ASA inside IP and the Citrix server IP in diffrent ways (any->ASA, Citrix->any, etc)
Looks like ASA is not listening for, or understands, incomming Citrix traffic?
Edit:
Just saw this: Key size >1024 is not supported as of now.
All certificates on the ASA are 2048, probably the problem?
Cheers -
Assign a dynamic value to a field in HTTP receiver header without IR part
hi experts,
I am doing a scenario in which i am to add a header field in http receiver, whose value will vary for each transaction. and the value will be same as sender file name.
But this all I am to do without doing Repository part.(i.e. No message interface and no mapping)
Is it possible? If yes help me out.
"Useful effort will be appreciated"....
ThanksHi Jaideep,
Hpoe the below link will help you.
Dynamic Configuration of Some Communication Channel Parameters using Message Mapping
Regards,
Leela -
Not able to see 'Adapter specific' indicator in http receiver comm. channel
I am not seeing the Adapter Specific Message attributes indicator in http receiver adapter where one can set a dynamic URL. Anybody any idea? Thanks.
I have a fixed URL except that it should be formed with https instead of http. I guess the default http is used as there is no where in the communication channel to select https. I am able to invoke the https url through browser but through http receiver adapter, I get error 'http client code 110 reason'. I see in other blogs that this is due to https not enabled in the J2EE engine. But for outbound why should that matter? As long as the target URL is set to accept https, I should be able to sent the message as long as the URL gets formulated starting with https. If it was SOAP adapter, the entire URL can be entered so no issue, but with http adapter is there a way to specify entire URL including the https:// ? Thanks.
-
HTTP Receiver Adapter - delete ?xml version="1.0" encoding="UTF-8"?
Hi,
Is it possible to delete the part below when sending an HTTP request through HTTP receiver adapter without any java/abap/xslt mapping?
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_SELL xmlns:ns0="http://test.com/Sell">
Thanks
ArmanHi,
<?xml version="1.0" encoding="UTF-8"?>
Specifies that the given message is xml
<ns0:MT_SELL xmlns:ns0="http://test.com/Sell">
Specifies its a MessageType of the payload, without this that message is not identifies and is not processed. Its manditory to have these. Other wise error will raise.
Regards,
Prasanna -
Manipulate the URL in HTTP receiver adapter possible?
hello together,
i have an HTTP receiver adapter. To the parameters which i can tick in XI as default (sender party, sender service, ....) i want to add some parameters too.
who can i do that? i have read the weblog from william li. i tried to change the parameter link the comments at the end of the blog (see kurt rasmussen) but nothing happend..... the parameters are not available....
can somebody help me?
thanks a lot
alexhello michal,
yes, i did. i took the information from http://help.sap.com/saphelp_nw04/helpdata/en/43/64dbb0af9f30b4e10000000a11466f/content.htm and tried to put some special information to URL. nothing to see.
is it mandatory to use a mapping to fill the URL parameter fields, isn't it??
i am using a port sniffer to see the URL and the fields (parameters) in it.
thanks a lot.
alex -
HTTP Receiver interface returns with error code 110
Hi All,
We are posting the document from XI to a external server as HTTPS request.
We are able to sucessfully post the request to external server using HTTP destination as address type but not able to post sucessfully with URL as address type.
Here goes the details -
We are able to post the HTTPS request successfully on the external server using the HTTP destination as address type in HTTP receiver adapter setup.
When we setup address type as HTTP destination , we need to provide the following details -
IN SM59 , Connection type G
Target Host : host name ( with out "https://" as prefix)
Service No : 443
Path prefix : query string
SSL : Active
Certificate : Select the certifacte from the client certificate list.
We can post the request to external server using URL as address type in HTTP receiver adapter setup.
When we setup address type as URL , we need to provide the following details -
Address type : URL Address
Target Host : host name ( with out "https://" as prefix)
Service Number : 443 ( HTTPS port setup on XI)
Path : query string.
When we post the same request as we did with HTTP destination as Address type , we are getting a HTTP response code as failure HTTP response code 110
Please find the details about the return code -
If a cache returns a stale response, either because of a max-stale directive on a request, or because the cache is configured to override the expiration time of a response, the cache MUST attach a Warning header to the stale response, using Warning 110 (Response is stale).
110 Response is stale
MUST be included whenever the returned response is stale.
Please find the error message from SXMB_MONI
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="PLAINHTTP_ADAPTER">ATTRIBUTE_CLIENT</SAP:Code>
<SAP:P1>110</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>HTTP client code 110 reason</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>
Please let me know if some one has faced this issue.
Regards,
Reddy
Edited by: Nanda kishore Reddy Narapu Reddy on Mar 11, 2008 12:35 PMHi All,
Is some one can confirm that - We can use HTTPS with Address type as URL address in HTTP receiver adapter setup.
I can confirm that using HTTP destination as Address type in HTTP receiver adapter setup we can attain HTTPS communication with external server.
If some one who has tried HTTPS communication using HTTP receiver adapter using URL address as Address type can guide me what are the steps need to be done.
Address type is a parameter in HTTP adapter setup .
Regards,
Reddy
Maybe you are looking for
-
I am trying to use the T. S. operator interface I need to add pass fail and error
Hello: I am using Labview 6.1 and Test Stand 2.0 I have made some modification to a copy of the T.S. Labview operator interface. How do I get the pass/fail or error from test stand to be pass to LabView so I can tell the operator that the unit pass
-
"itunes.exe-entry point not found" error message, itunes won't launch
32 bit xp pro itunes won't launch HELP!
-
How Can I Make Title Cards Appear with Flicker Behind Them?
Hello professionals, I have a question for you, guys: I am editing a short film now which is a throwback to some old 1930's films. I keep creating the title cards but the font always looks to modern. How can I create the title cards in Final Cut P
-
I am unable to add my iPhone contacts to my icloud contacts as viewed on my Mac Pro
I am just learning about how to use the iPhone 5s and the Mac Pro and don't know how to merge my iPhone contacts and my contacts on my Mac Pro OSX 10.9.1, which are somewhat different, any ideas? I have been using I Cloud on my Mac Pro and on the iPh
-
I keep getting Server Busy Messages when opening CC programs
Ever since the latest iteration, I've been getting Server Busy messages when opening programs in the CC. They can be gotten around, but are annoying. Is this a new bug?