Parallel processing of webservice calls in ABAP Proxy

Within an ABAP Proxy I want to call multiple services in parallel. My thougth was to encapsulate the webservice calls in RFC function modules and then to use "CALL FUNCTION STARTING NEW TASK ..." but anyhow I am wondering if it is possible to use a form within ABAP proxy to collect the RECEIVE data from the modules.

The Problem was caused by the response of the external AXIS  WebService which contains a multiRef element in the SOAP
body which is not supported by SAP simple transformation.
The multiRef  was switched off on AXIS.

Similar Messages

  • How can I call a ABAP proxy class from BADI? PLease help

    hi Experts,
        I have a scenario where I have to call a ABAP proxy class from a BADI. How can I do this? Does anybody has sample code for the same?
    Please help.
    Thanks
    Gopal

    Hi,
       You can call a method of a class from BADI. Here are the steps.
       1) In the BADI implementation create a object for the proxy class.
       2) Call the Execute_Synchronous method.
        You can define a BADI by using SE18 and you can implement it by using SE19.
    Sample code...
    ================================================
      METHOD ZIF_EX_VBADI~CONVERTUPPER.
      DATA: OBJ TYPE REF TO ZTESTCLASS.
      DATA: IT_DATA  TYPE ZIN_MT,
                IT_RES   TYPE ZOUT_MT,
                SEXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT.
      TRY.
          CREATE OBJECT OBJ
             EXPORTING
                 LOGICAL_PORT_NAME = 'TESTPORT'.
      CATCH CX_AI_SYSTEM_FAULT INTO SEXCEPTION.
      ENDTRY.
    ENDMETHOD.
    ================================================
    Thanks,
    Vivek LR

  • How to call a ABAP proxy class from a BADI? Please help!

    hi Experts,
        I have a scenario where I have to call a ABAP proxy class from a BADI. How can I do this? Does anybody has sample code for the same?
    Please help.
    Thanks
    Gopal

    Hi Gopal,
    Check this out
    DATA: ref_obj    TYPE REF TO zmfg_production_ord.----> BADI
    * Instantiate the proxy class
        CREATE OBJECT ref_obj.
        TRY.
            CALL METHOD ref_obj->execute_asynchronous
              EXPORTING
                output = it_output.     "Output Structure
            COMMIT WORK.
          CATCH cx_ai_system_fault INTO ref_sysexception.
        ENDTRY.
        IF  ref_sysexception IS INITIAL.
          WRITE : / 'Error Message'.
        ENDIF.
    Edited by: Raj on May 28, 2008 4:52 PM

  • 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

  • Double call of abap proxy client

    Hi expert,
    I have a scenario which an abap program will send a data to third party web service via sender abap proxy. I notice some of the message was double in sxmb_moni which should be called 1 time. Any idea why this happen? Abaper said that the abap program only call my proxy client 1 time. Thanks.

    Hi,
    Any possible the abap proxy send double message?
    There is no way for this to happen.
    Either your report for proxy ran twice consecutively or the proxy call method is in loop in report.
    Sice u said that only 1 time it happened, i think th proxy call method is not in loop , and may be report ran twice.
    Please check the ABAP code if any loop is there or proxy called twice in the report..
    Babu

  • Webservice call from Abap

    Hi
    <u>ABAP:</u>
    I wish to know ,Do we need to configure SNC for calling an Abap side webservice using X509 certificate ?I m calling webservice from Abap.I created a certificate through VisualAdministrator and asign it to R/3 in STRUST transaction.Now can I pass it to my Webservice so that it should not ask for user/password.Any other way ,if u can suggest for the same,is welcome.
    <u>JAVA:</u>
    If  i need to do the same with J2EE WAS webservice-then will the steps vary,as i feel no SNC can be configured in J2EE WAS.
    Regards
    Dhanya

    Hi,
      Besides that i think you can do it by configuring the ITS and calling the webservice by means of using BSP applications in ABAP .
    Regards
    Abhishek
    Message was edited by: Abhishek Raj

  • Calling an abap proxy on PI itself

    We have a situation where we maintain tables in PI for logging etc... and we want to be able to update these from an inbound message. My plan was to create a proxy on PI itself map to it and call it via the XI adapter, but I get
    Loop in message flow found: system is.00.sappi-dev-d1, pipeline CENTRAL with inbound adapter XI already processed
    because of course it is trying to put the same message id back in the pipeline for processing
    So, is this not possible? Should I just use the RFC adapter and create a function in abap?
    thanks for ideas.
    regards,
    chris

    Hi,
    >>>So, is this not possible? Should I just use the RFC adapter and create a function in abap?
    no it's not  possible unless you create a seperate client on PI which can be used for proxies then
    Regards,
    Michal Krawczyk

  • Webservice calling through abap

    Hi!
    I need to know how to triger or call a webservice with abap?
    Imagine there is a webservice existing I need a way to call it via abap
    Thanks
    Ilhan ertas

    Hi
    look at this pdf for the same
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a4433436-0301-0010-f2a9-9281ad574054
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/244e7923-0a01-0010-5887-fe0b0c6dbb8d
    Regards
    Abhishek

  • SAP PI 7.4 SOAP - ABAP Proxy Synchronous Webservice

    Hi Everyone,
    I am developing the following scenario:
    3rd party makes a SOAP call to SAP (via PI) to determine whether a vendor exists or not in the SAP system. The link for the call is provided by us from the Integrated Configuration.
    The request comes in, calls an ABAP Proxy to check if a vendor exists and sends a response back to the SOAP call with a 'Y' or an 'N'.
    I've read a lot about various scenarios but I'm having trouble connecting the dots as I'm fairly new to PI. I'd appreciate any help.
    I've made the following set-up based on assuming I need separate Service Interfaces for the SOAP Request & Proxy Response
    ESR
    1. Message Types
         SOAP (MT_SOAP_REQ & MT_SOAP_RESP) - PROXY (MT_PRXY_REQ & MT_PRXY_REQ)
    2.  Message Mappings
         MM_REQUEST    which maps MT_SOAP_REQ   to  MT_PRXY_REQ)
         MM_RESPONSE which maps MT_PRXY_RESP   to MT_SOAP_RESP)
    3. Service Interfaces (Synchronous)
        (SOAP Request)
        SI_IN (Inbound Interface)       with Request = MT_SOAP_REQ and Response = MT_SOAP_RESP
       (Proxy Response)
        SI_OUT (Outbound Interface) with Request = MT_PRXY_REQ and Response  = MT_PRXY_RESP 
    4. Operation Mapping
        OM_LOOKUP which maps SI_IN to SI_OUT with Request    (MT_SOAP_REQ  to MT_PRXY_REQ)
                                                                        and  Response (MT_SOAP_RESP to MT_PRXY_RESP)
    I create the ABAP Proxies for each Service Interface. SI_IN contains the required coded method to check if there is a vendor.
    I create the webservice and binding for SI_IN in SOAMANAGER
    At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation)  to get the response.
    ID
    In the Integration Directory I've created a SOAP_SENDER communication channel for System A and SOAP_RECEIVER channel for SAP.  For the SOAP Receiver I need to specify a URL - what should this be ? Is it meant to point to the web service for SI_IN in SICF or just to the generic http://host:8000/sap/xi/engine?type=entry 
    Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
    I created an Integrated Configuration for the SI_IN Service Interface with comm channel SOAP_SENDER from System A and SOAP_RECEIVER for SAP backend.  I then got the WSDL for this to provide to the 3rd Party to test (via SOAP UI)  . Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
    I appreciate you taking the time to go through this .  Any help is greatly appreciated.
    Thanks very much
    Gary

    I create the webservice and binding for SI_IN in SOAMANAGER
    At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation)  to get the response.
    >>>>No need to do anything in SOAMANAGER
    Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
    >>> No. Soap adapter is fine. Configure your receiver channel as explianed in the below blog (section 4.3)
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70066f78-7794-2c10-2e8c-cb967cef407b?overridelayout=t…
    Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
    >>>>Your receiver determination and interface determination takes care of this.(receiver interface  & outbound processing tabs in ICo)

  • ABAP Proxy: Error calling Proxy

    Hi guys,
    Here I am with another amazing mistake.....
    After searching the forum, reading some suggestions, notes, I'm a little bit lost on how to figure out what is wrong...
    I've created a receiver ABAP Proxy. XI should call this proxy and receive the consequent response.....
    I've tested the ABAP Proxy, everything is working fine...I've encountered some errors but was able to bypass them... But this one is getting hard...I've found one or two similar threads, or with the same error description but I had no luck in overcoming the error....
    So, what is the problem....:
    When XI is calling the ABAP Proxy I get:
    <SAP:Category>XIServer</SAP:Category>
    <SAP:Code area="INTERNAL">EXCHANGE_PROFILE_ACCESS</SAP:Code>
    <SAP:Stack>Error while reading exchange profile for system DEV and client 100</SAP:Stack>
    I've searched the exchange profile but everything seems ok...
    The user has all (and more) the authorizations needed....
    Can you guys give me some hints? Or suggest any attempt....?

    Kumar,
    as I said before, in SPROXY i can test the interface with no errors....
    In the Application System the sldcheck returns no errors and the RFC Destinations return no errors on the connection tests...
    I really can't understand what this problem might be...
    Problem solved
    What was it? Well, I'm really not sure...Like most of the threads related to this topic it's quite an awkward problem....I've tested some RFC connections which were created, changed some parameters, restarted the system and voila....
    Thanks
    Message was edited by:
            Gonçalo Mouro Vaz

  • Call ABAP-Proxy with SOAP adapter?

    Hi all,
    for a PI7.1-scenario I would like to use the Lookup-API in mapping. As I know I can use either RFC or SOAP channels, however I would rather call an ABAP-Proxy in my backend system instead.
    So my question is: Is it technically possible to use the SOAP-adapter to call an ABAP-Proxy?
    Your help would be appreciated, best regards
    David

    Hi Stefan,
    Interesting answer here and one that has got me curious. Hope you can help.
    1. When you say it is going to be possible to call a ABAP proxy using a  UDF in the mapping of XI ( Lookup ), would it be using the WS Adapter of PI 7.1?
    2. If 1 is yes, is there a new API code to do this, or is it the same lookup code as used previously in XI 3.0 and PI 7.0 Days?
    3. If 1 is no, can you explain maybe a little more on how this would be possible using the standard SOAP adapter of XI?
    Thanks a bunch.
    Regards
    Bhavesh

  • Java Proxy Generation not working - Support for Parallel Processing

    Hi Everyone,
    As per SAP Note 1230721 - Java Proxy Generation - Support for Parallel Processing, when we generate a java proxy from an interface we are supposed to get 2 archives (one for serial processing and another suffixed with "PARALLEL" for parallel processing of jaav proxies in JPR).
    https://websmp230.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=1230721
    We are on the correct patch level as per the Note, however when we generate java proxy from the IR for an outbound interface, it genrates only 1 zip archive (whose name we ourselves provide in the craete new archive section). This does not enable the parallel processsing of the messages in JPR.
    Could you please help me in this issue, and guide as to how archives can be generated for parallel processing.
    Thanks & Regards,
    Rosie Sasidharan.

    Hi,
    Thanks a lot for your reply, Prateek.
    I have already checked SAP Note 1142580 - "Java Proxy is not processing messages in parallel" where they ask to modify the ejb-jar.xml. However, on performing the change in ejb-jar.xml and while building the EAR, I get the following error:
    Error! The state of the source cache is INCONSISTENT for at least one of the request DCs. The build might produce incorrect results.
    Then, on going through the SAP Note 1142580 again, I realised that the SAP Note 1230721 also should be looked onto which will be needed for generating the Java proxy from Message Interfaces in IR for parallel processing.
    Kindly help me if any of you have worked on such a scenario.
    Thanks in advance,
    Regards,
    Rosie Sasidharan.

  • Question on Parallel Processing in ABAP

    Hi Experts,
    I am trying to process my records using Parallel Processing concept making calls to Remote Function Module.
    So, in simple terms it would look as shown below
    loop.
    call function <rfc_module> creating new task with <taskname>
    endloop.
    1. In the above scenario say it created 5 tasks.
    2. If one of the tasks have been failed because of timeout error then what happens to that task.
    In the below link it says that the dialog work proces can run only for 300 seconds.
    http://help.sap.com/saphelp_nw70/helpdata/en/fa/096e92543b11d1898e0000e8322d00/content.htm
    3. How do we track the task that has not been finished successfully?
    4. Does that throw an error?
    Thanks,
    Babu Kilari

    Here is an exmple from HELP
    TYPES: BEGIN OF task_type,
             name TYPE string,
             dest TYPE string,
           END OF task_type.
    DATA: snd_jobs  TYPE i,
          rcv_jobs  TYPE i,
          exc_flag  TYPE i,
          info      TYPE rfcsi,
          mess      TYPE c LENGTH 80,
          indx      TYPE c LENGTH 4,
          name      TYPE c LENGTH 8,
          task_list TYPE STANDARD TABLE OF task_type,
          task_wa   TYPE task_type.
    DO 10 TIMES.
      indx = sy-index.
      CONCATENATE 'Task' indx INTO name.
      CALL FUNCTION 'RFC_SYSTEM_INFO'
        STARTING NEW TASK name
        DESTINATION IN GROUP DEFAULT
        PERFORMING rfc_info ON END OF TASK
        EXCEPTIONS
          system_failure        = 1  MESSAGE mess
          communication_failure = 2  MESSAGE mess
          resource_failure      = 3.
      CASE sy-subrc.
        WHEN 0.
          snd_jobs = snd_jobs + 1.
        WHEN 1 OR 2.
          MESSAGE mess TYPE 'I'.
        WHEN 3.
          IF snd_jobs >= 1 AND
             exc_flag = 0.
            exc_flag = 1.
            WAIT UNTIL rcv_jobs >= snd_jobs
                 UP TO 5 SECONDS.
          ENDIF.
          IF sy-subrc = 0.
            exc_flag = 0.
          ELSE.
            MESSAGE 'Resource failure' TYPE 'I'.
          ENDIF.
        WHEN OTHERS.
          MESSAGE 'Other error' TYPE 'I'.
      ENDCASE.
    ENDDO.
    WAIT UNTIL rcv_jobs >= snd_jobs.
    LOOP AT task_list INTO task_wa.
      WRITE: / task_wa-name, task_wa-dest.
    ENDLOOP.
    FORM rfc_info USING name.
      task_wa-name = name.
      rcv_jobs = rcv_jobs + 1.
      RECEIVE RESULTS FROM FUNCTION 'RFC_SYSTEM_INFO'
        IMPORTING
          rfcsi_export = info
        EXCEPTIONS
          system_failure        = 1 MESSAGE mess
          communication_failure = 2 MESSAGE mess.
      IF sy-subrc = 0.
        task_wa-dest = info-rfcdest.
      ELSE.
        task_wa-dest = mess.
      ENDIF.
      APPEND task_wa TO task_list.
    ENDFORM.

  • Exception when calling ABAP Proxy modelled in SAP PI: CL_SOAP_RUNTIME_ROOT

    Hi,
    We have a scenario where we:
    1. Modell an interface in SAP PI
       This interface contains a complex type from a different namespace
    2. Use it to create an ABAP proxy in backend system
    3. Configure it with SOAManager
    4. Call the ABAP proxy ws directly from a third-party system (biztalk)
    We're currently testing calling the ABAP proxy from soapUI, but get a strange exception thrown by the SOAP framework in ABAP backend.
    The test in soapUI is setup by importing the WSDL acquired from SOAMANAGER.
    The error message we in the SOAP response is:
    CX_SY_REF_IS_INITIAL:Exception CX_SOAP_ROOT occurred
    (program: CL_SOAP_RUNTIME_ROOT==========CP, include: CL_SOAP_RUNTIME_ROOT==========CM004, line: 130)..
    An exception with the type CX_SY_REF_IS_INITIAL occurred, but was neither handled locally,
    nor declared in a RAISING clause.Dereferencing of the NULL reference
    It is a very low level error from the CL_SOAP_RUNTIME_ROOT program and not a descriptive error message at all.
    We've checked the user and the authorizations it has, we've redone the SOAManager config but the problem persists.
    We find no dumps in the ABAP proxy since the request never reaches it.
    For a limited time I'll make WSDL and SOAP response available
    WSDL (some values anonymized) available at http://dl.dropbox.com/u/4379928/SOAP/project.wsdl
    Complete SOAP response is available at http://dl.dropbox.com/u/4379928/SOAP/soap_data.xml
    Any ideas on where to look?

    Hi,
    We've now managed to implement a workaround.
    The workaround was to create the endpoint in PI as well.
    So that the traffic goes from third-party solution->PI-> WS-enabled ABAP Proxy
    When we did this initially, we got some errors related to the asynch method of this call, but this was resolved by changing the channel from "best effort" to "Guaranteed delivery". 
    Still we don't know what the root cause of the initial problem was, but we assume it is related to the asynch nature of the service (though we have other asynch proxies that work without problems).
    Regards
    Dagfinn

  • Get error "SoapFaultCode:1"Consume web service in ABAP proxy

    Hi All,
    I created a proxy and logical port to consume a BOBJ Data Service' webservice, when I tested the proxy I get exception:
    SoapFaultCode:1 without further more information.
    the wsdl is @ http://nspad372.dmzpal.sap.corp:8080/DataServices/servlet/webservices?ver=2.1&wsdlxml
    and the endpoint of that webservice is@ http://cnst50052835:8080/DataServices/servlet/webservices?ver=2.1
    By using SOAPUI I can successful call that webservice, but with ABAP proxy not. Can someone give me a help?
    thanks& bst regards,
    Bin

    Hi
    1.- check adding the host of the Service to your etc\hosts file unix case, or your DNS in case you have one.
    2.- Add the SOAP Action in the Logical Port Config (Obtain it from the WSDL info).
    Hope this help,
    Greetings.

Maybe you are looking for

  • Want jtable  to be refreshed...on change of the textfield change..

    The code is below and question follows the code : import java.sql.*; import javax.swing.border.*; import java.awt.event.*; import java.awt.*; import javax.swing.*; import javax.swing.table.*; import java.io.*; import java.util.*; import javax.swing.e

  • Troubles with Japanese/Korean Language Support

    First, I'm using Oracle Portal 3.0.9 - iAS 1.0.2.2. on Windows 2000 I have successfully loaded all the languages. The language portlet displays all available languages. Languages such as spanish, german or french render properly. When I try to render

  • How to obtain the number of words of a protected pdf file that can't be converted into a word file?

    I need to get the number of words of pdf files. I usually convert them into word files to get the word count. Some pdf files are protected and can't be converted into word files. Is there another way to get the number of words of these protected pdf

  • Failed: quicktime error -50

    I tried to share sending to apple tv and also used compressor for H.264 for apple tv and i keep getting a failed: quicktime error -50 ... i also tried to use compressor and make it a fast encode dvd and im getting errors also cannot figure out what i

  • I want to renew my membership

    Hello, I had the Adobe Creative Cloud Suite and I wanted to renew my service but its not allowing me to pull up my account. Can you please help