Inbound HTTP Servicelink Adaptor
Original post by Chad Menke.
I'm having some trouble getting an inbound HTTP Servicelink adaptor to work. I wasn't involved in the install or configuration of the server. How can I find the correct <rc_host>:<rc_port>/IntegrationServer/ishttplistener?channelID=<channel-id> or How can I be sure the Server and IIS is configured correctly?
I'm just trying to do a post from a web page to finish off a task.
The error I get is "IE cannot display the webpage".
Peter Lee - Siemens
10:22am, May 4
I don't believe there's any additional configuration required after the installation of the application, so if it's up and running you should be okay. I'm guessing that you were able to send an outbound message to initiate the post from the web page, which would indicate that ServiceLink is running. But this can be confirmed by clicking the "Check ServiceLink Commnication Status" link on the home tab of the ServiceLink module.
Which version of RequestCenter are you running? I think this call for 2007 and 2008 are exactly the same, but good to know just in case.
I'm also guessing you have the ServiceLink user guide based on the url you provided but just in case you don't the following info is provided in that documentation. Which is provided on newScale's technical document website, http://www.newscale.com/techdocs/. You will need to contact newScale support to get the username and password in order download material though.
<rc_host> is the newScale application server
<rc_port> is the port on which newScale is listening
<channel-id> is the channel ID which uniquely identifies the task to be affected
by the inbound message. Error 503 (Application Error) is returned to the 3rd
party system if the channelID does not apply to an ongoing task.
The channel-id is assigned when your external task is initiated and can be extracted in the outbound message which will need to be saved and feed back in the inbound message. Here's an example inbound transformation to update comments and complete the task.
<?xml version="1.0" encoding="UTF-8"?>
<message channel-id="10040532:1271857836239:-32095">
<add-comments>
<comment>Sent done action on Tue May 04 14:23:01 EDT 2010</comment>
</add-comments>
<take-action action="done">
</take-action>
</message>
Hope this helps,
Menke
11:28am, May 4
We are on version 2008.3
I'm able to outbound to a DB and write out files. I'm trying to use an HTML Post to end the task, sending back the channel-id. whan I attempt to submit all I get back is, "Page can not display" and the task is still ongoing.. So I'm assuming I don't have the URL correct..
According to my ServiceLink communication status:
it's successfull
it has a servicelink Communication URL. I'm using that URL and Port number as my <rc_host>:<rc_port> followed by "/IntegrationServer/ishttplistener?channelId=<my_channel_id>". this is all in that action property of my form tag.
when I submit my form all I get is "Internet Explorer cannot display the webpage"
What am I doing wrong?
Patti Richards - Dominion Res...
11:53am, May 4
Go to ServiceLink module in Request Center. Click on link that says "Check ServiceLink communication status" it will give you the fully qualified Communication URL. Make sure the server name is the fully qualified name. It will give you the port # that Service Link is running on. Ours is 8089.
We are using the custom HTTPIWA2 newscale HTTP Adapter, which has the nice option of it storing the channelid, so you don't have to send and worry about receiving it back.
Peter Lee - Siemens
12:09pm, May 4
In 2008.3 there is an option in the administration module to enable and disable webservices, and the default is set to Off. Check this value and see if turning it to "Yes" will fix your issue. Also not sure if RC would require a restart for that to take effect, but if your working dev i'd say try that too just in case.
Menke
12:14pm, May 4
I tried to follow the link provided by the ServiceLink module but all I get is "Cannot display the webpage" message. Does this mean my Server Admin set up IIS wrong?
Patti Richards - Dominion Res...
12:15pm, May 4
If you have access to app server in dev, I would pull the server.log file off /servicelink/log directory. You might see more information there to get a better idea what's going on.
Menke
12:18pm, May 4
WebServices is turned on..
Menke
4:09am, May 5
Thank you for your help! I got it figured out.
Patti Richards - Dominion Res...
5:51am, May 5
what was your resolution? Just curious....
Menke
6:37am, May 5
Well.. it's really stupid.. I was being blocked by the firewall... so I got the firewall rule removed.. now traffic is being logged. However my xsl sheet is erroring or I'm posting with the wrong ENCTYPE. I'm not well versed in xsl style sheets. How do you pull the channel-id from the post to use in the xsl sheet?
Menke
9:21am, May 5
I'm throwing Transformation Exception errors everytime I post. I Even cut and pasted the XSL from above into my inbound transformation. Not sure what I'm doing wrong.
Patti Richards - Dominion Res...
7:08am, May 6
Can you go into service link home - under messages pick requisition from drop down and search on the req number. Then click on the inbound message and then click on external system message and it will show you the xml.
I found a good way to work is to copy the inbound message to a file. Get XML Spy if you can- i code/debug my XSL there first to get it working. Then, I paste it into service link transformations. XML spy will let you work locally applying the xsl. Much faster development time.
If you send me (or attach) your XML- i might be able to help you with the xslt to get the channel id. I'm not an expert, but have been able to figure out enough to get the job done.
Menke
5:40am, May 7
ok I've tried to do a manual send message using the done.xml file, this fails resulting in a "invalid nsxml" message
The Transform code file contains my xsl transformation and the resulting log entries from the server.
HELP!
transformcodeandlogfiles.txt Done.xml
Allen C
11:13am, May 10
The error message you are getting :
"2010-05-07 07:37:16,130 ERROR [STDERR] SystemId Unknown; Line #1; Column #1; Content is not allowed in prolog."
Seems to imply that there may be an invisible character that is being passed in the XML being sent out. The fact that Line 1, Column 1 would appears to be the "<" character in your done.xml file, but I would double-check your transform code to make sure that nothing is being placed before the character. Even a space will probably cause the XML to be invalidated. There are strict rules for processing the first line (the xml declaration) of an xml file.
You might want to review the actual xml file output in an editor like notepad ++ (which is free) or some editor which will show ALL character in a file (even MS Word has an option to do this), just to make sure that nothing is appearing before the "<" character. Also, verify that the ASCII representative value of the less than character is correct. Some characters may look like the less than symbol but could actually be some other UTF-8 representation. The correct ASCII or UTF-8 value for less than sign is:
Unicode: U+003C
UTF-8 (in hex): 3c
ASCII (in decimal): 60
Patti Richards - Dominion Res...
1:51pm, May 10
Hey, I took your done.xml, imported it into my XML Spy. Applied the newscale schema against it and it validated. (nsxml.xsd). I also applied the XSL against it, and I got no errors. I don't think the problem is with that code.
Just for grins, i called the URL via passed it a channelId of a message that had failed.
In our logs, i got a similar message: (but not the prolog stuff)
2010-05-10 17:39:02,785 ERROR [STDERR] SystemId Unknown; Line #-1; Column #-1; Premature end of file.
2010-05-10 17:39:02,785 ERROR [com.newscale.is.core.MessageExecutor] Exception Occured :-Premature end of file.
org.xml.sax.SAXParseException: Premature end of file.
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
etc.
If you have YES hours, I would post the question to newscale.
Menke
4:12am, May 11
Thanks guys! Your right my xsl amd xml were correct. My problem was the Post. I created a javascript function;
function submitInfo(){
var httpobj = new activexobject("microsort.xmlhttp);
httpobj = ("Post","http://<Server>:<port>/integrationServer/ishttplistener?channelId=<channel-id>",false);
var strxml = "<?xml version='1.0' encoding='utf-8'?><message channel-id='<channel-id'><add-comments><comment>blah blah blah</comment></add-comments><take-action action='done'/></message>"
httpobj.send(strxml);
Worked like a charm. Sent in the xml message so there is no need for a Tranformation on the inbound. Plus we can dynamicaly build the xml message.
Thank you from looking into this for me though.
I'm having some trouble getting an inbound HTTP Servicelink adaptor to work. I wasn't involved in the install or configuration of the server. How can I find the correct <rc_host>:<rc_port>/IntegrationServer/ishttplistener?channelID=<channel-id> or How can I be sure the Server and IIS is configured correctly? I'm just trying to do a post from a web page to finish off a task. The error I get is "IE cannot display the webpage".
Hi Kiran,
You are talking about saving a file in the target director using HTTP Receiver adapter... As per my knowledge it is not possible in a straight fwd. The target should be a web application (obviously) which should recieve the data/xml that HTTP adapter is sending and then should save it in the respective directory. XI HTTP adapter will not do that job for sure. When you use HTTP adapter in XI its job is to deliver the message to the given URL thats it. If XI need to save it as a file then its thru File NFS/FTP.
FYI :
HTTP - Hyper Text Transfer Protocol
This can carry only texts but not a file
FTP - File Transfer Protocol
This is used for transfering files.
If HTTP is mandatory in your scenarion, then then a wep programming to be done at the target end (ASP/ASP.NET/JSP/Servlets/etc..)
Thanks,
Prakash
Similar Messages
-
Removing HTTP header field DOCTYPE in inbound HTTP
Hello,
For an inbound HTTP message we need to remove the !DOCTYPE tag from the message since XI message mapping cannot handle it.
We had a similar issue with outbound http where we used an xslt mapping to include the DOCTYPE.
I think it should be possible to also remove the doctype with xslt, in fact I have an xslt that works in xmlspy on the inbound http message, but after deploying in XI the mapping step fails.
The xslt is small but working:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:template match="/">
<xsl:copy-of select="." />
</xsl:template>
</xsl:stylesheet>
When I test the interface mapping it gives a transformer exception.
When i test the finished product I see the following in the monitor:
com/sap/xi/tf/_IF021_Ordrsp_TD_to_Ordrsp_CCS_com.sap.aii.utilxi.misc.api.BaseRuntimeExceptionFailed to load resource from the context classloa~
Since mapping works in external tools I'm not sure what the problem is for XI and how to solve it.
Another solution for this would seem to be a java mapping although i have no clue as to how to do this.
How to proceed?
Thanks
Tomupdate:
The solution lies in note 812966 which describes the problem above, and also gives an example java mapping program as example to get rid the DOCTYPE.
Regards
Tom -
Hi all,
I am using HTTP receiver adaptor to connect to an external system.Here I have to pass an Idoc from SAP to one folder in the target host where the application is installed.
My question is without using FTP adaptor(only with HTTP) can i send this Idoc to The folder in the target?
If yes , What should i give the "path" field in Receiver HTTP adapter? I tried giving the folder name, but it was throwign an error 400.
I created connection G in XI.I put some xml file (KK.xml) as path there and tested the connection it was working fine. Could you please help me out with this?
Thanks
KiranHi Kiran,
You are talking about saving a file in the target director using HTTP Receiver adapter... As per my knowledge it is not possible in a straight fwd. The target should be a web application (obviously) which should recieve the data/xml that HTTP adapter is sending and then should save it in the respective directory. XI HTTP adapter will not do that job for sure. When you use HTTP adapter in XI its job is to deliver the message to the given URL thats it. If XI need to save it as a file then its thru File NFS/FTP.
FYI :
HTTP - Hyper Text Transfer Protocol
This can carry only texts but not a file
FTP - File Transfer Protocol
This is used for transfering files.
If HTTP is mandatory in your scenarion, then then a wep programming to be done at the target end (ASP/ASP.NET/JSP/Servlets/etc..)
Thanks,
Prakash -
HTTP Receiver adaptor and query string posting
What woudl be the configuration of HTTP receiver adaptor in this kind of situation. I added some strings to the Prologue section of the receiver adapter but does not seem to work.
http://help.sap.com/saphelp_erp2005/helpdata/en/44/79973cc73af456e10000000a114084/content.htm
I just need to ge the XML body in cmxl = {whole xml body}
does not work..any help would be highly appreciatedHi,
Pls try this...
the value in the prologue field should be...
prologue : "field1=val1&field2=val2&cxml="
the http body is created by appending prologue with the xml payload and the epilog(if present)...
also pls make sure that the content-type set in the adapter is correct for your scenario...for example "application/x-www-form-urlencoded" would be the appropriate type for a normal html form post using http.
Thanks & Regards,
Renjith -
OSB inbound http webservice integration with OAM
Hi,
I have a requirment where I need to protect OSB inbound http webservice with OAM. So that OAM can fetch the user details from webservice SOAP header & authenticate the user against LDAP.
Can someone tell me if this is a feasible approach. If yes, please share the details as to what configuration changes need to be done at OAM & OSB end.
If not, is there any alternative approach to secure webservice with OAM.
This webservice is not called from any web application. External sources dirctly make a call to this webservice through some java client.The solution to this issue is to put following line in mod_wl_ohs.conf file
MatchExpression /imaging WebLogicHost=test-ipm.atfoods.com|WebLogicPort=16000
The complete element will look like this.
<IfModule weblogic_module>
WebLogicHost test-ipm.atfoods.com
WebLogicPort 7001
Debug ALL
WLLogFile e:/logs/weblogic_ohs.log
MatchExpression /imaging WebLogicHost=test-ipm.domain.com|WebLogicPort=16000
</IfModule>
<Location /imaging>
SetHandler weblogic-handler
WebLogicHost 192.168.140.74
WeblogicPort 16000
Debug ALL
WLLogFile f:/log/wlipm.log
</Location>
Make sure that you use IP for Weblogic host in 2nd element and not the host name.
Thanks & Regards,
Vikrant Korde -
SRP547W inbound http/ssh & NAT, plus DNS issues
Hi,
I've just upgraded to one of these and everything appears to be working ok - except inbound http & ssh. I have two connections to the internet using the WAN interface and ADSL2. I have load balancing enabled and some rules to route outgoing traffic one way or the other. Incoming smtp, voip etc work fine.
For the life of me can't work out why http is not working (and ssh as well). After a long period of time I get a "Timeout on gateway" message in the browser.
As an aside the Policy Routing won't allow me to save a port or port range. When I save the page, it sets the port to "0". Ideally I only want to route smtp and voip traffic over ADSL and have everything else go through the WAN connection.
Firmware Version:
1.02.01 (023) Aug 12 2011
ADSL Firmware Version:
0.72.0
Thanks,
Brendon.I have also discovered another issue with DNS. My mail server now takes ~60 seconds to reply to an initial connection, eg
# telnet my.mail.server 25
Trying 1xx.2xx.2xx.2xx...
Connected to
my.mail.server.
Escape character is '^]'.
>>>> ONE MINUTE DELAY <<<<
220 my.mail.server - Welcome to Qmail Toaster Ver. 1.3 SMTP Server ESMTP
The mail server was configured to use the SRP's DNS. When I edited resolv.conf on that server and changed it to use the google public DNS, connection was almost instant. I believe the issue was to do with name resolution when interrogating the DNSBL blacklists.
I can't believe:
a) I'm having so many basic problems with this router
b) Noone has responded ?!
I bought a Cisco because I mistakenly thought it was the best around. A "business class" product. -
415 Unsupported Media Type - Inbound HTTP request
Hi All,
mY scanario is
HTTP Request --> XI ---> FTP ( Without any IR objects..Just a file transfer )
Whenever our partner is trying to post a file pI, they are gettig 415 unsupported type. They are using content type as application/text and we tried with as text/xml as well. No luck.
Please adviiceRajesh,
The error definitely says request sent by the client especially the content-type header is not a valid one. Check this trace and ask them to change accordingly:
http://help.sap.com/saphelp_nw04/helpdata/en/8f/2f2c4142aef623e10000000a155106/content.htm
Regards,
---Satish -
Hi All,
I am working on EDI scenario in which EDI partner has given one HTTP site address with user name and password. I will have to put EDI file at that site using http/soap adaptors at receiver end.
One thing I know for sure that I can not use File channel at reveiver side as there is no FTP available. Now Can anybody please let me know how to generate file using http connection?
I have absolutely no idea how to use http and soap adaptors so if any links to the blogs will also be helpful.
Thanks in advance,
AtulHi Aamir,
Thanks for your reply.
I just want to generate a file at given location. I am confused what is the difference in data sent as a payload or as attachment?
As you said in case of attachement we need to use some modules(Looks bit difficult ) I would perhaps like to generate file by using Payload .
Can you suggest some blog for the same?
Thanks and Regards,
Atul -
Which Adaptor is appropriate please suggest
Hi All,
I have the following scenario and want your suggestions:
A web based applicaiton (say A) to create customer need to integrate with another web based applicaiton (say B) which uses the customer details to display of Applicaiton A... wondering do I need to go for SOAP adaptor/HTTP adaptor or do I need to integrate these two applicaitons at data base level using JDBC adaptor?
What are the steps/any documentation to get the data from web site to SAP PI when User clicks submit button?
Please suggest.
Thanks
Rajeev>>> but my questtion is what needs to be done at Applicaiton A side to create Input and post the data in the SAP PI URL... As they are using the web client provided by the Application provider..Do they have to write code at the submit button of the web page? If so they have to customnise the code delivered by the provider? How it works.. Its been first time going through this...
Yes, if you create webservice by creating soap sender and give WSDL, then they will have to write webservice client program in java or any language to access your webservice. This program will be called in their side at the time of hitting submit button of the web page.
For this you have to go through soap sender sdn documents.
or As I already mentioned, create HTTP sender and provide your payload structure and url as we discussed in the above replies. A has to create coding to post HTTP using the url during submit hit button on their web page.
>>Do they pass all the values in the URL or to the URL?
This is client A's problem. Why do you worry? There are plenty of documents to do http post.. The below coding is simple snippet..
Search google for plenty of documents...
try {
// Construct data
String data = URLEncoder.encode("key1", "UTF-8") + "=" + URLEncoder.encode("value1", "UTF-8");
data += "&" + URLEncoder.encode("key2", "UTF-8") + "=" + URLEncoder.encode("value2", "UTF-8");
// Send data
URL url = new URL("http://hostname:80/cgi");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data);
wr.flush();
// Get the response
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = rd.readLine()) != null) {
// Process line...
wr.close();
rd.close();
} catch (Exception e) {
>>Is it possible to use SOAP adaptor instead of HTTP adaptor? so that I can use AAE in the entire scenario. Applicaiton A is a web client interface through which Customers are created.If I need to use HTTP Adaptor, do I need to create HTTP Sender Adaptor and sender Aggrement ?
Yes, if you host webservice using soap sender adaptor. Already answered above ...
>> If I need to use HTTP Adaptor, do I need to create HTTP Sender Adaptor and sender Aggrement ?
no. Http adaptor is in abap stack. so you dont need sender agreement. -
Proxy Business service http request to webapp
I have a webapp deployed to my appserver and have coupled that up to a Business service in my OSB
In the Business service Test panel I can verify that my http request to my webapp operates correctly
I need to configure several Proxy services which will translate into HTTP requests being issued by my Business service
Can someone point me to an example of how this might be setup
ThanksHi
No matter what I try I can't seem to get my outbound variable modified so that the right info is sent to my busiiness service
my Proxy service is an inbound HTTP request, so I read/process the
$inbound/ctx:transport/ctx:request/http:query-string
to suit my business service
my Business service is another HTTP interface
I can't seem to modify the $outbound variable so that it includes a ctx:transport/ctx:request/http:query-string
any help greatly appreciated -
I need to filter inbound HTTP requests <outside> to <dmz> headed to www.XYZ.com/XXX/admin/XXX.jsp.
My regex is: regex HACKBLOCK "*/admin/.*\.jsp*"
My class-maps are:
class-map type regex match-any HACKBLOCK_METHOD
match regex GET
class-map XXXXTWBLOCK
match access-list HACKBLOCK_HOSTS
class-map type regex match-any HACKBLOCK_URL
match regex HACKBLOCK
class-map type inspect http match-all HACKBLOCK_FILTER
match request uri regex class HACKBLOCK_URL
class-map inspection_default
match default-inspection-traffic
My policy-maps are:
policy-map type inspect http HACKBLOCK_HTTP
parameters
class HACKBLOCK_FILTER
log
policy-map global_policy
class inspection_default
inspect ftp
inspect h323 h225
inspect netbios
inspect rsh
inspect rtsp
inspect sip
inspect skinny
inspect sqlnet
inspect sunrpc
inspect tftp
inspect xdmcp
inspect dns
inspect h323 ras
class XXXXTWBLOCK
inspect http HACKBLOCK_HTTP
policy-map OUTSIDE
class XXXXTWBLOCK
inspect http HACKBLOCK_HTTP
class class-default
policy-map type inspect dns migrated_dns_map_1
parameters
message-length maximum 1200
As you can see, I added the inspection rule to a seperate class name ENPROTWBLOCK. This matches traffic based on destination of our class C. I see that I am matching traffic in the ACL, but no matches on the HTTP inspection rule:
#sh service-pol inspec http
Global policy:
Service-policy: global_policy
Class-map: inspection_default
Class-map: XXXXTWBLOCK
Inspect: http HACKBLOCK_HTTP, packet 745097, drop 0, reset-drop 0
protocol violations
packet 34206
class HACKBLOCK_FILTER
log, packet 0
enp-amer-clt-pix525-a#
I am generating bogus traffic to http://www.<ourdomain>.com/admin/test.jsp
Any idea whats going on here and why I am not macthing the HTTP uri's ????
Thanks,
Matthias CCIE# 28445I get hits on the ACL. The issue is that the HTTP inspection does not seem to function. Just for my own understanding, the global policy will match inbound traffic arriving on the outside interface right ?
access-list HACKBLOCK_HOSTS line 1 extended permit ip any 66.192.168.0 255.255.255.0 (hitcnt=65138) 0x6402ac20
enp-amer-clt-pix525-a# sh access-list HACKBLOCK_HOSTS
access-list HACKBLOCK_HOSTS; 1 elements
access-list HACKBLOCK_HOSTS line 1 extended permit ip any 66.192.168.0 255.255.255.0 (hitcnt=65245) 0x6402ac20
enp-amer-clt-pix525-a# sh access-list HACKBLOCK_HOSTS
access-list HACKBLOCK_HOSTS; 1 elements
access-list HACKBLOCK_HOSTS line 1 extended permit ip any 66.192.168.0 255.255.255.0 (hitcnt=65285) 0x6402ac20 -
XI http-adapter; http-post test tool?
Hi All
We have following scenario: system A sends data to R/3 through XI, XI's inbound adapter is type http (Syst A -> XI 3.0 -> R/3).
Now we need to test the XI's inbound http-adpater.
Does anyone have some experience with a tool that can send xml-document to XI using http-post or HTML code for this?
Many Thanks,
SamiHi Sami,
Make sure you have activated the plain http adapter.
1.Edit the HTML code below to change the Hostnames (Radio buttons)/Port numbers to suit your needs.
2.On selection of radio button you will get the hostname and portnumber populated automatically.
3.supply the values for sender business system, sender interface and sender namespace and QoS.
4.Copy and paste the XML in the text area.(make sure you delete the detault tab spaces in the text area) or you can select the file from the file system.
5.Click Send XML button
<html>
<head>
<title>Send XML Data to XI System</title>
<script language="javascript">
<!--
function SendData() {
var mypath = document.myform.filename.value;
var myescns = escape(document.myform.mynamespace.value);
var mycall = 'http://'
+ document.myform.myhost.value + ':'
+ document.myform.myport.value + '/sap/xi/adapter_plain?bs='
+ document.myform.mysystem.value + '&namespace='
+ myescns + '&interface='
+ document.myform.myinterface.value + '&qos='
+ document.myform.myqos.value;
var xmlstream;
if (document.myform.selectXML[0].checked == true) {
xmlstream = new ActiveXObject("ADODB.Stream");
xmlstream.Mode = 3; // 1=read 3=read/write
xmlstream.Open();
xmlstream.Type = 1; // 1=adTypeBinary 2=adTypeText
xmlstream.LoadFromFile(mypath);
else {
xmlstream = document.myform.xmltext.value;
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("POST",mycall,false);
xmlhttp.setRequestHeader("Content-Length",xmlstream.Size);
xmlhttp.setRequestHeader("Content-Type","text/xml");
if (document.myform.selectXML[0].checked == true) {
xmlhttp.send(xmlstream.Read(xmlstream.Size));
else {
xmlhttp.send(xmlstream);
XICall.innerText = mycall;
XIAnswer.innerHTML = xmlhttp.responseText;
function getFile() {
var mypath = document.myform.filename.value;
var ForReading = 1;
objFSO = new ActiveXObject("Scripting.FileSystemObject");
objTextFile = objFSO.OpenTextFile(mypath, ForReading);
var filearray = "";
for(var n=0;!objTextFile.AtEndOfStream;n++) {
sRead = objTextFile.ReadLine();
filearray += sRead + "n";
objTextFile.Close();
document.myform.xmltext.value = filearray;
function setDefaults(n) {
switch(n) {
default:
document.myform.filename.value = "";
document.myform.myhost.value = "";
document.myform.myport.value = "";
document.myform.mysystem.value="";
document.myform.mynamespace.value="";
document.myform.myinterface.value="";
document.myform.myqos.value="EO";
break;
function setHost(n) {
switch(n) {
case 1:
document.myform.myhost.value = "yourhostname1";
document.myform.myport.value = "8080";
break;
case 2:
document.myform.myhost.value = "yourhostname2";
document.myform.myport.value = "8000";
break;
case 3:
document.myform.myhost.value = "yourhostname3";
document.myform.myport.value = "8000";
break;
default:
document.myform.myhost.value = "";
document.myform.myport.value = "";
function setNamespace(n) {
switch(n) {
case 1:
document.myform.mynamespace.value = "urn:sap-com:document:sap:rfc:functions";
break;
case 2:
document.myform.mynamespace.value = "urn:sap-com:document:sap:idoc:messages";
break;
default:
document.myform.mynamespace.value = "";
//-->
</script>
</head>
<body>
<form name="myform">
<p>XI adapter parameters: </p>
<!--
<input type="radio" name="selectDefaults" value="" onClick="setDefaults(1)">XR3 Test PO
<input type="radio" name="selectDefaults" value="" onClick="setDefaults(2)">XR3 Test Vendor
<input type="radio" name="selectDefaults" value="" onClick="setDefaults(9)" checked>None
-->
<p>
<table border=0>
<tr><td>hostname:</td><td>
<input type="text" name="myhost" size=50 maxlength=100
value=""><br/></td></tr>
<tr><td></td>
<td>
<input type="radio" name="selectHost" value="" onClick="setHost(1)">XI1
<input type="radio" name="selectHost" value="" onClick="setHost(2)">XI2
<input type="radio" name="selectHost" value="" onClick="setHost(3)">XD3
<input type="radio" name="selectHost" value="" onClick="setHost(9)" checked>Other
</td></tr>
<tr><td>port:</td><td>
<input type="text" name="myport" size=50 maxlength=100
value=""><br/></td></tr>
<tr><td>sender business system:</td><td>
<input type="text" name="mysystem" size=50 maxlength=100
value=""><br/></td></tr>
<tr><td>sender interface:</td><td>
<input type="text" name="myinterface" size=50 maxlength=100
value=""><br/></td></tr>
<tr><td>sender namespace:</td><td>
<input type="text" name="mynamespace" size=50 maxlength=100
value=""></td>
</tr>
<tr><td></td>
<td>
<input type="radio" name="selectNamespace" value="" onClick="setNamespace(1)">RFC
<input type="radio" name="selectNamespace" value="" onClick="setNamespace(2)">IDoc
<input type="radio" name="selectNamespace" value="" onClick="setNamespace(3)" checked>Other
</td></tr>
<tr><td>quality of service (EO/BE):</td><td>
<select name="myqos">
<option value="BE" selected>Best Effort</option>
<option value="EO" >Exactly Once</option>
</select>
<br/></td></tr></table>
<p></p>
<input type="button" value="Send XML File" onclick="return SendData()">
<p>XML Text:
<table>
<tr>
<td><input type="radio" name="selectXML" value="1">from File</td>
<td><input type="radio" name="selectXML" value="2" checked>from Text</td>
</tr>
<tr valign="top">
<td>
Path to XML file: (e.g. C:temptest.xml)
<br><input type="file" name="filename" size=30 maxlength=80 value="" onChange="return getFile()">
</td>
<td>
Text for XML:
<br><textarea name="xmltext" cols="50" rows="20" wrap="off">
</textarea>
</td>
</tr>
</table>
<p>XI call:</p>
<div id=XICall></div>
<p>Answer:</p>
<div id=XIAnswer></div>
</form>
</body>
</html>
Regards,
Sridhar
Message was edited by: Sridhar Rajan Natarajan -
Hello,
We are sending out an HL7 ADT A01 and receiving a generic ACK back. The problem is the incoming ACK always throws an exception:
HC-50547: Document support for doc ACK-2.3.1-INBOUND not found for endpoint <TP>
This is using the healthcare console which generates b2b agreements. My document type was actually ACK_01 but I renamed it to "ACK-2.3.1-INBOUND" as for some reason the engine was looking for that hard coded name. But then I got a different error ": Agreement not found for trading partners: FromTP <>, ToTP <> with document type ACK-2.3.1-INBOUND."
I found a relevant document for 10g B2b here for configuring generic ACK for inbound:
http://www.oracle.com/technetwork/testcontent/b2b-tn-020-hl7-adv-features-129310.pdf
Unfortunately I could not delete the 'Event Type' field in the 11g doc editor (field gets greyed out). Is there an equivalent 11g document on how to set this up?
thanks,
edYou are receiving ACK not ACK_A01 so you need to make the changes in the ecs/xsd files.
Document editor steps are same. You can follow the same steps and remove the event type from the ACK_A01 ecs files.
Using generated ACK, Create a ACK document-type and use the same in Endpoint.
Another way is preseeded doc. Healthcare SOA Suite comes with preseeded document. In that, ACK document is already available.
Just, you need to add ACK doctype in the Endpoint. -
Customize the HTTP RECEIVER URL
Hi all,
With AS2, all inbound messages are received at the following URL /b2b/httpReceiver.
Is it possible to customize this URL ?
Thanks in advance.
SebastienHi Sebastien,
All the inbound http msgs can be received via following two URLs.
/b2b/httpReceiver
/b2b/transportServlet
If you have a specific use case, please raise an SR or talk to our PM KrishnaPrem ([email protected]) -
WS Policy error while invoking a webservice
Hi All,
I am able to sucessfully invoke a SOA webservice with WS security policy 'oracle/wss_http_token_service_policy' enabled.
But when I call a SOA webservice which inturn calls another SOA webservice(with both having the above WS policy),
the security header is not passed and hence authentication fails with error 'Unable to access WSDL'
The components i am using in my composites are Mediator, BPEL , DBadapter.
Kindly advice.
regds,
Varun
Edited by: Varun V. Iyer on 04-Feb-2013 03:47Hi Kulwant !
Check this out:
Removing HTTP header field DOCTYPE in inbound HTTP
Regards,
Matias
ps: please award points if helpful
Maybe you are looking for
-
Serialized install of Presenter 10 32-bit on Windows 7 64-bit with Office 2013 32-bit fails
I used Creative Cloud Packager to create a serialized install of Presenter 10 32-bit for use on Windows 7 64-bit that have Office 2013 32-bit installed. The package created fine, but when I run the setup.exe that CPP generated, the progress bar moves
-
Specify File Encoding(Japanese Characters) for UTL_FILE in Oracle 10g
Hi All, I am creating a text file using the UTL_FILE package. The database is Oracle 10G and the charset of DB is UTF-8. The file is created on the DB Server machine itself which is a Windows 2003 machine with Japanese OS. Further, some tables contai
-
I was looking into buy a classic ipod but dosen't the video out put only work through the bottom of the ipod and i heard on the video cable to the new ipod instead of the cable having a yellow end it has a blue end for video my tv's only have a yello
-
Hi All, I have to change the tax jurisdiction code of ship to party to Tax Jusrisdiction code of Ship from Party (Delivering Plant). How can I achieve this using BAPI_SALESORDER_CHANGE. Please give some inputs. Regards, Shankar
-
Default value for af:richTextEditor
Hi Whenever nothing is written in af:richTextEditor null is displyed on screen. Is there any way to specify, black space or any default value if nothing is entered in af:richTextEditor. I tried doing it with required="true immediate="true" but in my