cancel
Showing results for 
Search instead for 
Did you mean: 

Problem in sending XML data to XI

Former Member
0 Kudos

Hi all,

I am trying to send XML data to BW using XI. For that I am using a javaScript code. But when I press the send button it is asking for a user and password. I have given XIAPPLUSER and password. But it is not accepting it. It is showing the following error

Result:

http-Status: 401 Unauthorized

Payload:

<!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01Transitional//EN"><html><head><title>Logon Error Message</title><META http-equiv="Content-Type" content="text/html;charset=UTF-8"><style type="text/css">body { font-family:tahoma,helvetica,sans-serif;color:#333333;background-color:#FFFFFF; }td { font-family:tahoma,helvetica,sans-serif;font-size:70%;color:#333333; }h1 { font-family:tahoma,helvetica,sans-serif;font-size:160%;font-weight:bold;margin-top:15px;margin-bottom:3px;color:#003366; }h2 { font-family:verdana,helvetica,sans-serif;font-size:120%;font-style:italic;font-weight:bold;margin-top:6px;margin-bottom:6px;color:#999900; }p { font-family:tahoma,helvetica,sans-serif;color:#333333;margin-top:4px;margin-bottom:4px; }ul { font-family:tahoma,helvetica,sans-serif;color:#333333;list-style-type:square;margin-top:8px;margin-bottom:8px; }li { font-family:tahoma,helvetica,sans-serif;color:#33333;margin-top:4px; }.emphasize .note a { font-family:tahoma,helvetica,sans-serif;text-decoration:underline;color:#336699; }a:visited a:hover { text-decoration:none; }</style></head><body><table cellpadding="0" cellspacing="0" border="0" width="100%"><tr><td><h1>Logon failed</h1><br><h2>What has happened?</h2><p>Call of URL http://xiserver:8000/sap/xi/adapter_plain terminated due to error in logon data.</p></td></tr><tr><td>&nbsp;</td></tr><tr><td class="emphasize"><strong>Note</strong><br><ul><li> Logon performed in system MTX . </li><li> Logon performed for client 100, user xiappluser , and language DE. </li></ul></td></tr><tr><td>&nbsp;</td></tr><tr><td><p> &nbsp;</p><h2>What can I do?</h2><ul><li> Check that you have entered the client, user, and password correctly. </li> <li> If you do not yet have a user ID, contact your system administrator. </li></ul><br/><p class="note">Error Code: ICF-LE-http-c:100-l:D-T:1-C:3-U:35-P:3-L:3</p><br/><p> HTTP 401 - Unauthorized<br/><p>Your SAP Internet Communication Framework Team</p></td></tr></table></body></html>

Can any one figure out what is the problem.

I have checked it with XISUPER and J2EE_ADMIN also.

But I am getting the same error.

Any help will be appreciated.

Regards,

Anand

Accepted Solutions (1)

Accepted Solutions (1)

udo_martens
Active Contributor
0 Kudos

Hi Anand,

check a SAP logon to system xiserver, client 100, language DE to be shure that the user is valid and not blocked. If so, go to transaction SU02 to unlock or to give a new password.

XISUPER is a dialog user, it should be possible to logon with him.

Look to transaction SICF, node sap/xi/adapter_plain. Should be active of course. You can configure the logon procedure there, for example put a anonymous logon to avoid the logon procedure. Of course only at a test system

Regards,

Udo

Regards,

Udo

Former Member
0 Kudos

Hi Udo,

Using sicf transaction I went to adapter_plain. I double clicked on it. A browser window with url http://xiserver:8000/sap/xi/adapter_plain?sap-client=100

was opened. But it is blank. What should I do?

Regards,

Anand

udo_martens
Active Contributor
0 Kudos

Hi Anand,

i m a little confused, there should be SAP window "Create/Change a Service", where you check "Standard" and give 'Anonymous Logon Data', but only, if your dialog user check is successful. Is the SAP popup may be behind the browser window?

Which ABAP stack release of XI your are working with?

What are the results of your dialog user logon test?

Of course you can test with Run Time Workbench, but anyway your http adapter should work.

Regards,

Udo

Former Member
0 Kudos

Hi,

We are working on XI 3.0.We changed the logon procedure as standard and entered anonymous details in the create or change a service window.Dialog user logon test also returns the same error.

Regards,

Anand

udo_martens
Active Contributor
0 Kudos

Hi Anand,

what happen, if you try to logon via SAP Logon to the system? Is it possible to logon? If yes, your request program is may be not working as expectable. In this case try with XMLSpy or microsofts <a href="http://download.microsoft.com/download/d/e/5/de5351d6-4463-4cc3-a27c-3e2274263c43/wfetch.exe">wfetch</a>. I prefer this tool.

Regards,

Udo

Former Member
0 Kudos

Hi all,

Thanks for the help. Actually there was some problem with the hardcoded password. Since I clicked the send buuton in html file more than three times the user xiappluser was locked. Now I have unlocked the user and changed the password in javaScript code I am getting the following message in the result tab when I send data to BW.

Result:

http-Status: 200 Message accepted

Payload:

But when I go to BW check in transaction RSA7 there is no entry in delta queue.

Where should I check what went wrong?

Regards,

Anand

Former Member
0 Kudos

Hi,

You can monitor want went wrong in SXMB_MONI. You can use the trace and find out the exact step, what went wrong.

regards,

P.Venkat

Former Member
0 Kudos

Hi,

There is no entry in SXMB_MONI monitor. We went for message monitoring in Runtime workbench. Status was given as System Error.We are not getting detailed description of this system error. It says that SSO ticket generation is deactivated.

But when the sender file(Sender.htm) was executed, we got a message saying that Message accepted: 200.

Regards

Anand

Answers (2)

Answers (2)

stefan_grube
Active Contributor
0 Kudos

Check in the XI transaction code SICF, if service /sap/xi/adapter_plain is active.

User and password are hardcoded in the JavaScript, you should change the values directly in the code.

Is Client 100 correct?

Regards

Stefan

Former Member
0 Kudos

Hi Stefan,

I have checked it in SICF and service /sap/xi/adapter_plain is active. I have checked it with hardcoding the user and password in javaScript. Even then it is not working.

Regards,

Anand

stefan_grube
Active Contributor
0 Kudos

Hi Anand,

If you do not succeed sending data with this HTML page, I recommend using the test tool of the runtime workbench:

/people/michal.krawczyk2/blog/2005/08/25/xi-sending-a-message-without-the-use-of-an-adapter-not-possible

Regards

Stefan

Former Member
0 Kudos

Anand,

I am a little confused with how you are sending data to BW from XI. It looks like you are using a IDOC Adapter, so have you configured the BW system to recieve a IDOC from XI?

Where is the Java Script coming into picture? Could you please give us a bigger picture here?

Regards,

Ravi

Former Member
0 Kudos

HI Ravi,

I am following "How to..push data to BW from XI".

I have followed the steps given there. In that document itself a javaScript code is given to send XML data, stored in an XML file( which is on my desktop). The given purpose is to check wether XI configuration is correct or not? I am giving the javaScript code here.

<html>

<script type="text/javascript">;

<!--

function button1_onclick() {

var result = "Result: ";

var payload = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";

// escape "http://"

var senderNamespace = escape(document.MessageParameters.SenderNamespace.value);

var reqString = "http://"

reqString = reqString + document.MessageParameters.Server.value+":";

reqString = reqString + document.MessageParameters.Port.value + "/sap/xi/adapter_plain?";

reqString = reqString + "namespace=" + senderNamespace;

reqString = reqString + "&interface=" + document.MessageParameters.SenderInterface.value;

reqString = reqString + "&service=" + document.MessageParameters.SenderService.value;

reqString = reqString + "&party=" + document.MessageParameters.SenderParty.value;

reqString = reqString + "&agency=" + document.MessageParameters.SenderAgency.value;

reqString = reqString + "&scheme=" + document.MessageParameters.SenderScheme.value;

reqString = reqString + "&QOS=" + document.MessageParameters.qos.value;

reqString = reqString + "&queueid=httpclient";

reqString = reqString + "&sap-user=xiappluser&sap-password=xipass";

reqString = reqString + "&sap-client=" + document.MessageParameters.Client.value + "&sap-language=D";

var xhttp = new ActiveXObject("msxml2.xmlhttp");

xhttp.open ("POST", reqString, false);

if (document.MessageParameters.Source[0].checked == true) {

payload = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?> "+ document.MessageParameters.xmlData.value;

xhttp.send (payload);

}

else{

var xmlDoc = new ActiveXObject("microsoft.xmldom");

xmlDoc.async=false;

xmlDoc.load (document.MessageParameters.xmlFile.value);

xhttp.send (xmlDoc);

}

//result = result + "\n" + xhttp.responseText;

result = result + "\nhttp-Status: " + xhttp.status + " " + xhttp.statusText + " \nPayload:\n" + xhttp.responseText;

xhttp.close;

document.MessageParameters.response.value=result;

}

//-->

</script>

<head></head>

<body>

<h3>Client Http Adapter </h3>

<form name="MessageParameters">

<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">

<h4>Header</h4>

<tbody>

<tr>

<td width="10%"><label>Server Host</label> </td>

<td width="22%">

<!-- Change server and port here -->

<input type="text" id="host" name="Server"

value="XISERVER" size="20" /> </td>

<td width="10%"><label>Server Port</label> </td>

<td width="22%"><input type="text" id="port" name="Port" value="8000" size="10" /> </td>

</tr>

<tr>

<td width="10%">Client</td>

<td width="22%">

<!-- Change client here -->

<input type="text" id="client" name="Client"

value="100" size="3" /></td>

<td width="10%">&nbsp;</td>

<td width="22%">&nbsp;</td>

</tr>

<tr>

<td width="10%"><label>Sender Service</label> </td>

<td width="22%">

<!-- Change sender service here -->

<input type="text" id="senderService"

name="SenderService" value="XXX_000" size="40" /> </td>

<td width="10%">Quality of Service</td>

<td width="22%">

<select size="1" name="qos">

<option value="BE">Best Effort (synchronous)</option>

<option value="EO" selected>Exactly Once (asynchronous)</option>

<option value="EOIO">Exactly Once in Order</option>

</select>

</td>

</tr>

<tr>

<td width="10%"><label>Sender Interface</label> </td>

<td width="22%"><input type="text" id="senderInterface"

name="SenderInterface" value="Data_To_BW" size="40" /> </td>

<td width="10%"><label>Sender Namespace</label> </td>

<td width="22%">

<input type="text" id="senderNamespace"

name="SenderNamespace" value="http://customer.com/xi/bw"

size="40" /></td>

</tr>

</tbody>

</table>

<br>

<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">

<h4>Optional Parameters</h4>

<tbody>

<tr>

<td width="10%">Sender Party</td>

<td width="22%"><input type="text" id="senderParty" name="SenderParty"

size="40" /> </td>

</tr>

<tr>

<td width="10%">Sender Agency</td>

<td width="22%"><input type="text" id="senderAgency" name="SenderAgency"

size="40" /> </td>

<td width="10%">Sender Scheme</td>

<td width="22%"><input type="text" id="senderScheme" name="SenderScheme"

size="40" /> </td>

</tr>

</tbody>

</table>

<br>

<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">

<h4>Payload</h4>

<tbody>

<tr>

<fieldset style="padding: 2">

<td width="50%"><input type="radio" name="Source" value="Textarea" checked="checked" />Type in XML</td>

<td width="50%"><input type="radio" name="Source" value="File" />Upload File</td>

</fieldset>

</tr>

<tr>

<td width="50%"><textarea name="xmlData" rows="10" cols="60">&lt;a&gt;test&lt;/a&gt;</textarea></td>

<td width="50%"><input type="file" name="xmlFile" size="40" /> </td>

</tr>

</tbody>

</table>

<p>

<input type="button" value="Send" id="button1" name="button1" LANGUAGE="javascript" onclick="button1_onclick()" />

</p>

<hr />

<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">

<h4>Result</h4>

<tbody>

<tr>

<td width="50%"><textarea name="response" rows="5" cols="60"></textarea></td>

</tr>

</tbody>

</table>

</form>

</body>

</html>

Rgards,

Anand