Url to call Integration engine from Webserver

Hi All,
Please let me know what is the url to call INtegration engine from Webserver
I know below is url which we will use to call Adapter engine..But i need direct call to Integration engine
http://server:50100/XISOAPAdapter/MessageServlet?channel=:R3_DEV:R3_CHANNEL_sender
Thanks and Regards
Suma S
Edited by: Suma S on May 3, 2011 5:51 PM

the url will have the format of
http://hostname:8000/sap/xi/adapter_plain?type=entry&sap-user=xisuper&sap-password=******&namespace=<namespace>&interface=<interfacename>&service=<servicename>

Similar Messages

  • Hi. about monitor message of integration engine from RWB.

    I  want to monitor message of iintegration engine from RWB.
    but i can not open message content tab page and queue monitor tab page.
    hint is : SSO login failed. need to  logon again.
    which user should i use to logon?
    i tried so many user not to be able to logon successuflly.

    Hi Joy,
       if you want to use the SSO functionality for any component you need to maintain it first....i think u SSO configurtion is not yet done ....and hence you are getting the above error.......
    Pls chk the below link....thsi is for PI 7.1...
    http://help.sap.com/saphelp_nwpi71/helpdata/EN/32/1c1041a0f6f16fe10000000a1550b0/content.htm
    Hope this will help..
    Regds,
    Pinangshuk.

  • HTTP Response code 404 - RFC Adapter des not connect to Integration engine

    Hi,
    I seem to have problem with XI Integration engine. My integration process does not go beyond adapter engine and it fails with the following error,
    Begining of the erorr report -
    2006-01-23 13:35:53 Success RFC adapter received sRFC for ZSCEN2_XI from <sysno>/<client>. Attempting to send message synchronously
    2006-01-23 13:35:54 Success Application attempting to send an XI message synchronously using connection AFW.
    2006-01-23 13:35:55 Success Trying to put the message into the call queue.
    2006-01-23 13:35:55 Success Message successfully put into the queue.
    2006-01-23 13:35:55 Success The message was successfully retrieved from the call queue.
    2006-01-23 13:35:55 Success The message status set to DLNG.
    2006-01-23 13:35:55 Error Returning synchronous error notification to calling application: Received HTTP response code 404 : Not Found.
    2006-01-23 13:35:55 Error Transmitting the message using connection http://<host>:55300/sap/xi/engine?type=entry failed, due to: Received HTTP response code 404 : Not Found.
    2006-01-23 13:35:55 Error The message status set to FAIL.
    2006-01-23 13:35:55 Error Returning to application. Exception: Received HTTP response code 404 : Not Found
    end of error report -
    and the runtime workbench does not connect to Integration engine and fails with the following error,
    begin error report -
    javax.ejb.CreateException: Unable to log on to system XID in language en with user XIRWBUSER
         at com.sap.aii.mdt.server.integrationengine.IntegrationEngineMonitoringBean.ejbCreate(IntegrationEngineMonitoringBean.java:374)
         at com.sap.aii.mdt.server.IntegrationEngineHomeImpl10.create(IntegrationEngineHomeImpl10.java:185)
         at com.sap.aii.mdt.server.IntegrationEngineHome_Stub.create(IntegrationEngineHome_Stub.java:56)
    end of report -
    Have anyone experienced the same issue?. Are we missing some post installation configuration?.
    Thanks in advance
    Regards,
    Arul

    HI Anulraja,
    Your Adapter Engine searches the pipeline url of the integration engine from the SLD.
    Check the Bussiness System in Sld , which you'll have defined for XI Server.
    It should have ROLE : Integration Server And
    pipeline url: http://ux0800:55300/sap/xi/engine?type=entry
    should be this if your http port is 55300.
    Check if this url is right in SLD-Bussiness System.
    You can check the exact http port in transaction sxmb_adm.
    Go to Integration engine configuration and then click on check icon(F7).
    It should match with that provided in the BS in SLD.
    By default it should be 8000.
    Check all these things and then try.
    Regards,
    Yomesh

  • Error while testing message from Integration Engine.

    Hi,
    Trying to send message to Integration engine from RWB, using test mesage tab in Integration engine.
    I pasted the payload(IDOC payload) , entered sender service, interface name and namespace and also username and password. Selected quality of servie as Exactly once.
    While sending the message getting the following error - "Error while sending".
    What could be possible reasons for this error.
    Thanks.

    Hi,
       Please check the following possibilities:
    1. Make sure you have selected integration Engine oprtion and not the adapter engine.
    2. The USERID and password should be correct.
    Please let me know if you still face the problem.
    Regards,
    Shwetambari.

  • Atack interface directly in the integration engine

    Hi guys.
    Id like to know how to make to consume a sender interfece directly attacking the integration engine.
    We work with an EDI enterprise and we only provide them the interface XSD, inteface name, interface namespace, remote user and password and they achive to consume this inteface but I don't know how.
    There isn't any sender channel assoicate to this sender interface...
    How could they get this? Java?
    Thanks a lot!!!

    Hi,
    You can directly post to integration engine from your EDI using the below URL if thats what you are looking for.
    http://<host>:8000/sap/xi/adapter_plain?namespace=<ns>&interface=<intface>&service=<BS>&QOS=<EO>&sap-client=<003>&sap-language=<EN>&sap-user=<user>&sap-password=<password>
    This would be a direct HTTP communication and no sender channel is required. its served by the integration engine itself.
    please check
    http://help.sap.com/saphelp_nw04/helpdata/en/82/f4993c03e0cd37e10000000a11405a/content.htm
    regards,
    francis

  • Convert URL from integration engine to adapter engine with https

    I'm still relatively new at PI, trying to learn as I go, so I apologize if I do not phrase this correctly. 
    Our trading partners currently post xml files via http to a url directed to our Integration Engine, for example: 
    http://<host>:<port>/sap/xi/adapter_plain?namespace=urn%3Aball.com%3Aavailabilityfeed&interface=MIOA_AvailabilityFeed&service=SRV_Supplier&party=P_EDI&agency=&scheme=&QOS=EO&queueid=httpclient&sap-user=****&sap-password=***&sap-client=**&sap-language=EN
    We would now like them to post to a different URL using https so that 1) files are routed through the adapter engine, and 2) user and password information would not need to be included in the url currently being used.
    For a separate process, which has been configured differently, it was simply a matter of changing from http://<host>:<port> to https://<host2>...., but this has not been working for me with the above URL.
    Can anyone please help out or point me in the right direction?  I've spent half the day searching the forums without much success.
    Thank you.

    check security guide:
    http://help.sap.com/saphelp_nwpi711/helpdata/en/f7/c2953fc405330ee10000000a114084/frameset.htm
    When you want to post data to adapter engine, you have to use SOAP adapter, as HTTP adapter is not part of AE
    In security guide you find HTTPS enabling for HTTP and SOAP adapter.

  • HTTP error 403 from Integration engine

    Hello,
    Problem a)
    While posing data from eSourcing to PI box by HTTP , we are getting HTTPerror 403.
    The error message states:
    ID: E-Sourcing was unable to publish PROP-00090--2010 to ERP. class java.io.IOException Server returned HTTP response code: 403 for URL:
    Problem b)
    In another observation the sender file adapter after polling the file is unable to send the message to Integration engine and gives a Connection Time out error. it gives the following error.
    Transmitting the message to endpoint http://<Host>:<Port>/sap/xi/engine?type=entry using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error transmitting the message over HTTP. Reason: java.net.ConnectException: Connection timed out: connect.
    I believe that both the errors are for common cause and possibly the Integration engine is not accepting HTTP request.
    It looks like these error due to security reason, it seems some authorization profile is missing or may be some other issue,kindly help us at that front.
    Thanks and Regards,
    Satish

    Hi Suraj,
         Thanks for the update.We had checked the URL before posting this message,it is picking up correct URL with namespoace, UID and PWD.Exact error that we are getting is as follows:
    ID: E-Sourcing was unable to publish PROP-00090--2010 to ERP. class java.io.IOException Server returned HTTP response code: 403 for URL: http://MB1ES1025:50200/sap/xi/adapter_plain?namespace=http://frictionless.esource.com/v2.0&interface=MI_ESI_AWARD_PO&service=FCI_TENANT&QOS=BE&sap-user=pisuper&sap-password=sap$29&sap-client=001&sap-language=EN. Please contact your system administrator.
    Here all information are correct.We have checked the SLD check, that is also working fine.Also it is not connectivity related issue, as we are able to transmit XML file to E-Sourcing.
       It looks like security issue, but what authorization needs tobe given exactly for HTTP call, we need to know or may be some other issue.
    Thanks and Regards,
    Satish

  • Communication error when sending PI message from Integration Engine to AE

    Hi Experts,
    we currently installed and configured PI 7.3 system. Even I run post installation PI configuration several times, we are still facing error when Integration engine sends message to messaging system. ( my scenario: I send test message to IE directly, avoiding AE )...
    It might look easy: but even adding PIISUSER full authorization and system restart, the result is the same. I don't know if it could have connection but I also get HTTP 200 instead of HTTP 500 when testing INTEGRATION_DIRECTORY_HMI destination.
    Thanks for any help.
    <Trace level="1" type="B" name="CL_XMS_PLSRV_IE_ADAPTER-ENTER_PLSRV">
      <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-CALL_XMS_HTTP" />
    - <!--  ************************************
      -->
      <Trace level="1" type="T">error reading SAP_XIAdapterFramework from SLD</Trace>
      <Trace level="1" type="T">error reading SAP_XIAdapterFramework from SLD</Trace>
      <Trace level="1" type="T">Get logon data for adapter engine (SAI_AE_DETAILS_GET):</Trace>
      <Trace level="1" type="T">URL = http://xxx:xxxx/MessagingSystem/receive/AFW/XI</Trace>
      <Trace level="1" type="T">User = PIISUSER</Trace>
      <Trace level="1" type="T">Cached =</Trace>
      <Trace level="1" type="T">Security: Basic authentication</Trace>
      <Trace level="1" type="T">Serializing message object...</Trace>
      <Trace level="1" type="T">Tuning - AFW_MAXREQUESTCONTENTLENGTH 2000000000</Trace>
      <Trace level="1" type="T">HTTP Multipart document length: 2948</Trace>
      <Trace level="1" type="T">Timeout: 0</Trace>
      <Trace level="1" type="T">HTTP-client: request sent</Trace>
      <Trace level="1" type="T">HTTP-client: response received</Trace>
      <Trace level="1" type="T">HTTP-client: status code = 401</Trace>
      <Trace level="1" type="System_Error">Authorization error while sending by HTTP (error code: 401 , error text: Unauthorized)</Trace>
      </Trace>

    Hi,
    So this password change in Exchange Profile + su01 transaction + system restart didn't help.
    I increase trace level, and this is even more detailed log in pipeline step Call Adapter.
    We also find out that when message arrive to IE we have in java log three entries:
    LOGIN.FAILED
    User: N/A
    IP Address: xxx
    Authentication Stack: sap.com/com.sap.aii.af.ms.app*MessagingSystem
    Login Module                                                               Flag        Initialize  Login      Commit     Abort      Details
    1. com.sap.security.core.server.jaas.EvaluateAssertionTicketLoginModule    SUFFICIENT  ok          exception             true       Received no SAP Authentication Assertion Ticket.
    2. com.sap.security.core.server.jaas.EvaluateTicketLoginModule             SUFFICIENT  ok          false                 true      
    3. com.sap.engine.services.security.server.jaas.BasicPasswordLoginModule   REQUISITE   ok          exception             true       Authentication did not succeed.
    This log is logged under J2EE_GUEST User.
    LOGIN.OK
    User: SLD_CL_PIQ
    IP Address: xxx
    Authentication Stack: sap.com/com.sap.lcr*sld
    LOGIN.OK
    User: SLD_CL_PIQ
    IP Address: xxx
    Authentication Stack: sap.com/com.sap.lcr*sld
    Last two logs are logged by SLD_CL_PIQ user.
    Thanks for any help!
    <!--  ************************************
      -->
    - <Trace level="1" type="B" name="CL_XMS_PLSRV_IE_ADAPTER-ENTER_PLSRV">
      <Trace level="3" type="T">Channel for adapter engine: File</Trace>
      <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-CALL_XMS_HTTP" />
    - <!--  ************************************
      -->
      <Trace level="2" type="T">no values in cache (no lock found) - start reading from SLD</Trace>
      <Trace level="1" type="T">error reading SAP_XIAdapterFramework from SLD</Trace>
      <Trace level="2" type="T">Adapter Framework(s) found</Trace>
      <Trace level="2" type="T">Service Port(s) found - take first one</Trace>
      <Trace level="2" type="T">URL found</Trace>
      <Trace level="2" type="T">no values in cache (lock found) - start reading from SLD</Trace>
      <Trace level="1" type="T">error reading SAP_XIAdapterFramework from SLD</Trace>
      <Trace level="2" type="T">Adapter Framework(s) found</Trace>
      <Trace level="2" type="T">Service Port(s) found - take first one</Trace>
      <Trace level="2" type="T">URL found</Trace>
      <Trace level="1" type="T">Get logon data for adapter engine (SAI_AE_DETAILS_GET):</Trace>
      <Trace level="1" type="T">URL = http://xxx/MessagingSystem/receive/AFW/XI</Trace>
      <Trace level="1" type="T">User = PIISUSERA</Trace>
      <Trace level="1" type="T">Cached =</Trace>
      <Trace level="3" type="T">Creating HTTP-client</Trace>
      <Trace level="3" type="T">HTTP-client: creation finished</Trace>
      <Trace level="1" type="T">Security: Basic authentication</Trace>
      <Trace level="1" type="T">Serializing message object...</Trace>
      <Trace level="1" type="T">Tuning - AFW_MAXREQUESTCONTENTLENGTH 2000000000</Trace>
      <Trace level="1" type="T">HTTP Multipart document length: 2941</Trace>
      <Trace level="3" type="T">HTTP-client: sending http-request...</Trace>
      <Trace level="1" type="T">Timeout: 0</Trace>
      <Trace level="1" type="T">HTTP-client: request sent</Trace>
      <Trace level="3" type="T">HTTP-client: request sent</Trace>
      <Trace level="3" type="T">HTTP-client: Receiving http-response...</Trace>
      <Trace level="1" type="T">HTTP-client: response received</Trace>
      <Trace level="3" type="T">HTTP-client: checking status code...</Trace>
      <Trace level="1" type="T">HTTP-client: status code = 401</Trace>
      <Trace level="3" type="System_Error">Authorization error while sending by HTTP (error code: 401 , error text: Unauthorized)</Trace>
      </Trace>
    </Trace>

  • Regarding  error in the INTEGRATION ENGINE URL

    hai guys pls go thru this question carefully,.
    when i click on INTEGRATION ENGINE  and  BUSINESS PROCESS ENGINE IN RWB ,integration engine is in yellow colour status instead of green colour and th result of SELF TEST IN RWB is: Is WEBSERVICE security available? what it mean how can i have my I.E in green colour status?
    and the result of self test for  BPE is : check the entries from HR control tables? what it mean?
    as a result of above errors am not able to test the msg BY SPECIFYING THE url OF I.E and am getting error as:HTTP-404 -not found
    hope u understand t he problem pls revert me back with suitable answers

    hi
    Check this
    /people/krishna.moorthyp/blog/2006/07/23/http-errors-in-xi
    Re: ERROR HTTP 404

  • How to call the integration engine not the remote function.

    Hi!
    I want to get the data from the client 000 with an rfc call through the xi (client 001). But when I call the function via rfc, the funciton is executed in the client 001, instead of forwarding the call to the integration engine.
    How can I forwarded to the engine this call?
    I only made a sender communication channel in the DI which is an sener adapter type RFC.

    Thanks for the reply.
    But I have no receiver channel yet. so i can't even reach any server if my call would be catched by the intergration engine.
    But unfortunately I can reach the target system without the engine.
    I use java connector to connect the external system to my intergration server.
    Please help.

  • Calling the procedure from URL is not working

    Hi Experts,
    We are in the process of 11i to R12 upgrade of oracle EBS system.
    In 11i they have done some personalization in the form which will trigger a URL and a notfication will open in the browser.
    11i url
    HTTPS://abc.xyz.t.COM:8070/PLS/abc/XXM_PO_NOTIFICATION_PREVIEW.SHOW?P_PO_HEADER_ID=1711&p_type=PO
    r12 url
    HTTPS://abcr12.xyz.t.COM:8070/PLS/abcr12/XXM_PO_NOTIFICATION_PREVIEW.SHOW?P_PO_HEADER_ID=1711&p_type=PO
    The URL is calling the function XXM_PO_NOTIFICATION_PREVIEW.SHOW by passing the parameters and it is working fine in 11i.
    In r12 it is constructing the correct URL but when the page opens it is saying page not found.
    My question is when we pass call the package in browser URL..does it  executes?
    We have put some debug message in the package but it is not getting pritntig.
    Many Thanks
    Bharat

    Page not found (404) is a generic error from the web server. It simply says something went wrong when it serviced that URL from the browser - not what exactly went wrong.
    You need to look in the error log of the Apache server for the details.
    Assuming a standard OHS (Oracle HTTP Server) install. The URL contains a DAD (Database Access Descriptor) - in your case it is abcr12.  This DAD will be defined in the Apache config file called dads.conf in the mod_plsql directory.
    Part of the DAD definition will be an Oracle username, password, and Oracle connection string (typically TNSFormat).
    The error you see on the browser side is often due to this DAD connection and authentication details failing. E.g. Oracle schema is locked. Oracle password is wrong. TNS connection string requests a non-existing service from the Oracle Listener. Etc.
    But it would make sense to first confirm that this is indeed a connectivity error, via the Apache error log.

  • How to call a procedure from url

    hello,
    I'd like to call a procedure from the url. <br>
    I've tryed several ways to call that procedure, but none of it worked. <br><br>
    so can someone please tell me the correct syntax of such a call?<br>
    thanks in advance.

    Hi ,
    I have implemented this in one of my apps in the following way:
    - Created a database procedure (called download_file that accepts a parameter). This procedure opens a document stored in the database.
    - In a report region, in the Column Link attributes, I set the Link Text to "Download", set Target to "URL" and set URL to "#OWNER#.download_file?p_file=#MYFIELD#"
    Hope this helps.

  • Call struts action from javascript?

    Hi all
    I'm having problem already discussed here quite a lot, but I have idea to solve it different way. And need to know is it possible or I'm doing mission impossible here :(
    I have JSP with 2 drop down lilsts, where the second is populated according to selected value from first - that's basically my problem.
    Is it possible to somehow only call my struts action which will return all needed values using javascript and onchange event handler?
    I dont have any experience with javascript, and I'm trying to avoid it as much as possible at the moment.
    Thanks in advance

    well as far your requirement is concern if at all you are planning to implement AJAX try to use the below link which might be of some help...
    http://www.it-eye.nl/weblog/2005/12/13/ajax-in-struts-implementing-dependend-select-boxes/
    However,I somehow feel there are few loopholes in the author's approach...
    i advice to use XmlHttpRequest.reponseXML property there.
    However, i've mentioned a sample code snippet for you reference.
    XML Response Pattern :
    ======================
    <? xml version="1.1" ?>
    <dropdown>
    <option>
    <val>CUSTOMIZED_VALUE</val>
    <text>CUSTOMIZED_VALUE</text>
    </option>
    </dropdown>Sample.jsp:
    ===========
    <%@page language="java" %>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Automatic Drop-Down Updation</title>
         <script language="javascript">
          // Global Variable for XmlHttp Request Object  
          var xmlhttp
          // Timer Variables
          var c = 0
          var t
           /* A function which calls a servlet  named AjaxServlet to get XmlData using XmlHttpObject */    
            function refreshCombo(txt){
                xmlhttp = null
                // code for initializing XmlHttpRequest Object On Browsers like  Mozilla, etc.
                if (window.XMLHttpRequest){
                     xmlhttp = new XMLHttpRequest()
                // code for initializing XmlHttpRequest Object On Browsers like IE
               else if (window.ActiveXObject) {
                   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
               if (xmlhttp != null){
                  // Setting the Action url to get XmlData
                   url = "dropdown.do?count="+txt;
                   // Course of Action That Should be Made if their is a change in XmlHttpRequest Object ReadyState NOTE : it is 4 when it has got request from CGI
                   xmlhttp.onreadystatechange = getResponseAction;
                   // Open the Request by passing Type of Request & CGI URL
                   xmlhttp.open("GET",url,true);
                   // Sending URL Encoded Data
                   xmlhttp.send(null);
               else{
                 // Only Broswers like IE 5.0,Mozilla & all other browser which support XML data Supports AJAX Technology
                 // In the Below case it looks as if the browser is not compatiable
                  alert("Your browser does not support XMLHTTP.")
          /* Used for verifing right ReadyState & Status of XmlHttpRequest Object returns true if it is verified */
          function verifyReadyState(obj){
             // As Said above if XmlHttp.ReadyState == 4 then the Page Has got Response from WebServer
              if(obj.readyState == 4){
               // Similarly if XmlHttp.status == 200 it means that we have got a Valid response from the WebServer
                if(obj.status == 200){               
                    return true
                 else{
                    alert("Problem retrieving XML data")
          /* Action that has to take place after getting reponse */
          function getResponseAction(){
              // Verifying State & Status
              if(verifyReadyState(xmlhttp) == true){
                  // Building a DOM parser from Response Object
                  var response = xmlhttp.responseXML.documentElement
                  // Deleting all the Present Elements in the Drop-Down Box
                  drRemove()      
                  // Checking for the Root Node Tag
                  var x = response.getElementsByTagName("option")
                  var val
                  var tex
                  var optn
                  for(var i = 0;i < x.length; i++){
                     optn = document.createElement("OPTION")
                     var er
                     // Checking for the tag which holds the value of the Drop-Down combo element
                     val = x.getElementsByTagName("val")
    try{
    // Assigning the value to a Drop-Down Set Element
    optn.value = val[0].firstChild.data
    } catch(er){
    // Checking for the tag which holds the Text of the Drop-Down combo element
    tex = x[i].getElementsByTagName("text")
    try{
    // Assigning the Text to a Drop-Down Set Element
    optn.text = tex[0].firstChild.data
    } catch(er){
    // Adding the Set Element to the Drop-Down
    document.SampleForm.SampleCombo.options.add(optn)
    /* Function removes all the elements in the Drop-Down */
    function drRemove(){
    var x = document.SampleForm.SampleCombo
    for(var i = document.SampleForm.SampleCombo.length - 1 ; i >= 0 ; i--){                     
    x.remove(i)
    </script>
    </head>
    <body onload="syncCount()">
    <pre> <h1>Refresh Drop-Down <div id='txt'> </div> </h1></pre>
    <form name="SampleForm">
    <!-- Drop Down which has country list -->
    <select name="x" onchange="refreshCombo(this.value)">
                   <option value="1">United States</option>
                   <option value="2">United Kingdom</option>
                   <option value="3">United Arab Emriates</option>
    </select>
    <!-- Drop Down which is dependent on Country Drop down get list of states -->
    <select name="SampleCombo">
    <option value="-1">Pick One</option>
    </select>
    </form>
    </body>
    </html>
    struts-config.xml:
    ==================
    <action-mappings>
    <action path="/dropdown" type="com.controlleraction.AjaxActionClass">
    <forward name="error" path="/error.jsp"/>
    </action>
    </action-mappings>AjaxActionClass.java:
    =====================
    package com.controlleraction;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    public class AjaxActionClass extends DispatchAction {
      public ActionForward execute( ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception {
        String req = new String("");
        try{
           req = request.getParameter("count");
        } catch(Exception exp){
       if(!req.equals("")){
           response.setContentType("text/xml");        
           response.setHeader("Pragma","no-cache");
           response.setHeader("Cache-Control","no-cache,post-check=0,pre-check=0");
           PrintWriter out = response.getWriter();
           /*a sample bean where we trying to call a service from Model*/
           com.Biz.XmlBean xml = new XmlBean();
           String buffer = xml.getXmlData(req);
           if(xml.close() == true && buffer.equals("") == false)
             out.write(buffer);     
           return(null);
      } else {
         return new ActionForward("error");
    }XmlBean.java:
    =============
    * XmlBean.java
    import java.sql.*;
    import java.util.*;
    import java.io.*;
    * @author RaHuL
    public class XmlBean {
        private Connection con = null;
        private PreparedStatement pstmt = null;
        private ResultSet rs = null;
        // Setting CLASSURL path to TYPE I Driver
        private String CLASSURL = "sun.jdbc.odbc.JdbcOdbcDriver";
        /* Specifing CONNECTION PATH to a DSN named TestDsn
         * Please Make Sure you create a DSN Named TestDsn to your database which holds EMP table
        private String CONNECTIONURL = "jdbc:odbc:TestDsn";
        boolean IS_ESTABLISHED = false;
        /** Creates a new instance of XmlBean and also establishes DB Connections */
        public XmlBean() {
            try{
                Class.forName(CLASSURL);
                con = DriverManager.getConnection(CONNECTIONURL,"admin","");
                IS_ESTABLISHED = true;
            } catch(SQLException sqe){
                sqe.printStackTrace();
            } catch(Exception exp){
                exp.printStackTrace();
        /* Generates XmlData For the Business Logic Specified */
        public String getXmlData(String req){
            String XmlBuffer = new String("");
            if(IS_ESTABLISHED == true){
                try{
                    pstmt = con.prepareStatement("SELECT stateid,statename FROM STATE_TABLE where countryid = ?");
                    pstmt.setString(1,req);
                    rs = pstmt.executeQuery();
                    if(rs != null){
                        XmlBuffer = XmlBuffer + "<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>";
                        XmlBuffer = XmlBuffer + "<!--  Edited by Rahul Sharma -->";
                        // Root Node
                        XmlBuffer = XmlBuffer + "<dropdown>";
                        while(rs.next()){
                            String value = rs.getString(1);
                            String text = rs.getString(2);
                            // Sub-root Node
                            XmlBuffer = XmlBuffer + "<option>";
                            // node which holds value of drop-down combo
                            XmlBuffer = XmlBuffer + "<val>"+value+"</val>";
                            // node which holds text for drop-down combo
                            XmlBuffer = XmlBuffer + "<text>"+text+"</text>";
                            XmlBuffer = XmlBuffer + "</option>";
                        XmlBuffer = XmlBuffer + "</dropdown>";
                }catch(SQLException sqe){
                    sqe.printStackTrace();
                } catch(Exception exp){
                    exp.printStackTrace();
            return(XmlBuffer);
        /* Closes the DB Connection Conmpletely */
        public  boolean close(){
            if(IS_ESTABLISHED == true){
                try{
                    pstmt.close();
                    con.close();
                    return(true);
                } catch(SQLException sqe){
                    sqe.printStackTrace();
                } catch(Exception exp){
                    exp.printStackTrace();
            return(false);
    NOTE: I understand i'm not completely coded things as per proper coding standards.please execuse me for that as this example was just given to enable user to learn how XmlHttpRquest,reponseXML
    can be used for better purposes instead of devising manual parsing.
    where i've used XmlHttpResponse pattern to be in XML. you may make use of other practices like JSON & so on depending on your requirement..
    and and if you are more instrested in integrating Struts with AJAX using few frameworks & customized tag based support please go though the below link.
    http://struts.sourceforge.net/ajaxtags/index.html
    Hope that might help :)
    REGARDS,
    RaHuL

  • Error: System not configured as Integration Engine

    Hi ,
    I was trying to simulate the following scenario in SAP XI:
    HTTP--> SAP XI --> (RFC/BAPI)SAP R/3
    Let me clear what i did.
    I have to call a BAPI using RFC adapter in XI to display some information on a request of some Http app.
    1. I have Imported the RFC BAPI into IR.
    2. I have created the XSD files for http Re and res messages.
    3. I have created the XSLT mapping programs and put them in a zip file and imported into IR.
    4. I have created a Interface mapping and assign the created messages and mapping programs.
    5. In ID i have created a Business service for my web application.
    6. Receiver determination created in Id and Interface determination and receiver agreement in ID and activated the changes.
    7. I have tested the same by sending the request from my web application to xi plain http adapter as follows:
    http://grserver:8000/sap/xi/adapter_plain?bs=XIWS_web&namespace=urn%3Axi%3Asap%3Awebapp&interface=HTTP_out&qos=BE
    and in the result i have got the following error:
    "System not configured as Integration Engine"
    but i have tried it many times and some times it gives me correct results but after that the same error ios coming.
    so can you tell me what could be wrong in the configuration of XI of what is the solution for this problem.
    Reagrds
    Gopesh Kumar Agarwal

    Hi,
    What is the version of XI you are using? If u are usign XI2.0, ur URL is correct. But if you are using XI3.0 then use <b>service</b>=<SENDERSERVICE>instead of
    <b>bs</b>=<SENDERSERVICE> parameter in your URL.
    <b>bs</b> is replaced by <b>service</b> in XI3.0
    Your URL will be http://grserver:8000/sap/xi/adapter_plain?<b>service</b>=XIWS_web&namespace=urn%3Axi%3Asap%3Awebapp&interface=HTTP_out&qos=BE
    Hope this helps you.
    Cheers,
    Siva Maranani.
    Message was edited by: siva  maranani
    Message was edited by: siva  maranani

  • Error 500 calling an ES from a BPM

    Hi experts,
    I have a BPM in XI that calls an ES many times. The standard ESs called are the Create Project Create Network an Create Activity. The BPM calls first of all the create project, then calls the create network, once for each network realted to the main project and then calls the create activity once for each activity realated to each network.
    The BPM works fine for few networks and activities, but when calling many networks and activities it returns an error 500 of conection. It will be because the project object gets blocked when its called many times in a little period of time.  I think it's not due to the XML or related because if I do the same process but with a wait step between each send it works fine. Do you know how can avoid this problem?
    Regards
    Gonzalo

    ou are working with XI 3.0 or 7.0. If you have one XI installation across different network domains, host names may not be resolvable across network domains depending on your network setup. For the XI inter-component communication, URLs registered in the System Landscape Directory (SLD) are used.
    XI Tools, Integration Engine and XI Adapter Engine register their URLs in the SLD in different ways:
    XI Tools: Hostname and port used by the Tools (RWB, Integration Builder -Repository and -Directory) are stored in the Exchange Profile. During J2EE system restart they get self registered in the SLD using the values defined there.
    XI Adapter Engine: In case of the XI Adapter Engine, these URLs are automatically entered to the SLD as part of the Adapter Framework self registration process. Host and port are taken from the J2EE server.
    In most cases the host name in these URLs is not fully qualified whereas in cross-domain scenarios fully qualified host names are required.
    Solution
    The problem can be solved in most cases by forcing the XI self-registration to use fully qualified host names.
    For XI Integration Builder, Integration Engine and Runtime Workbench, you accomplish this by entering fully qualified host names in the XI Exchange Profile, then initiating a new self-registration (restarting the J2EE engine).
    For the Adapter Engine, the approach is different: Change the properties "SLD.selfregistration.httpPort", "SLD.selfregistration.httpsPort" and "SLD.selfregistration.hostName" of the J2EE service SAP XI AF CPA Cache. Enter the fully qualified host name under which the Adapter Engine can be reached from all relevant network domains. Do this in the Visual Administrator of the J2EE Engine.  Then restart the applications "com.sap.aii.af.cpa.app" and "com.sap aii.af.app", or restart the complete J2EE engine. This triggers a new Adapter Engine self-registration.
    Go in the Integration Server (IS) to transaction "SXI_CACHE -> Goto -> Adapter-Engine-Cache" and delete the old Adapter Engine cache entries. After that the cache is refreshed from SLD as soon as a new message in sent to the respective Adapter Engine.
    Check: After restart, navigate in SLD through "Content Maintenance -> XIAdapter Framework" to your Adapter Engine.  As part of the "associated instances" you find e.g. at "XI  Adapter Service XIRA -> Associated Instances -> Port for XIRA of af.<SID>.<hostname>" the new URL with the fully qualified host name.
    regards
    chandra

Maybe you are looking for

  • Delivery Completed indicator for PO of Services

    Hello everyone! The PO for materials/goods has a delivery completed indicator in the Delivery tab of the Item Detail. But if the PO is for Service, we can not find a delivery completed indicator. Does the system have a counterpart of that indicator f

  • Probleme ecran devient rose avec mac mini et tv philips en hdmi!!!!! quelqu'un a une solution?

    Quelqu'un peut m'aider???????????,,,,,,,,

  • CONSOLIDATION Package not updating Retained Earning Accounts(7.5NW, SP09)

    Hi all During consolidation  data manager package run, the package is not updating "retained earnings accounts from PL and BS" of income statement  items which are belongs to IC elimination. please  provide your feed/advice on this issue thanks raman

  • Problem in XSLProcessor

    I have following code to process XML with XSLT processor. I am getting no output. Is anything wrong with code ? Please help, Arun begin xml_clob clob; xsl_clob clob; buffer VARCHAR2(4000) := NULL; p Xmlparser.Parser; Xml_doc Xmldom.DOMDocument; xmldo

  • HTTP over UDP?

    Has anybody done this before?? could you provide me with some links? And one very basic question, does HTTP expect any information from TCP with respect to acknowledgment and all those stuff or everything handles by TCP?? Thanx