Bapi calling webservice

HI friends,
I am new in ABAP world, i wonder can i call a webservice from my BAPI ?
thanks
Pranav

there is not standard BAPI available to consume webservice from ABAP
but you can always write your own ABAP/FM to do the same.
Which version of R/# you are using?
check out these weblogs
/people/durairaj.athavanraja/blog/2004/09/20/consuming-web-service-from-abap
/people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap
Regards
Raja

Similar Messages

  • Error while calling WebService inside ISchedulerTask.

    Hi,
    Env: NW 2004s
      I have a requirement of calling webservice frequently. I developed a portal project with scheduler, where the application gives a runtime error while calling/reading the property file (which is generated during the webservice proxy generation, without it webservice call is impossible).
    I have varified the ear file which contains all the required class files and config files including property file.
    fyi:
    portalapp.xml file looks like this.
    +
    <?xml version="1.0" encoding="utf-8"?>
    <application>
      <application-config>
        <property name="SharingReference" value="usermanagement, knowledgemanagement, landscape, htmlb, exportalJCOclient, exportal"/>
      </application-config>
      <components/>
      <services>
        <service name="RFServiceWrapper">
          <service-config>
            <property name="className" value="com.sap.netweaver.rf.wrapper.RFServiceWrapper"/>
            <property name="startup" value="true"/>
          </service-config>
        </service>
      </services>
    </application>
    +
    Any input will be highly appreciated.
    Thanks,
      Vinod

    Following is the error message:
    msg1:
    at <package>.AFFERAAFWSServiceImpl.<init>(AFFERAAFWSServiceImpl.java:10)
    msg2:
    at com.sap.engine.services.webservices.jaxrpc.wsdl2java.ServiceBase.loadProtocolsFromPropertyFile(ServiceBase.java:238)
    Reporting from Logs and Traces.
    Error Located @ following code inside AFFERAAFWSServiceImpl.java, which is a proxy class generated using apache axis
    input = this.getClass().getClassLoader().getResourceAsStream("<package>/protocols.txt");
    loadProtocolsFromPropertyFile(input);
    protocols.txt is another config file generated along with AFFERAAFWSServiceImpl.java, which is been used @ run time.
    FYI: All these files are present on ear file.

  • XML Error while calling webservice from oracle function.

    I am getting an error while I am trying to call webservice from oracle function. Any ideas? Thanks.
    select get_new_string ('proxy:80', 'http://xxx/PatternVariations/SourceTest/WebMethods','Scott') from dual
    ERROR at line 1:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00225: end-element tag "H4" does not match start-element tag "P"
    Error at line 9
    ORA-06512: at "SYS.XMLTYPE", line 0
    ORA-06512: at "DORSBP00.DEMO_SOAP", line 82
    ORA-06512: at "DORSBP00.GET_NEW_STRING", line 11

    The error message implies that the web service is returning something that is not well formed xml. Can you verify what is being returned by the web service call

  • Error message in BAPI call

    I have imported RFC Interfaces from SAP system. Each interfaces doesn't  have fault message.
    How to get error message in BAPI call when error occurs?
    I can catch an exception in BPM but I need to get error message and send it to another system.

    Hi Denis,
    >>>I have imported RFC Interfaces from SAP system. Each interfaces doesn't have fault message.
    if you want to use fault messages
    consider using ABAP Proxies
    >>>>How to get error message in BAPI call when error occurs?
    most bapis have return table in which they
    return error messages (you can do it either
    in a sync way or in an async way if the call is too long - with corrlelation of course)
    Regards,
    michal

  • Error when call webservice on servlet

    Hi All,
    I'm having a problem when calling webservice inside the servlet on the WebLogic environment.
    My code:
    * Webservice:
    package ws;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Date;
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebService;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.sql.DataSource;
    @WebService
    public class getData {
    public getData() {
    super();
    @WebMethod
    public String getHello() {
    return "HELLO HELLO";
    private Connection getConn() throws NamingException, SQLException {
    InitialContext ic = new InitialContext();
    DataSource ds = (DataSource)ic.lookup("jdbc/hnxwebsite");
    //System.out.println("POOL !!!!");
    Connection con = ds.getConnection();
    con.setAutoCommit(false);
    return con;
    @WebMethod
    public String getIndexData(@WebParam(name="param") String param) {
    StringBuffer sb = new StringBuffer();
    String sql =
    "Select * From idx_index_info iii where iii.index_code= ?";
    Connection con = null;
    PreparedStatement pstmt = null;
    ResultSet rs = null;
    try {
    con = getConn();
    pstmt = con.prepareStatement(sql);
    pstmt.setString(1, param);
    rs = pstmt.executeQuery();
    int columnCount = rs.getMetaData().getColumnCount();
    Object val;
    while (rs.next()) {
    for (int i = 1; i < columnCount; i++) {
    //System.out.println(i);
    val = rs.getObject(i);
    if (val != null)
    sb.append(val.toString() + "\n");
    } catch (SQLException e) {
    e.printStackTrace();
    } catch (NamingException e) {
    e.printStackTrace();
    } finally {
    try {
    if (rs != null)
    rs.close();
    if (pstmt != null)
    pstmt.close();
    if (con != null)
    con.close();
    } catch (Exception e) {
    e.printStackTrace();
    String str = sb.toString();
    int len = str.length();
    //System.out.println("LENGTH >>>>"+len);
    return str;
    public static void main(String[] arg) {
    Date date = new Date();
    System.out.println(date.toGMTString());
    getData gd = new getData();
    System.out.println(date.toGMTString());
    //System.out.println(gd.getIndexData("ACB"));
    * WebClient:
    package hnx;
    import java.util.Date;
    import java.util.Map;
    import javax.xml.namespace.QName;
    import javax.xml.soap.MessageFactory;
    import javax.xml.soap.SOAPBody;
    import javax.xml.soap.SOAPBodyElement;
    import javax.xml.soap.SOAPElement;
    import javax.xml.soap.SOAPMessage;
    import javax.xml.ws.BindingProvider;
    import javax.xml.ws.Dispatch;
    import javax.xml.ws.Service;
    import javax.xml.ws.WebServiceException;
    import javax.xml.ws.soap.SOAPBinding;
    public class wsClient {
    public wsClient() {
    super();
    public String procWeb() {
    String strmsg = null;
    try {
    QName serviceName = new QName("http://192.168.60.18:7001/","getDataService");
    // QName for Port As defined in wsdl.
    QName portName = new QName("http://192.168.60.18:7001/","getDataPort");
    // //Endpoint Address
    String endpointAddress = "http://192.168.60.18:7001/WsIndex/getDataPort?wsdl";
    // Create a dynamic Service instance
    Service service = Service.create(serviceName);
    service.addPort(portName, SOAPBinding.SOAP11HTTP_BINDING,
    endpointAddress);
    // Create a dispatch instance
    Dispatch<SOAPMessage> dispatch = service.createDispatch(portName,
    SOAPMessage.class, Service.Mode.MESSAGE);
    // Use Dispatch as BindingProvider
    BindingProvider bp = (BindingProvider) dispatch;
    // Optionally Configure RequestContext to send SOAPAction HTTP Header
    Map<String, Object> rc = bp.getRequestContext();
    rc.put(BindingProvider.SOAPACTION_USE_PROPERTY, Boolean.TRUE);
    rc.put(BindingProvider.SOAPACTION_URI_PROPERTY, "http://ws/");
    // Obtain a preconfigured SAAJ MessageFactory
    MessageFactory factory = ((SOAPBinding) bp.getBinding())
    .getMessageFactory();
    // Create SOAPMessage Request
    SOAPMessage request = factory.createMessage();
    // Request Body
    SOAPBody body = request.getSOAPBody();
    // Compose the soap:Body payload
    QName payloadName = new QName("http://ws/", "getIndexData","ns1");
    SOAPBodyElement payload = body.addBodyElement(payloadName);
    SOAPElement message = payload.addChildElement( "param");
    message.addTextNode("HNX302");
    request.saveChanges();
    // Invoke the endpoint synchronously
    System.out.println(message);
    SOAPMessage reply = null;
    try { // Invoke Endpoint Operation and read response
    reply = dispatch.invoke(request);
    } catch (WebServiceException wse) {
    wse.printStackTrace();
    // process the reply
    SOAPBody bodyRes = reply.getSOAPBody();
    SOAPBodyElement nextSoapBodyElement = (SOAPBodyElement) bodyRes
    .getChildElements().next();
    SOAPElement soapElement = (SOAPElement) nextSoapBodyElement
    .getChildElements().next();
    strmsg = soapElement.getValue();
    System.out.println("AAA >>"+strmsg);
    } catch (Exception wse) {
    wse.printStackTrace();
    return strmsg;
    public static void main(String[] arg) {
    wsClient ws = new wsClient();
    Date date = new Date();
    System.out.println(date.toGMTString());
    System.out.println(ws.procWeb());
    System.out.println(date.toGMTString());
    * Servlet:
    package hnx;
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import ws.GetData;
    import ws.GetDataPortClient;
    import ws.GetDataService;
    public class getIndex extends HttpServlet {
    private static final String CONTENT_TYPE = "text/html; charset=UTF-8";
    public void init(ServletConfig config) throws ServletException {
    super.init(config);
    public void doPost(HttpServletRequest request,
    HttpServletResponse response) throws ServletException,
    IOException {
    doGet(request, response);
    public void doGet(HttpServletRequest request,
    HttpServletResponse response) throws ServletException,
    IOException {
    response.reset();
    response.flushBuffer();
    response.setContentType(CONTENT_TYPE);
    PrintWriter out = response.getWriter();
    // GetDataService service = new GetDataService();
    // GetData getData = service.getGetDataPort();
    // String str = getData.getIndexData("HNX302");
    // int length = str.length();
    // response.setContentLength(length);
    wsClient ws = new wsClient();
    String str = ws.procWeb();
    try {
    out.println(str);
    } catch (Exception e) {
    e.printStackTrace();
    out.close();
    ERROR: >>>>>[Another instance of the application is running on the server.  JDeveloper redeploy the application.]
    [Application SClient stopped but not undeployed from Server Instance IntegratedWebLogicServer]
    [Running application SClient on Server Instance IntegratedWebLogicServer...]
    [03:41:48 PM] ---- Deployment started. ----
    [03:41:48 PM] Target platform is (Weblogic 10.3).
    [03:41:48 PM] Retrieving existing application information
    [03:41:48 PM] Running dependency analysis...
    [03:41:48 PM] Deploying 2 profiles...
    [03:41:48 PM] Wrote Web Application Module to C:\Users\W7\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\SClient\sgetDataWebApp.war
    [03:41:48 PM] Wrote Enterprise Application Module to C:\Users\W7\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\SClient
    [03:41:49 PM] Redeploying Application...
    [03:41:49 PM] Application Redeployed Successfully.
    [03:41:49 PM] The following URL context root(s) were defined and can be used as a starting point to test your application:
    [03:41:49 PM] http://192.168.9.100:7101/SClient
    [03:41:49 PM] Elapsed time for deployment: 1 second
    [03:41:49 PM] ---- Deployment finished. ----
    Run startup time: 1380 ms.
    [Application SClient deployed to Server Instance IntegratedWebLogicServer]
    Target URL -- http://127.0.0.1:7101/SClient/getindex
    [param: null]
    javax.xml.ws.WebServiceException: com.ctc.wstx.exc.WstxIOException: Exceeding stated content length of 228
         at com.sun.xml.ws.encoding.StreamSOAPCodec.encode(StreamSOAPCodec.java:117)
         at com.sun.xml.ws.encoding.SOAPBindingCodec.encode(SOAPBindingCodec.java:258)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:165)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:101)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:604)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:563)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:548)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:445)
         at com.sun.xml.ws.client.Stub.process(Stub.java:248)
         at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:189)
         at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:215)
         at hnx.wsClient.procWeb(wsClient.java:75)
         at hnx.getIndex.doGet(getIndex.java:40)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: com.ctc.wstx.exc.WstxIOException: Exceeding stated content length of 228
         at com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1687)
         at com.ctc.wstx.sw.BaseStreamWriter.writeEndDocument(BaseStreamWriter.java:585)
         at com.sun.xml.ws.message.saaj.SAAJMessage.writeTo(SAAJMessage.java:396)
         at com.sun.xml.ws.encoding.StreamSOAPCodec.encode(StreamSOAPCodec.java:114)
         ... 29 more
    Caused by: java.net.ProtocolException: Exceeding stated content length of 228
         at weblogic.net.http.ContentLengthOutputStream.write(ContentLengthOutputStream.java:39)
         at com.ctc.wstx.io.UTF8Writer.flush(UTF8Writer.java:96)
         at com.ctc.wstx.sw.BufferingXmlWriter.flush(BufferingXmlWriter.java:214)
         at com.ctc.wstx.sw.BufferingXmlWriter.close(BufferingXmlWriter.java:194)
         at com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1685)
         ... 32 more
    java.lang.NullPointerException
         at hnx.wsClient.procWeb(wsClient.java:82)
         at hnx.getIndex.doGet(getIndex.java:40)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Can anyone help?
    Thanks in advance.
    LTThoi

    I'm no webservices/servlet expert , but can you check the obvious out here -
    javax.xml.ws.WebServiceException: com.ctc.wstx.exc.WstxIOException: Exceeding stated content length of 228
    at ......
    at hnx.wsClient.procWeb(wsClient.java:75)+ // check if you are passign something thats more than 228 chars
    at hnx.getIndex.doGet(getIndex.java:40)

  • ABAP calling Webservice

    Hello,
    Please guide me how i can call webservice i.e EJB develped in Java Stack from ABAP program.
    Please let me know if some blog is avalabilbe for same.
    Thanks a lot in advance.
    regards,
    Vikrant

    hi
    you can refer to these threads
    Re: Access EJB from SAP system
    Re: How do i call web services from SAP ABAP
    hope they help you
    regards
    Aakash Banga

  • How to call webservice?

    Hello,
    i am trying to call webservice.i tryed  following code for calling webservices via actionscript.it is givind the response.but it is not giving correct response.
    is this correct way to call webservice?is there other way to call webservice?can anybody tell me,how to call webservice?
    <mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”vertical” width=”420″ height=”380″ xmlns:net=”flash.net.*”>
    <mx:Script><![CDATA[
    import mx.rpc.soap.LoadEvent;
    import mx.rpc.AbstractOperation;
    import mx.controls.Alert;
    import mx.rpc.events.FaultEvent;
    import mx.rpc.events.ResultEvent;
    import mx.rpc.soap.Operation;
    import mx.rpc.soap.WebService;
    private var serviceURL:String = "http://localhost:7080/icon-ws/services";
    private var wsdlURL:String = "http://localhost:7080/icon-ws/bulkUpload.wsdl";
    private function callWS():void {
    var service:WebService = new WebService(serviceURL, serviceURL);
    service.wsdl = wsdlURL;
    service.loadWSDL();
    var oper:Operation = service.getOperation("BulkUpload") as Operation;
    oper.addEventListener("result", resultHandler);
    oper.addEventListener("fault", faultHandler);
    oper.send();
    public function resultHandler(event:ResultEvent):void {
    Alert.show("Result returned"+ event.result.toString());
    public function faultHandler(event:FaultEvent):void {
    Alert.show("fault: "+ event.toString());
    ]]></mx:Script>
    <mx:Button id=”selectBut” label=”CALL webservice” click=”callWS()”/>
    </mx:Application>

    sorry for my english. I expect you understand me...
    I do that extended sp 
    Code Block
    use atdb_main_test
    Declare @Object as Int;
    Declare @ResponseText as Varchar(8000);
    DECLARE @login VARCHAR(50);
    DECLARE @user_passwd VARCHAR(50)
    Exec master..sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
    Exec master..sp_OAMethod @Object, 'open', NULL, 'get', 'http://172.xx.xx.xx:wwww/account.asmx?op=CreateEquipementMacAddress', 'false'
    EXEC master..sp_OASetProperty @Object, 'user_login', @login
    EXEC master..sp_OASetProperty @Object, 'user_passwd', @user_passwd
    EXEC master..sp_OASetProperty @Object, 'p_nb_poste', 1
    EXEC master..sp_OASetProperty @Object, 'p_id_site', 91400
    EXEC master..sp_OASetProperty @Object, 'p_id_type_poste', 83
    EXEC master..sp_OASetProperty @Object, 'p_adresse_mac', null
    EXEC master..sp_OASetProperty @Object, 'p_num_serie', null
    EXEC master..sp_OASetProperty @Object, 'login', null
    EXEC master..sp_OASetProperty @Object, 'passwd', null
    EXEC master..sp_OASetProperty @Object, 'default_gateway', null
    EXEC master..sp_OASetProperty @Object, 'ip', null
    EXEC master..sp_OASetProperty @Object, 'bCreateIPPhone', 'false'
    EXEC master..sp_OASetProperty @Object, 'vlanId', 0
    Exec master..sp_OAMethod @Object, 'send'
    Exec master..sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT
    Select @ResponseText as ResponseText
    Exec master..sp_OADestroy @Object
    I use a SQL server 2000 and don't do anything else.
    But it doesn't work
    I don't know what to do ...
    the message is (1 row affected) but no tupple is written in my db...
    can you help me please ?

  • How to call webservice using jdev9i

    Hi gurus and experts,
    i need to consume a webservice using oaf. with great effort finally i created stub using axis s/w.
    now i dont know how to use the stub in jdev.where to write the code and what to write.iam strucked :-( .
    since there were no sample tutorial about how to call webservice from jdev9i, iam struggling to make.iam jus a starter.
    and while googling i came to know that stubs can be created using jdev9i .but when i see new-->webservices--web service stub it is greyed out.
    i have 2 questions now:
    1)if stub created using axis can it be used in jdev9i? if yes ,please tell me how? any tutorial links also helps me.
    2)if the stubs should be created only by jdev9i so that webservices can be called using jdev,then please guide me how to make it.
    i need some helping hands from u guys.
    Thanks a lot
    Edited by: 881533 on Oct 25, 2011 2:34 AM
    Edited by: 881533 on Oct 25, 2011 2:37 AM

    Hello sir,
    i got following reply:
    <returnRecordResponse  xmlns="http://xyz" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <returnResult>Error_request</returnResult>
    </returnRecordResponse>
    but correct response is
    <returnRecordResponse  xmlns="http://xyz" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <returnResult>Success</returnResult>
    </returnRecordResponse>
    can you tell me correction in the code which i have put on the forum?or tell me other way to call webservice?

  • How to call webservice using flex?

    Hello,
    i want to call webservice in flex.i tryied following code.but it is not giving correct response.what is wrong with this code?
    can anybody tell me ,how to call webservice in flex?
    Code:
    <mx:Script>
            <![CDATA[
    public function button1_clickHandler(event):void
         ws.returnRecord(para1,para2);//i am sending two parameter to returnRecord service here
    public function remotingCFCHandler(event:ResultEvent):void
    trace(event.result);
    ]]>
    </mx:Script>
    <mx:WebService
         id="ws"
         wsdl="http://localhost:8500/flexapp/returnusers.cfc?wsdl">
        <mx:operation name="returnRecords" resultFormat="object"
         fault="mx.controls.Alert.show(event.fault.faultString)"
         result="remotingCFCHandler(event)"/>
    <mx:Button label="Go" fontWeight="bold" click="button1_clickHandler(event)"/>

    Hello sir,
    i got following reply:
    <returnRecordResponse  xmlns="http://xyz" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <returnResult>Error_request</returnResult>
    </returnRecordResponse>
    but correct response is
    <returnRecordResponse  xmlns="http://xyz" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <returnResult>Success</returnResult>
    </returnRecordResponse>
    can you tell me correction in the code which i have put on the forum?or tell me other way to call webservice?

  • How to call webservice for each record in a table using ODI

    Hi
    I am new to ODI and Webservice. I want to invoke a scenario in ODI using web service. I hava a weblogic application server with axis 2 deployed.
    But I want call webservice for each record in a table
    For eg: "EMP" table have 50 records, for each record web service should invoke
    Can any one help me on it.
    Thanks,
    phani
    Edited by: user12774166 on Jun 6, 2010 11:16 PM

    If your goal is "call" a web service, Jason's Straub's [flex-ws-api|https://flex-ws-api.samplecode.oracle.com/] is by far the best I've seen. You might want read more about it on [his blog|http://jastraub.blogspot.com/search?q=+flex_ws_api+].
    Tyler Muth
    http://tylermuth.wordpress.com
    [Applied Oracle Security: Developing Secure Database and Middleware Environments|http://sn.im/aos.book]

  • How to Call Webservice in Portal Component?

    Hi Experts,
        Currently, I have a URL of WSDL file, how can I consume this webservice in portal component. I know that we can call webservice via webdynpro application/standalone proxy/deployable proxy, but it seems different in portal component.
       Thanks & Best Regards,
       James

    Accessing an External Web Services in Portal
    Accessing an External Web Services in Portal
    http://help.sap.com/saphelp_nw04/helpdata/en/e9/ae1b9a5d2cef4ea4b579f19d902871/content.htm
    Consuming Web Service from ABAP
    Consuming Web Service from ABAP

  • Howto bapi calls

    Hello,
    I am working on a scenario in which a client (abap proxy) sends a message to the integration server, which dispatches the messages to an rfc-adapter, an bapi call.
    Therefore I have read the tutorial, which can be found on this site, but unfortunately I have run into problems. Maybe someone can help me at this point. This is what I did:
    1.I have imported the BAPI_FLIGHT_CHECKAVAILABILITY as suggested in the tutorial.
    2. I created an Message interface named: U2_BAPI_IF
    3. For the output message I have chosen: BAPI_FLIGHT_CHECKAVAILABILITY and for the input:
    BAPI_FLIGHT_CHECKAVAILABILITY.Response. I have left the fault message field empty.
    4. I did no message mapping, since I want to work with the BAPI Response structure in the abap proxy.
    5. The Message interface is defined as outbound synchron.
    6.In the Integration Directory I created a Receiver Determination with a Service as a sender, the message interface is U2_BAPI_IF. Additionally I configured a "configured receiver" the client with the BAPI.
    7.I created a Interface Determination, for the sender the same entries as above and for the configured Inbound Interface I have chosen BAPI_FLIGHT_CHECKAVAILABILITY and the receiver client
    8.I created a receiver agreement.
    9. Saved the change list.
    10. I have generated the abap proxy for the message interface U2_BAPI_IF, without problems
    11. I created the following abap program:
    data: lv_msg_raus TYPE ZU2_BAPI_IF_BAPI_FLIGHT_CHECK1,
          lo_proxy TYPE REF TO ZCO_U2_BAPI_IF,
          lv_msg_rein TYPE ZU2_BAPI_IF_BAPI_FLIGHT_CHECKA.
          lv_msg_raus-AIRLINEID = 'AA'.
          lv_msg_raus-CONNECTIONID = '0017'.
          lv_msg_raus-FLIGHTDATE = '20040801'.
          create object lo_proxy.
          call method lo_proxy->execute_synchronous
            exporting
              OUTPUT = lv_msg_raus
            importing
              INPUT = lv_msg_rein.
    12. I execute the program and I receive the following error:INTERFACE_REGISTRATION_ERROR, the SAP Stack says:
    <SAP:Stack>No implementing class registered for the interface (type ifmmessif, name BAPI_FLIGHT_CHECKAVAILIBILITY, namespace urn:sap-com:document:sap:rfc:functions )</SAP:Stack>
    So now my question, do I have to implement a class (proxy) on the receiver side to receive the message and pass it then via bapi call myself, or did I something totally wrong?
    I hope somebody can help me,
    Thanks
    Oliver

    Hi Oliver,
    I was wondering if you finally got this scenario to work, if Yes. Could you explain how did yo manage to (solve your problem)setup your scenario as described in your earlier note?
    Thanks,
    Rob.

  • Bapi call in abap proxy reaching dialog timeout in async scenario

    Hi all,
    We have an XI interface to create sales orders. Legacy app sends a soap message async to XI with a group of orders. XI sends this group of orders to an Abap proxy async on ECC side. Into this Abap proxy we have a loop to process each order received in the group with BAPI_SALESORDER_CREATEFROMDAT2. Ending the loop, abap proxy start another async process to send the response to XI with an outbound abap proxy, and the response is redirected by XI to Legacy app.
    The problem is, this group of orders can have two or two thousand orders... so, the async process guarantee that no timeout limit will be reached. This is working for the whole process. But when this BAPI is creating an order, the time out of BAPIs execution seems to be the same as the timeout of dialog processes (now set to 10 minutes). This is our problem. Some orders spend more than 10 minutes to process (orders with five hundreds items, for example)... when this occurs, BAPI throws a time out reached error and the async process stops on the inbound queue with status sysfail.
    We are now trying to understand why this timeout is been triggered by the BAPI. As it is running into an Async process, it should execute without any kind of timeout limits...
    If anybody has any idea, please, help us.
    Thank you.
    regards.
    roberti

    May be I was not so clear... the total spent time in the process can be many many hours, days, etc... no timeout is reached. I can post 10.000 orders, no timeout is reached. The problem is that if the processing of only one order with BAPI_SALESORDER_CREATEFROMDAT2 takes longer than 10 minutes, then the timeout is reached. This is the strange part. The processing of the bapi seems to get the same timeout of dialog processes, we already tested increasing the dialog process timeout and the timeout of bapi execution was the same...
    We already monitor on SE66 to see if it opens a dialog process to execute the bapi call function, but it does not.
    If anyone has any tip, please, provide us.
    Thanks!
    roberti

  • Integration Process not continuing after Synchronous BAPI call

    I have an integration process that splits up a batch file of purchase orders into single purchase order messages. This allows me to use the "ForEach" block to call the synchronous BAPI_PO_CREATE1.
    I have managed to get the process to call the BAPI and create the purchase order. The response message arrives back though the abstract synchronous interface and is mapped to the asyncronous response message. After that the process seems to hold where I am expecting it to continue on the process and be appended to a container storage list for mapping to a single return message.
    I have not set up any correlation sets as I thought they wouldn't be needed for a sychronous call.
    Has anyone got any advice on my approach to this process and how I might fix it.
    Thanks in advance

    Hi Bhavesh,
    There are no errors as such in the SXMB_MONI but it gets as far as the Inbound Message (PE_ADAPTER) stage after the Sych BAPI call.
    Also the SOAP Header at this stage seems to be missing "sysnchronous" or "asynchronous" in the  SAP:ProcessingMode tags.
    The technical workflow is as follows
    FTP Batch file outbound to Integratin Process Receive (Async)
    Transform message into a Multiline list of BAPI_PO_CREATE1.request (async abstract)
    Enter "For Each" Block using the multiline list.
    BAPI_PO_CREATE1 mapped to synchronous abstract interface
    synchronous abstract interface mapped to BAPI_PO_CREATE.request and response
    BAPI_PO_CREATE.response mapped to async BAPI_PO_CREATE.response
    async BAPI_PO_CREATE.response appended to multiline list
    Exit block
    Transform multiline response list into single line response
    FTP inbound
    As far as I can make out I have not correctly configured the receiver of PO_CREATE1.response after it has been mapped from the sync to async so it just persists it and sits there waiting or it is waiting for somethign else to happen.
    Let me know if I can clarify anything further.
    Thanks
    Ben

  • Problem with mutiple BAPI calls during the commit

    Hi all,
    I am trying to create accounts for a given partner i the transaction F9K1 using the BAPI BAPI_BKK_ACCNT_CREATE. After calling the BAPI I am committing it too.
    The problem is if I try to create multiple accounts like RCA, ACA, MCA, IOE and so on, the first time the BAPI is called to create RCA account it is successful an it is even committing. When I call the BAPI to create the the ACA account the return table from the BAPI shows success message but the commit fails. If I restart the program and try creation of accounts now the RCA will throw a error msg saying account already exist, ACA account will be created and then the MCA account creation fails in the same manner explained above.
    I see the issue is with multiple BAPI calls and I tried using all sort of methods like clearing buffers, start new task in local and wait command and all.  But none of them seems to be working for me.
    Can anyone please guide me on how I can overcome this problem.
    Thanks.

    BAPI :
    BAPI BAPI_BKK_ACCNT_CREATE
    Functionality
    Use this method to create an account in Bank Customer Accounts. This method returns the following values:
    Identification details for the newly created account such as the internal and the external account number, and the bank area details
    A table containing error messages
    To create an account by using this method, you must specify values for the import parameters Bank Area (BANKAREA) and Product (PRODUCTNAME).
    Note: You must also specify a value in the External Account Number (EXTERNALACCOUNTNR) parameter if you have defined an external number range for the bank .
    REgards,
    Jayan.

Maybe you are looking for