Arrayindexoutofbound exception in rfc

hello every body,
i am calling one abap function module from webdynpro.In
the function module , i have 3 importing parameters(employ no,name and status) and one table parameter.status is one of the importing parameter there i am passing the type of operation(insert,delete,display). for insert and delete it is working fine for the status,but when i am sending the status as display it is giving the following error(for display i want to display all the rows of the table in the view)
java.lang.ArrayIndexOutOfBoundsException: -1
     at com.sap.aii.proxy.framework.core.JcoBaseTypeDescriptor.getElementProperties(JcoBaseTypeDescriptor.java:420)
     at com.sap.aii.proxy.framework.core.JcoBaseTypeData.getElementValueAsString(JcoBaseTypeData.java:663)
     at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClass.getAttributeValueAsString(DynamicRFCModelClass.java:409)
     at com.sap.temp1.Ztemp_Dynpro2_Input.getEmpno(Ztemp_Dynpro2_Input.java:186)
     at com.sap.temp.wdp.IPublicTempapp$IZtemp_Dynpro2_InputElement.wdGetObject(IPublicTempapp.java:318)
     at com.sap.tc.webdynpro.progmodel.context.MappedNodeElement.wdGetObject(MappedNodeElement.java:351)
     at com.sap.tc.webdynpro.progmodel.context.AttributePointer.getObject(AttributePointer.java:140)
     at com.sap.tc.webdynpro.clientserver.data.DataContainer.getAndFormat(DataContainer.java:1012)
     at com.sap.tc.webdynpro.clientserver.data.DataContainer.getAndFormat(DataContainer.java:984)
     at com.sap.tc.webdynpro.clientserver.uielib.standard.impl.AbstractInputField.getValue(AbstractInputField.java:1096)
     at com.sap.tc.webdynpro.clientserver.uielib.standard.impl.AbstractInputField.getValue(AbstractInputField.java:1147)
     at com.sap.tc.webdynpro.clientimpl.html.uielib.standard.uradapter.InputFieldAdapter.getValue(InputFieldAdapter.java:550)
     at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.ie6.InputFieldRenderer.render(InputFieldRenderer.java:41)
     at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.AbstractRenderManager.render(AbstractRenderManager.java:285)
     at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.AbstractRenderManager.render(AbstractRenderManager.java:97)
     at com.sap.tc.

Hi Sreenivas,
After setting the parameters are you binding the instance of the model node to it?
Regards
Rohit

Similar Messages

  • XI exception in RFC adapter

    Hi,
    I have CRM (RFC) -> XI -> Third Party (HTTP call) scenario. Its a synchronous call in which the third party send a response back. My question is as below -
    Suppose call gets triggered from CRM successfully and it reaches the third party. The third party sends back a success response to XI. In XI the message fails in the mapping (or any other error). Generally I will catch the exception in RFC and i will know that the call failed in XI.
    But is there a way to know in CRM that the call has actually failed on the response leg and the request leg was successful? This is important to know because in this case the third party system has actually processed the message and the message should not be retriggered.
    The exception I get from RFC is same for both request and response failures in XI but I want to differenciate it in CRM.
    I know we can do it  using BPM. But i wanted to know is there other way of achieving this? I can define the Fault messages but they really are for the expections raised by third party. Here its not an exception from third party. The exception is from XI response leg of the sync message.
    Any help will be appreciated.
    Thanks,
    Rahul.

    Hi,
    Thanks for your response.
    Its not an mapping error. If it was, we would have fixed it as suggested by you
    Its failing with error - HTTPIO_PLG_CANCELED. And this is not a persistent error as far as I could figure out. (After few messages failed with this error, suddenly the interface started to work again). We are trying to get a permanent fix for that.
    But in any case, issues like these might come for various reasons. Hence I want to ensure that the source system (CRM) is notified of the 'real' error (stating that the message has actually reached the third party). We already have alerts for the failure notifications. But what we want to know in CRM is that the call has been processed in 3rd party system and it should not be retriggered from CRM.
    We can build 'manual procedures' around it so that first we check in XI and third party before re-triggering the call but wanted to know if we can get that message back to CRM.
    Is it possible to get such response if we use Proxies instead of RFCs?
    Thanks again.
    Regards,
    Rahul

  • Help with ArrayIndexOutOfBounds Exception

    Hi all,
    I am very new to programming in general and Java in particular. I'm working on a program from a book that is supposed to read 72 hourly readings of voltage and then print the mean voltage over that time period and any hours where the voltage varies from the mean by more than ten percent.
    I have an array set up that should have 72 elements created randomly, between 12000-14000. I'm getting an ArrayIndexOutOfBounds Exception when I try to run the program. So far as I understand, this means that somewhere in the program I'm trying to reference an array index that doesn't exist. I just can't see where that is! I've tried a couple different things to see if they've worked but have had no luck.
    I'm sure this is just a simple thing, but I'm feeling a little under the weather and I think my brain is pickled from looking at this code for too long. Any suggestions or ideas are gladly welcomed! I'll paste the code below to take a look at. Sorry if it's ugly or messy... I'm just figuring this stuff out still!
    Thanks so much-
    Heather
    import java.lang.*;
    import java.util.*;
    class VoltageReport {
    VoltageReport () throws IOException {
    System.out.println("Welcome to the voltage meter program!");
    //int place = 0;
    int MeterReadings[] = new int [71];
    int place = 0;
    for (int i = 0; i <= 71; i++) {
    //if (place == 72) break; thought this would do it, but it doesn't.
    MeterReadings[place] = (int) (Math.random()*2000+12000);
    place++;
    place = 0;
    int VoltageMean;
    VoltageMean = 0;
    for (int i = 0; i <= 71; i++) {
    VoltageMean = VoltageMean + MeterReadings[place];
    place++;
    place = 0;
    VoltageMean = VoltageMean / 72;
    for (int i = 0; i <= 71; i++) {
    if (MeterReadings[place] < (.9 * VoltageMean)) {
    System.out.println("Hour " + place + " is more than 10% lower than the " + "mean of " + VoltageMean + " .");
    else if (MeterReadings[place] > (.9 * VoltageMean)) {
    System.out.println("Hour " + place + " is more than 10% higher than the " + "mean of " + VoltageMean + " .");
    place++;
    System.out.println("That's all the information I have. Goodbye!"); }
    public static void main (String [] args) throws IOException {
    new VoltageReport();
    }

    if (MeterReadings[place] < (.9 * VoltageMean))
        System.out.println("Hour " + place + " is more than 10% lower than the " + "mean of " + VoltageMean + " .");
    else if (MeterReadings[place] > (.9 * VoltageMean))
        System.out.println("Hour " + place + " is more than 10% higher than the " + "mean of " + VoltageMean + " .");The problem lies in the else-if. You are checking if the voltage is over 90% of the mean. I think you want to check if it is over 110% of(10% over) the mean.
    else if(MeterReadings[place] > (1.1 * VoltageMean))
    ....And a few other things.
    Arrays
    int[] temp = new int[5]; // you have indexes (indices?) 0, 1, 2, 3 & 4 is the last one
    // Count them, there is 5 there.  Since we always start at 0, the last one is always 1 less than the length.
    // Never do temp[temp.length], this will ALWAYS end in IndexOutOfBoundsException.
    // temp[temp.length-1] is the way to get the last element.
    Posting code
    Since you were unusually nice, no one has cut sick at you, but in the future when you post code, put it between [ code ] and [ /code ] tags (I added spaces so the forum doesn't recognize them, but you get the idea).
    Cheers,
    Radish21

  • JSP causes strange ArrayIndexOutOfBounds exception

    Hello.
    I'm having a jsp, that outputs some information (this part is not important).
    I'm using Tomcat 5.0
    Sometimes it happens that that jsp throws ArrayIndexOutOfBounds: 45, and Tomcat starts to throw OutOfMemory exception.
    This would be not so strange if I had any array in the jsp. However, I do not. And furthermore, the line shown in the stacktrace log contains...a closing bracket.
    Also, I cannot reproduce this - it happens to some of my users.
    My suspection is, that someone is making an attack via the input parameters.
    I use Integer.parseInt to get the numeric values of the request parameters.
    Is there any vulnerability, or any way that Integer.parseInt throw an "ArrayIndexOutOfBounds" Exception, or I should look for something else. Thanks

    Hello.
    I'm having a jsp, that outputs some information (this part is not important).
    I'm using Tomcat 5.0
    Sometimes it happens that that jsp throws ArrayIndexOutOfBounds: 45, and Tomcat starts to throw OutOfMemory exception.
    This would be not so strange if I had any array in the jsp. However, I do not. And furthermore, the line shown in the stacktrace log contains...a closing bracket.
    Also, I cannot reproduce this - it happens to some of my users.
    My suspection is, that someone is making an attack via the input parameters.
    I use Integer.parseInt to get the numeric values of the request parameters.
    Is there any vulnerability, or any way that Integer.parseInt throw an "ArrayIndexOutOfBounds" Exception, or I should look for something else. Thanks

  • ArrayIndexOutofBound exception, PLEASE HELP

    I am trying to validate my xsd file but when it tries to execute the following line:
    org.apache.xerces.parsers.SAXParser p = new org.apache.xerces.parsers.SAXParser();
    it throws the ArrayIndexOutOfBound exception.
    Anyone has any idea on it?
    thanks in advance...
    faisalk

    Are you sure that's the line that's throwing the error?
    I just compiled and ran the following:
    public class TestMain{
         public static void main(String args[]){
              org.apache.xerces.parsers.SAXParser p = new org.apache.xerces.parsers.SAXParser();
              System.out.println(p.toString());
         }     //end main()
    }     //end class TestMain

  • Sender ADapter Monitor- ArrayIndexOutOfBOunds Exception

    Hi
    As me subject line reads,  I am getting an "ArrayIndeXOutofBOunds 9" exception at the sender adapter monitor logs in the RWB.
    I have an a<i>dapter monitor module</i> that picks up the file from the source  and pushes the file to a target directory based on some condition. I am able to see the file being pushed to the target directory but not able to view the "pipeline steps" in the message monitor.
    Do you think a restart of the server might fix the issue/ do you think there is a problem in my code. I have used just one array and i have checked that array if it is being accessed out of its bounds?
    Thanks
    krishna

    Hi,
    >>>>>ArrayIndeXOutofBOunds 9"
    looks like an error in code
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Exception in RFC Lookup

    Hi Experts,
    I have a query in Graphical RFC Lookup function.
    I am working on Pi 7.1 and scenario is File to Idoc.
    In the file, material number is coming, and I have to find out the corresponding Customer number from ECC table using RFC Lookup.
    I know how to use RFC lookup.
    But here issue is, if Customer Number is not maintained in the ECC table for the incoming material number, then exception should be thrown and processing should be stopped at that moment.
    Please tell me how to throw this exception and hence fail the mapping.
    -Supriya.

    Hi ,
    I guess you want to fail the message transformation at Message mapping level with Red Error in Monitoring , If LOOKUP return Nothing ...
    What You can Do Is , Instead of RFC LOOKUP Function , Use UDF Based RFC LOOKUP , and Inside UDF you can easily raise exception.
    Or
    In Grapphical Message mapping pass the result from RFCLOOKUP To a 1..1 Target , if during transfermation if 1..1 node will not get any value , so mapping will get failed automatoicaly ..
    hope the idea Helps
    regards
    PS

  • Exception class: RFC not found

    Hi,
    Do you know whether there is an exception class in web dynpro java that i can catch in case the RFC is not found in the backend system?
    Thanks and regards,
    Nada

    Thank you!
    Are the mentioned exceptions general exceptions if something is going wrong with the execute() method or they are specific for the problem 'RFC not found in the backend).
    So I need this specfic information that the RFC is not found in the backend.

  • Incorporate exception in RFC

    Dear all,
    I have created a RFC function module to display the sales order data. Now there is a requirement to add exceptions in that. Is there any standard exceptions we need to incorporate or create the new. Please suggest how to go about it?
    Thnaks,
    Anup.

    Hi Anup,
    You can code your own exceptions in the RFC function module based on the requirements. You have to maintain the two exceptions in the RFC function module as decribed below.
    http://help.sap.com/saphelp_nw04/helpdata/en/13/90a594a1ab0841bbb731bdec1a7fd7/content.htm
    Thanks
    Vinod
    Message was edited by: Vinod C

  • Give exception on RFC

    Hi Experts
    i have used RFC in CRM dev system to get the data from R/3 system as follows:
      CALL FUNCTION 'ZCTP_BP_READ_CONTACT_DATA'
        DESTINATION w_r3
        TABLES
          t_parnr     = t_parnr
          t_knvk      = t_knvk
          t_adcp_cust = t_adcp_cust
          t_adcp_cont = t_adcp_cont
          t_adrp      = t_adrp_r3
          t_adr2      = t_adr2_r3
          t_adr3      = t_adr3_r3
          t_adr6      = t_adr6_r3
          t_adrc      = t_adrc_r3
          t_adrct     = t_adrct_r3.
    But no exception is raised right now and error shown like CALL_FUNCTION_REMOTE_ERROR message so we need to add exception on it.
    Thanks in Advance.
    Thanks & Regards
    Puneet

    Hi Vinod
    Thanks for the quick reply!!!
    you mean to say that i used exception as follows:
      CALL FUNCTION 'ZCTP_BP_READ_CONTACT_DATA'
        DESTINATION w_r3
        TABLES
          t_parnr            = t_parnr
          t_knvk             = t_knvk
          t_adcp_cust        = t_adcp_cust
          t_adcp_cont        = t_adcp_cont
          t_adrp             = t_adrp_r3
          t_adr2             = t_adr2_r3
          t_adr3             = t_adr3_r3
          t_adr6             = t_adr6_r3
          t_adrc             = t_adrc_r3
          t_adrct            = t_adrct_r3
        EXCEPTIONS                                             
          systen_error       = 1                               
          connection_failure = 2.                             
      IF NOT sy-subrc IS INITIAL.                             
        MESSAGE e000(38) WITH 'System Or Connection failure'.  
      ENDIF.                                                   
    Thanks in Advance
    Puneet

  • Handle timeout exception in rfc call

    Dear SAP Experts,
    I have been searching for a while and could not find a satisfactory answer to my problem.
    I use SAP - CRM and call other SAP and non-SAP systems via RFC.
    I need to handle all exceptions, otherwise WEB UI displays a full page exception details, which is unacceptable on a production system.
    I have the following piece of code:
    CALL FUNCTION FUNCTION_NAME DESTINATION DEST
        EXPORTING
          S_IMPORT              = INPUT_DATA
        IMPORTING
          S_EXPORT              = OUTPUT_DATA
        EXCEPTIONS
          SYSTEM_FAILURE        = 1  MESSAGE err_msg " catch system failure
          COMMUNICATION_FAILURE = 2  MESSAGE err_msg " catch communication errors
          OTHERS                = 99.                " catch everything else
    It handles most of exceptions, however, it cannot process timeouts. Is there a way to handle timeout in ABAP RFC call? Is timeout exception uncatchable? If so is there a way around?
    Can you please suggest some solution as I am running out of ideas.
    Regards,
    Dominik

    I have found a solution. To approach this I use asynchronous function call.
    TRY.
        CALL FUNCTION ZZ_TEST_TIMEOUT' DESTINATION lv_dest STARTING NEW TASK 'TIMEOUT_TASK'
        CALLING me->callback ON END OF TASK
            EXCEPTIONS
              SYSTEM_FAILURE        = 1  MESSAGE err_msg " catch system failure
              COMMUNICATION_FAILURE = 2  MESSAGE err_msg " catch communication errors
              OTHERS                = 99.                " catch everything else
            WAIT UNTIL READY EQ 'X' UP TO 55 SECONDS.
            IF READY NE 'X'.
              RAISE EXCEPTION TYPE CX_TIMEOUT.
            ELSE.
              WRITE / 'success'.
            ENDIF.
      CATCH CX_ROOT INTO OREF.
       WRITE / 'TIMEOUT EXCEPTION'.
    ENDTRY.
    callback sets variable READY to abap_true when data is received.
    The trick is to use  UP TO 55 SECONDS. after wait, which is shorter than the server timeout. This terminates function call and gives opportunity to code your own timeout behavior.

  • Return an application exception from RFC

    Hi,
    my scenario is File -> XI -> RFC.
    I want to send by email any application exception returning from the RFC call.
    Since this is a Asynch call how do i implement it?

    Hi Mushon,
    ok. If i understood your scenario right, your message flow should be like:
    File->BP (asynchronous)
    BP<->RFC1 of R/3 (synchronous)
    RFC1 <-> RFC2 (synchronous) inside of R/3
    BP ->File / email (asynchronous)
    Your oringinal RFC is RFC2. Copy it to wrapper RFC1.
    Delete there source code and exceptions and put instead export parameter.
    For source code use button "pattern" to call RFC2.
    Fill the additional export parameters in the exceptions.
    All other parameters are taken from RFC1.
    Regards,
    Udo

  • REG : Null Pointer Exception for RFC values

    Hi All,
    I am facing peculiar erro in code.I need to check the null entries in SAP server then it should be replaced by space and if not null then should be replaced by the value in backend.But it is throwing null pointer exception
    I am using equalsignore case(null) and trim for space.
    I am not getting why its is throwing null pointer  exception.Kindly advise
    Regards,
    Anupama

    Hi
    Use
    String f = null ;
    if(f!==null)
    Wdcomponent.getMessageManager.ReportException ("this will cause null pointer exception  "+ f.length());
    Better to give it any Constant like
    priveate static final String NULL_CHECK  = "DEL_VAL12";
    rather than space ,at the time of chceking see if it has  DEL_VAL12 if true then put the actual data else let it be there.
    Best Regards
    Satish Kumar

  • How to handle exceptions of rfc in web dydnpro

    hi all,
    i want to handle exceptions of Remote function module in webdynpro.how can we do that one.are there any variables in model class for those exceptions.
    regards
    Naidu

    Hi,
    Hope the following snippet answers ur query
    IWDMessageManager manager = wdComponentAPI.getMessageManager();
                   try{
                        wdContext.currentB_Quotation_Createfromdata_InpElement().modelObject().execute();
                        wdContext.nodeOutputQuotation().invalidate();
                   } catch(WDDynamicRFCExecuteException ce) {
                        manager.reportException(ce.getMessage(), false);

  • Error: Failed to load script file; java.lang.ArrayIndexOutOfBound.Exception: 3184

    Script editor was working find when I last used it last week.  Tried to open a script today to make some changes and now I'm getting this error message.  I have uninstalled and re-installed editor, checked the compatibility mode and it wont open the script.  any ideas out there what the problem could be? need some trouble shooting help.
    Error:
    failed to load script file: java.lang.ArrayIndexOutOfBound.Expception: 3184
    Thanks
    Lora

    Hmmm....   I haven't seen that, but I can tell you what I would do if I were you.  This is kind of drastic, but the alternative may be a workstation reimage.
    Open the windows control panel, and open the add/remove programs snap in.
    Uninstall the CRS editor.
    Uninstall all the JRE instances you have.  They may be listed as something like Java (TM) update....   or they may appear as J2SE Runtime....   Check in the J's (it's alphabetical) and uninstall all of them.
    Reboot the machine.
    Download and reinstall Java 1.6.0.17   (This is what's running on my workstation right now, and it works with the editor).
    Reinstall the CRS editor
    Reboot the machine
    Try it and see if it behaves.  If it doesn't, you may need to rebuild the whole thing.

Maybe you are looking for

  • IPod being used by other app while getting disconnected

    when i press the eject ipod button in itunes, it displays the message: ipod cannot be ejected because it is being used by another application i was wondering if the windows 'safely remove hardware' had anything to do with this if so/not, please tell

  • Get the mapping values from one message mapping into another message mappin

    Hi All, I created two graphical message mappings. In first message mapping i created one user defined function and set one global container parameter and I need to use this parameter in my second message mapping user defined function. But the global

  • Wrong Threads in the wrong forum

    Lately we've been seeing lots of members posting Reports question in the Forms Forum. After noting that they should use the Reports forum for their questions (sometimes even we answer little questions), some of them do repost there but some doesn't.

  • How can i control the DAQ directly from VB

    Actually, it is my first trial to use Visual Basic to get signal from DAQ. And i don't how to interface them. I have read an article to use DataSocket. However, it demostrated the OPC demo in OPC sever only, and so i didn't know how to get the signal

  • How to Use or Create XSD files in Crystal Reports XI R2 designer

    Hi, I have a crystal reports  application which was developed using  .Net crystal report designer, where XSD is used . now we have to develop the same application using Crystal Reports XI R2 designer , here i could not find any option for creating or