cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP to RFC Scenario in PI 7.5

Former Member
0 Kudos

Hi Experts,

Working on PI Migration, as part of testing SOAP to RFC scenario, we are facing below issue

When we trigger the request data, at response side we are getting below error.

Can you please throw some light on this.

Thanks,

--Sai

<script>

  var inPortalScript = false

  var webpath = "/logon_ui_resources/"

</script>

<html>

<head>

<BASE target="_self">

<link rel=stylesheet href="https://answers.sap.com/logon_ui_resources/css/ur/ur_ie5.css">

<title>User Management, SAP AG</title>

<script language="javascript">

var originWindowName=window.name;

window.name="logonAppPage";

function restoreWindow() {

try{

window.name=originWindowName;

} catch(ex){}

}

</script>

<script language="JavaScript">

function putFocus(formInst, elementInst) {

  if (document.forms.length > 0) {

    document.forms[formInst].elements[elementInst].focus();

  }

}

function setFocusToFirstField() {

myform = document.changePasswordForm;

try{

   for (i=0; i<myform.length; i++) {

    elem = myform.elements[i];

    if (!elem.disabled) {

      elemType = elem.type;

      if (elemType=="text" || elemType=="password") {

       if (!elem.readOnly && elem.value=="") {

          elem.focus();

          break;

       }

      }

      if (elemType=="select-one" || elemType=="select-multiple" || elemType=="checkbox" || elemType=="radio") {

        elem.focus();

        break;

      }

    }

   }

} catch(ex){

}

}

function onClickCancel() {

  document.changePasswordForm.j_sap_password.value="";

  document.changePasswordForm.j_sap_again.value="";

  document.changePasswordForm.cancelPasswordChange.value="on";

}

</script>

</head>

<body class="urBdyStd" bgcolor="#F7F9FB" onLoad="setFocusToFirstField()" onUnload="restoreWindow()">

<script language="JavaScript">

var blockPage = false;

</script>

<script language="JavaScript">

function writeMessage() {

  document.write("<h2>An unexpected problem has occurred. Please contact your system administrator and show them this message.</h2>");

}

if (blockPage) {

  writeMessage();

  // According to the tests:

  // IE works with document.execCommand() and throws exception if window.stop() is used

  // Firefox and Chrome work only with window.stop() but do not throw exception if document.execCommand() is used.

  // For IE 11 the appName object below no longer contains Explorer as the previous versions did. So the following solution no longer works for IE11:

  //var browserName = navigator.appName;

  //if (browserName.indexOf("Explorer") > -1) {

  // writeMessage();

  // document.execCommand("Stop");

  //} else {

  // writeMessage();

  // window.stop();

  //}

  // Detecting the browser based on appName or another navigator object is not very trustworthy and future proof. Hopefully a longer lasting solution is:

  try {

  window.stop();

  //document.write("<h2>window.stop() success!</h2>"); //Actually this line could never be printed as FF and Chrome will stop on previous line

  } catch (error) {

  //document.write("<h2>window.stop() did not work. Exception is: "+error+".</h2>");

  try {

  document.execCommand("Stop");

  //document.write("<h2>document.execCommand(\"Stop\") success!</h2>"); // This would be printed in case of IE

  } catch (error) {

  //document.write("<h2>document.execCommand(\"Stop\") did not work. Exception is: "+error+".</h2>");

  document.write("<h2>This browser cannot prevent the Logon Page frame from loading!<br>Do not submit your credentials and contact your system administrator!</h2>");

  }

  }

}

</script>

<table id="tblFrmUI" width="790px" valign="middle" dir="ltr" align="center" cellPadding="0" cellSpacing="0" style="background-color:#ffffff;margin-top:50px;">

 

  <tr>

  <td><img src="/logon_ui_resources/layout/lf_tl.png" width="29" height="32"></td>

  <td background="/logon_ui_resources/layout/lf_st.png"></td>

  <td><img src="/logon_ui_resources/layout/lf_tr.png" width="27" height="32"></td>

  </tr>

  <tr>

  

  <td background="/logon_ui_resources/layout/lf_sl.png"></td>

  <td width="100%">

        <table id="tblInnerCnt" dir="ltr" cellpadding="0" cellspacing="0">

     

  <tr>

  <td valign="top"><div class="urBrandImage"><img src="/logon_ui_resources/layout/branding-image.jpg" alt="Branding Image" border="0"></div></td>

  <td width="100%"></td>

  <td>

  <table height="360px" cellPadding="0" cellSpacing="0">

  <tr>

  <td valign="top"><div class="urProductName"><img src="/logon_ui_resources/layout/branding-text.gif" alt="" border="0"></div></td>

  </tr>

  <tr>

  <td valign="top" align="left">

  <div class="urLogonData">

  <!-- data table starts after this line -->

  <FORM  AUTOCOMPLETE="off"  name="changePasswordForm" target="logonAppPage" method="post" action="sap_j_security_check?version=3.0&Sender.Service=CC_CMS_SOAP_MI_2900&Interface=http%3a%2f%2fsingaporeair.com%2fhr%2fpa%2fCMS%255EMI_2900">

<input name="cancelPasswordChange" type="hidden" value="off">

<input type="hidden" name="j_salt" value="x9BAeitsmcBHbejtdKQd/2+SJFg=" />

  <table class="urLogonTable" cellSpacing="3px" cellPadding="0" valign="top">

  <tr><td colspan="3">

  <div class="urMessageArea">

  </div>

  </td></tr>

  <!-- header line -->

  <tr><td align="left" colspan="3">

  <div class="urTxtH3">Change Password</div>

  </td></tr>

  <!-- old password -->

  <tr><td>

  <label class="urLblStdNew" for="logonoldpassfield"><nobr>Old Password<span class="urLblReq"> *</span></nobr></label>

  </td>

  <td>

  <input type="password" id="logonoldpassfield"  name="j_sap_current_password" class="urEdfTxtEnbl" style="width:170px">

  </td>

  <td width="100%"> </td></tr>

  <!-- new password -->

  <tr><td>

  <label class="urLblStdNew" for="logonnewpassfield"><nobr>New Password<span class="urLblReq"> *</span></nobr></label>

  </td>

  <td>

  <input type="password" id="logonnewpassfield"  name="j_sap_password" class="urEdfTxtEnbl" style="width:170px">

  </td>

  <td> </td></tr>

  <!-- retype new password -->

  <tr><td>

  <label class="urLblStdNew" for="logonretypepassfield"><nobr>Confirm Password<span class="urLblReq"> *</span></nobr></label>

  </td>

  <td>

  <input type="password" id="logonretypepassfield"  name="j_sap_again" class="urEdfTxtEnbl" style="width:170px">

  </td>

  <td> </td></tr>

  <!-- submit buttons -->

  <tr><td> </td><td align="right">

  <input class="urBtnStdNew" type="submit" name="performChangePassword" value="Change" >

  <input class="urBtnStdNew" type="submit" name="showUidPasswordLogonPage" value="Cancel" onClick="onClickCancel();" >

  </td>

  <td> </td></tr>

  </table>

  </form>

  <!-- data table ends before this line -->

  </div>

  </td>

  </tr>

  <tr>

  <td valign="bottom">

  <div class="urCopyrightFrame"> 

  <div class="urCopyrightText">Copyright &copy; SAP AG. All Rights Reserved.</div>

  <div class="urCopyrightImage"><img src="/logon_ui_resources/layout/sap_logo.png" alt="SAP AG" title="SAP AG" width="55" height="27"></div>

  </div>

  </td>

  </tr>

  </table>

  </td>

  </tr>

  </table>

  </td>

  <td background="/logon_ui_resources/layout/lf_sr.png"></td>

  </tr>

  <tr>

  <td><img src="/logon_ui_resources/layout/lf_bl.png" width="29" height="32"></td>

  <td align="center" background="/logon_ui_resources/layout/lf_sb.png"><span class="clip"><img src="/logon_ui_resources/layout/lf_clip.png" width="298" height="32"></span></td>

  <td><img src="/logon_ui_resources/layout/lf_br.png" width="27" height="32"></td>

  </tr>

</table>

<script type="text/javascript">

<!--

  var docDir = document.dir;   

  if(docDir=="rtl" || docDir=="RTL"){  

     var elTableCnt = document.getElementById("tblInnerCnt");

     if(elTableCnt!=undefined){

       elTableCnt.style.direction="rtl";       

     }    

  }

  var isFormSubmitted = false;

  if( document.forms ) {

    document.forms[0].onsubmit=function(){

      if( isFormSubmitted ) {

        return false;

      } else {

        isFormSubmitted = true;

        return true;

      }

    }

  }

-->

</script>

</body>

</html>

Accepted Solutions (0)

Answers (2)

Answers (2)

manoj_khavatkopp
Active Contributor
0 Kudos

Sai,

  • Go to SM59 in your ECC system.
  • The do a connection test for the RFC destination which is pointing to PO system.
  • The connection Should work fine and return HTTP 200 if no then as suggested report this to basis team.
  • If Http 200 code is returned check the Response Body tab when you do connection this should return Message Servlet OK , by looking at the error i guess it wont return Message Servlet OK you will be asked to reset the password and do the same with the help of basis team.

   

  

Br,

Manoj

Former Member
0 Kudos

Hi Manoj / Raghu,

Your inputs was quite helpful, for better understanding can I have few more basic clarifications.

SOAP TO RFC Scenario - Pre-requisites Clarifications

1. Which version of SOAP UI tool is best fit to test soap scenarions in SAP PI/PO 7.5 version

2. URL has been generated from Integration Directory --> Display WSDL

3. Got SOAP Webservice User Credentials for URL from BASIS,

I want to understand where this user will be created, My understanding as URL hits PI 7.5 this webservice user should be created in PI 7.5 (Correct me If I am wrong)

Want to understand what type of user to be created for this WEBSERVICE in PI server.

3.1 : Is it possible to reset the password, if so with out basis intervention can we reset the password.

Please let me know the procedure.

4. we need RFC logon user, As per my understanding user which we configure in RFC communication channel to be created in target RN2 system.

4.1: Is there any relation exist in between Webservice User to the RFC user (which configure in RFC communication Channel) -- Request your inputs please.

4.2 Is it possible to reset this RFC password using any URL in PI 7.5 AEX, if so with out basis intervention can we reset this password.

Any other suggestion and inputs are quite helpful

Note: We are working on migration from PI 7.0 to NEW PI 7.5AEX (Java Installation).

As new to this environment just want to understand below monitoring functionalities

How to check mapping failures. In dual stack at real time we monitor through SXMB_MONI, how do we check this in JAVA Stack.

Just want to understand is there any way SXMB_MONI, SMQ functionalities can be seen in JAVA stack. If so please guide me with this.

Please let me know the procedure

Thanks,

--Sai

former_member186851
Active Contributor
0 Kudos

Hello Sai,

1. Which version of SOAP UI tool is best fit to test soap scenarions in SAP PI/PO 7.5 version

There is not limitations as such, But always use the latest one i.e SOAP NG pro 1.8 I guess.

2. URL has been generated from Integration Directory --> Display WSDL

Yes, you can get the URL from Display WSDL.

3. Got SOAP Webservice User Credentials for URL from BASIS,

I want to understand where this user will be created, My understanding as URL hits PI 7.5 this webservice user should be created in PI 7.5 (Correct me If I am wrong)

Yes. You an get the endpoint as per step 2,port and host in URL will change.

Want to understand what type of user to be created for this WEBSERVICE in PI server.

Try adding the below roles

  • SAP_XI_APPL_SERV_USER
  • SAP_BC_WEBSERVICE_PI_CFG_SRV

3.1 : Is it possible to reset the password, if so with out basis intervention can we reset the password.

Please let me know the procedure.

Login to User Admin and you can reset it but you should have roles to do it.

4. we need RFC logon user, As per my understanding user which we configure in RFC communication channel to be created in target RN2 system.

Yes in the ECC system.

4.1: Is there any relation exist in between Webservice User to the RFC user (which configure in RFC communication Channel) -- Request your inputs please.

Nopes,nothing..

4.2 Is it possible to reset this RFC password using any URL in PI 7.5 AEX, if so with out basis intervention can we reset this password.


Guess you need to do in ECC.

Any other suggestion and inputs are quite helpful

Note: We are working on migration from PI 7.0 to NEW PI 7.5AEX (Java Installation).

As new to this environment just want to understand below monitoring functionalities

How to check mapping failures. In dual stack at real time we monitor through SXMB_MONI, how do we check this in JAVA Stack.

You can check in Message monitoring or channel monitoring in SAP PI runtime workbench.

Just want to understand is there any way SXMB_MONI, SMQ functionalities can be seen in JAVA stack. If so please guide me with this.

Everything you can monitor in Web browser using SAP PI page


For RFC check the below link



For Monitoring check the below link


Former Member
0 Kudos

HI Raghu,

Thanks for your inputs,

So, the webservice user which we use in SOAP UI tool should be created/exist in SAP PI server.

Getting <code>ADAPTER.JAVA_EXCEPTION</code> error while testing from SOAP UI 3.5 tool.

But when I try to access it using User Administration from PI 7.5 AEX, its throwing an error I am not authorized.

Basis mailed us like the password can be reset using URL.

Is there any way to do reset the webservice user using any URL.

Normally --> How do we reset webservice user password.

Thanks,

--Sai

former_member186851
Active Contributor
Former Member
0 Kudos

Hi,

I am getting below error even after resetting the password. I tried in many options but couldnt able to connect my PI server.

Thanks,

--Sai

former_member186851
Active Contributor
0 Kudos

Hello Sai,

in the soap adapter did you maintain HTTP as protocol?

manoj_khavatkopp
Active Contributor
0 Kudos

Check you sender SOAP channel , you may be having an error. or NWA log.

former_member186851
Active Contributor
0 Kudos

Check the RFC credentials maintained the channel,

After doing changes  stop/start the channel and check..

Former Member
0 Kudos

HI Raghu,

When I Ping RFC channel its working fine, I have done START/STOP of the channel

But still I am getting the same error..

Thanks,

--Sai

former_member186851
Active Contributor
0 Kudos

Hello Sai,

Ping is fine,

Check the USER credentials maintained in the channel.

Check its activate and unlocked.