Please validate me

My below read stmt is to working if I use BINARY SEARCH in READ STMT .
Do I need to use
SORT table gt_vbak  BY vbeln  kunn2 ?
just before
  LOOP at gt_vbpa INTO wa_vbpa.
to get use of Binary search ?
My code :
      BEGIN OF t_vbak,
          vbeln TYPE vbeln,
          vkorg TYPE vkorg,
          bstnk TYPE bstnk,
          kunnr TYPE kunnr,
          j_3adepm TYPE j_3adepm,
          zzactcnt TYPE zadi_v_cr535_actual_cnt,
          zzstatus TYPE zadi_v_cr535_status,
*For logic 4 -S
          j_3astcu TYPE j_3astcu,
          name2    TYPE NAME2_GP,
*For logic 4 -E
          kunn2    TYPE kunn2,
          count    TYPE i,
        END OF t_vbak,
        BEGIN OF t_vbpa,
          vbeln    TYPE vbeln,
          kunnr    TYPE kunnr,
          parvw    TYPE parvw,
*code add- start -20081020
        name2      TYPE NAME2_GP,
        J_3ASTCU   TYPE J_3ASTCU,
*code add- End   -20081020
        END OF t_vbpa.
I have delcared below itabs and workareas using above types
*Bring j_3ASTCU NAME2 fields into gt_vbpa from gt_vbak
  LOOP at gt_vbpa INTO wa_vbpa.
READ table gt_vbak INTO wa_vbak
                     WITH KEY vbeln = wa_vbpa-vbeln
                              kunn2 = wa_vbpa-kunnr
*BINARY SEARCH
       wa_vbpa-j_3astcu  = wa_vbak-j_3astcu.
       wa_vbpa-name2     = wa_vbak-name2.
       MODIFY gt_vbpa FROM wa_vbpa
                        TRANSPORTING j_3ASTCU NAME2
                        where vbeln  = wa_vbpa-vbeln
                        AND   kunnr  = wa_vbpa-kunnr
                        AND   parvw = wa_vbpa-parvw.
  ENDLOOP.       " LOOP at gt_vbpa INTO wa_vbpa
THANKS IN ADV.

Hi,
   Yes you have to sort the table begore you go for Binary search for that table in read statement.
Dont forget that the order in which you sort your internal table should be same as Key which you are using in Read statement.
i.e. if you are sorting your internal table
SORT t_vbak by vbeln kunnr
Then you can use binary search for theses read statements.
LOOP at t_vbpa.
1) Read table t_vbpa with key vbeln = t_vbpa-vbeln
                                           kunnr = t_vbpa-kunnr
                                           Binary search.
2)Read table t_vbpa with key vbeln = t_vbpa-vbeln
                                           Binary search.
Endloop.
But you cant use Binary search if the read statement is like this
1) Read table t_vbpa with key kunnr = t_vbpa-kunnr
                                           vbeln = t_vbpa-vbeln
                                           Binary search.
2)Read table t_vbpa with key Kunnr = t_vbpa-kunnr
                                           Binary search.
Regards,
Syed

Similar Messages

  • "Invalid Account. Please Validate." for Curve 9360

    Facing this issue since I bought the device since last Thursday. The issue is recurring, and even the successful account setup attempt never pops up email account message box on home screen and after some time the status is same - Invalid Account. Please Validate.
    I have spoken to the Starhub care but to no use. I know it's certainly not the device issue, somewhere Blackberry server or my Gmail server is at fault or I am not doing it the right way (now impossible as I have tried all the troubleshooting posts I managed to find on Google).
    It's very annoying now, why am I paying only for the BBM. I need email connectivity as well.
    Can anyone please help.

    Hi and welcome to the forums!
    Did you do this sequence?
    Check setting are correct in Google.
    Delete the Google account from the BB.
    Recreate the BIS Gmail account., then logout.
    On the BB go to options advanced options, Host Routing Tables, click to enter. DO NOT click on any listing.
    Press menu key, and select register now.
    You will get a registration message. Then go to email settings and send service books.
    Some models like the Curve 8330 and Pearl require logging into the carriers BIS site
    via PC.
    You will get an verification email for your gmail account.
    Verify the device and Gmail are working.
    Thanks,
    Bifocals
    Click Accept as Solution for posts that have solved your issue(s)!
    Be sure to click Like! for those who have helped you.
    Install BlackBerry Protect it's a free application designed to help find your lost BlackBerry smartphone, and keep the information on it secure.

  • No supported SOAP Port found to test. Please validate WSDL

    Hi I deployed a BPEL process.
    When I click Initiate link to test it .
    it shows above error ' No supported SOAP Port found to test. Please validate WSDL'
    Where I am doing wrong ?
    Thanks
    Praveen

    Hi This is my WSDL from BPEL console
    <?xml version="1.0" encoding="UTF-8" ?>
    - <definitions name="SyncItemEBIZProvBPELABCSImpl" targetNamespace="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncItemEBIZProvBPELABCSImpl/V1" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncItemEBIZProvBPELABCSImpl/V1" xmlns:itemabcs="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncItemEBIZProvBPELABCSImpl/V1" xmlns:itemebo="http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/Item/V1" xmlns:svcdoc="http://xmlns.oracle.com/Services/Documentation/V1" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:itemsvc="http://xmlns.oracle.com/EnterpriseServices/Core/Item/V1" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:client="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncItemEBIZProvBPELABCSImpl/V1" xmlns:itemabo="http://www.example.org/SyncItemPublicationInput">
    <import namespace="http://xmlns.oracle.com/EnterpriseServices/Core/Item/V1" location="http://ap6032fems.us.oracle.com:7831/AIAComponents/EnterpriseBusinessServiceLibrary/Core/Item/ItemEBS.wsdl" />
    - <types>
    - <xsd:schema targetNamespace="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncItemEBIZProvBPELABCSImpl/V1" elementFormDefault="qualified" xmlns:itemabcs="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/Item/V1" xmlns:itemebo="http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/Item/V1" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:svcdoc="http://xmlns.oracle.com/Services/Documentation/V1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:client="http://xmlns.oracle.com/SyncItemEBIZProvBPELABCSImpl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:itemabo="http://www.example.org/SyncItemPublicationInput">
    <xsd:import namespace="http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/Item/V1" schemaLocation="http://ap6032fems.us.oracle.com:7831/AIAComponents/EnterpriseObjectLibrary/Release1/Core/EBO/Item/ItemEBM.xsd" />
    <xsd:import namespace="http://www.example.org/SyncItemPublicationInput" schemaLocation="http://ap6032fems.us.oracle.com:7831/AIAComponents/ApplicationObjectLibrary/EBiz/ApplicationInterfaces/Item/Schemas/ItemABM.xsd" />
    </xsd:schema>
    </types>
    - <message name="SyncItemResponseMessage">
    <part name="SyncItemPublicationConfirmation" element="itemebo:SyncItemPublicationConfirmationEBM" />
    </message>
    - <message name="SyncItemRequestMessage">
    <part name="SyncItemPublication" element="itemebo:SyncItemPublicationEBM" />
    </message>
    - <message name="SyncItemABMRequestMessage">
    <part name="Item" element="itemabo:item" />
    </message>
    - <message name="SyncItemABMResponseMessage">
    <part name="ItemStatus" element="itemabo:itemStatus" />
    </message>
    - <portType name="SyncItemEBIZProvBPELABCSImplCallback">
    - <operation name="onResult">
    <input message="tns:SyncItemResponseMessage" />
    </operation>
    </portType>
    - <portType name="SyncItemEBIZProvBPELABCSImpl">
    - <operation name="initiate">
    <input message="tns:SyncItemRequestMessage" />
    <output message="tns:SyncItemResponseMessage" />
    </operation>
    </portType>
    - <binding name="SyncItemEBIZProvBPELABCSImplCallbackBinding" type="tns:SyncItemEBIZProvBPELABCSImplCallback">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    - <operation name="onResult">
    <soap:operation style="document" soapAction="onResult" />
    - <input>
    <soap:header message="tns:WSARelatesToHeader" part="RelatesTo" use="literal" encodingStyle="" />
    <soap:body use="literal" />
    </input>
    </operation>
    </binding>
    - <binding name="SyncItemEBIZProvBPELABCSImplBinding" type="tns:SyncItemEBIZProvBPELABCSImpl">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    - <operation name="initiate">
    <soap:operation style="document" soapAction="initiate" />
    - <input>
    <soap:header message="tns:WSARelatesToHeader" part="RelatesTo" use="literal" encodingStyle="" />
    <soap:body use="literal" />
    </input>
    - <output>
    <soap:body use="literal" />
    </output>
    </operation>
    </binding>
    - <service name="SyncItemEBIZProvBPELABCSImplCallbackService">
    - <port name="SyncItemEBIZProvBPELABCSImplCallbackPort" binding="tns:SyncItemEBIZProvBPELABCSImplCallbackBinding">
    <soap:address location="http://set.by.caller" />
    </port>
    </service>
    - <service name="SyncItemEBIZProvBPELABCSImplService">
    - <port name="SyncItemEBIZProvBPELABCSImplPort" binding="tns:SyncItemEBIZProvBPELABCSImplBinding">
    <soap:address location="http://set.by.caller" />
    </port>
    </service>
    - <plnk:partnerLinkType name="SyncItemEBIZProvBPELABCSImpl">
    - <plnk:role name="SyncItemEBIZProvBPELABCSImplProvider">
    <plnk:portType name="tns:SyncItemEBIZProvBPELABCSImpl" />
    </plnk:role>
    - <plnk:role name="SyncItemEBIZProvBPELABCSImplRequester">
    <plnk:portType name="tns:SyncItemEBIZProvBPELABCSImplCallback" />
    </plnk:role>
    </plnk:partnerLinkType>
    - <plnk:partnerLinkType name="ItemEBS_PL">
    - <plnk:role name="ItemEBS_Role">
    <plnk:portType name="itemsvc:ItemEBS" />
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>

  • Please validate my simple code

    I have to process for two occurances of Perform xyz which is in a loop if P_checkbox is checked.
    Please validate my below code
    data : count TYPE i.
    LOOP at ITAB
        IF P_checkbox IS INITIAL.
    " need to process this perfrom xyz as usual.
            PERFORM xyz.    
       ELSEIF NOT P_checkbox IS INITIAL
        AND count LE 2.
    "B'cos I need to proess this perfrom only for two occurances
            PERFORM xyz.    
       ENDIF.
    ENDLOOP.
    FORM xyz.
      IF NOT P_checkbox IS INITIAL.
        count = count + 1.
      ENDIF.
    ENDFORM.

    Hi
    You can rewrite like this..
    I have to process for two occurances of Perform xyz which is in a loop if P_checkbox is checked.
    Please validate my below code
    data : count TYPE i.
    LOOP at ITAB
    IF P_checkbox IS INITIAL.
    " need to process this perfrom xyz as usual.
    PERFORM xyz.
    ELSE.
    while count <=2.
    "B'cos I need to proess this perfrom only for two occurances
    PERFORM xyz.
    endwhile.
    ENDIF.
    ENDLOOP.
    FORM xyz.
    IF NOT P_checkbox IS INITIAL.
    count = count + 1.
    ENDIF.
    ENDFORM.
    Regards,
    Raj

  • Please validate my select query with offset

    Could you please  validate my select query below :
    AND   kadky+0(4) IN s_gjahr is correct ?
    =====================================
    SELECT-options:
    s_gjahr FOR ckhs-gjahr NO-EXTENSION NO INTERVALS OBLIGATORY  DEFAULT sy-datum+0(4).
    SELECT bzobj
             kalnr
             kalka
             kadky
             tvers
             bwvar
             kkzma
             matnr
             werks
             feh_sta
        FROM keko
        INTO TABLE i_keko
        FOR ALL ENTRIES IN i_mackw
       WHERE  matnr = i_mackw-matnr
        AND   werks = i_mackw-werks
        AND   kadky+0(4) IN s_gjahr       <==
        AND  ( feh_sta = 'FR'
        OR     feh_sta = 'VO' )

    Hi,
    Use the below code.
    ranges: r_gjahr for ckhs-gjahr.
          r_gjahr-low = s_gjahr-low.
          r_gjahr-sign = 'I'.
          r_gjahr-option = 'EQ'.
          append r_gjahr.
          r_gjahr-low = s_gjahr-low - 1.
          r_gjahr-sign = 'I'.
          r_gjahr-option = 'EQ'.
          append r_gjahr.     
    SELECT bzobj
    kalnr
    kalka
    kadky
    tvers
    bwvar
    kkzma
    matnr
    werks
    feh_sta
    FROM keko
    INTO TABLE i_keko
    FOR ALL ENTRIES IN i_mackw
    WHERE matnr = i_mackw-matnr
    AND werks = i_mackw-werks
    AND ( feh_sta = 'FR'
    OR feh_sta = 'VO' ).
    if sy-subrc = 0.
    delete i_keko where not kadky+0(4) IN r_gjahr.
    endif.
    Regards,
    Kumar Bandanadham
    Edited by: Velangini Showry Maria Kumar Bandanadham on May 28, 2009 7:37 AM

  • Please validate my logic performance point of view:

    Please validate my logic performance point of view:
    logic I wrote :
       LOOP AT i_mara INTO wa_mara.
    *-----For material description, go to makt table.
          SELECT SINGLE maktx
            FROM makt
            INTO l_maktx
           WHERE matnr = lwa_mara-matnr
             AND SPRAS = 'E'.
          IF sy-subrc = 0.
            wa_mara-MAKTX = l_maktx.
          ENDIF.        " IF sy-subrc = 0.
    *-----For Recurring Inspection, go to marc table.
          SELECT prfrq
            FROM marc
            INTO l_prfrq
            UP TO 1 ROWS
           WHERE matnr = lwa_mara-matnr.
          ENDSELECT.
          IF sy-subrc = 0.
            wa_mara-prfrq = l_prfrq.
          ENDIF.          " IF sy-subrc = 0.
          MODIFY TABLE i_mara FROM wa_mara
                 TRANSPORTING maktx.
          CLEAR : wa_mara.
       ENDLOOP.   " LOOP AT i_mara INTO wa_mara.
    Or is it better below : ?
    To SELECT all the maktx values from makt and all prfrq values from marc
    in two internal tables and
    Loop at i_mara.
      LOOP at all maktx itab
    and pass corresponding maktx values into i_mara table
    and pass corresponding prfrq values into i_mara table
    ENDLOOP.
    OR
    is there any better performance logic you suggest ?
    THANKS IN ADVANCE.

    ok this is very funny so if someone gets a good way to code he should wait till he gets 1198 points till he write a performance wiki
    so that means ppl who has high SDN points only can write wiki
    for your information wiki definition is
    [http://en.wikipedia.org/wiki/Wiki |http://en.wikipedia.org/wiki/Wiki]
    its all about contribution and sharing.
    did you try that code on a production or a Quality server. If you did you wont say that coz the results i have shown in that blog is what i my self tested on a Quality system of our client.
    and for your information i did my internship at a SAP AFS consultancy firm and i created the account at that time. I have joined that company and now working as a developer over there.
    if you have worked on a client system development on SD and MM you will know that most of the time
    we use header and item tables like
    likp,lips
    vbak,vbap
    vbrk,vbrp
    most of the time we come across nested loops with smiler kind of condition.
    in this Q he has MATNR as reference.
    if you see it properly you can see both tables are sorted.
    and the select statement is for all entries.
    for your information there can be a delivery document item with out a header if you are aware of DB concepts in that case there will be a foreign key error.
    ok lets think about a situation like that even in that case if there ant any header data then simply the client wont request for that record.( you would know if you have worked with clients )
    last but not least i dont care about my points rate at SDN i just wanted to share what i know coz anyway i have a very good job here. dont try to put down ppl just because they are new.
    Thomas Zloch  : i never told its my code i saw it some where then i checked and i bogged it so that i can get it when i want and i saw it in se30 ( its not se38 ) but i know most of ABAP developers dont check it much so i just wanted to help.
    Rui Pedro Dantas   : ya your correct we dont need to use it most of the time since sorted table is easy but there are programs which works with bulky data load we can use it in places like that. Thanks for talking the truth
    Nafran
    sorry if i said anything to hurt anyone.

  • Please validate giving field names to the field (built in data type) in TMG

    I have added fields with built in types….And I added header text ( heading of each field ) in Table maintenance generator   by se11 -&#61664; table maintenance generator  &#61664; delete &#61664; create new one TMG &#61664; then go to se11 &#61664; utilities &#61664; create entries &#61664; status &#61664; Screen number  &#61664; layout &#61664; in screen painter &#61664; give desired field for that particular field

    I have added fields to ztable with built in types….And I added header text ( heading of each of my field ) in Table maintenance generator by following procedure
    go to se11 -> utilities->table maintenance generator  -> delete -> create new one TMG ->
    then go to se11 -> utilities -> create entries -> status -> Screen number  -> layout -> in screen painter -> give desired field for that particular field.
    Am I right ? Please validate my procedure of giving field names to appear in Table maintenance generator.

  • "Invalid Account. Please Validate"

    I recently had my storm replaced due to an issue with the female connection with the wall charger (it wasn't accepting my car charger or my wall charger.) I am having trouble setting up my gmail account on my phone. I cannot receive emails on my gmail account, and when I go to Email Setup, I get "Invalid Account. Please Validate" in red under my gmail account, and requires my email password again. I type in my password and get 'The application has encountered an error and cannot continue.' (Keep in mind that I have done a battery pull more than once) I figured I might go around this hiccup by going to http://www.blackberry.com/go/vzw and delete the account and add it again there. I successfully deleted it, then upon adding the email I got "user name or password is invalid, if this problem persists please contact your provider (gmail)" but after a few tries I got it added again, but still having the same invalid account problem on my storm..Any suggestions?
    BTW my yahoo account is working just fine..
    Sorry if that was difficult to understand..
    Solved!
    Go to Solution.

    Hi and welcome to the forums!
    Did you do this sequence?
    Check setting are correct in Google.
    Delete the Google account from the BB.
    Recreate the BIS Gmail account., then logout.
    On the BB go to options advanced options, Host Routing Tables, click to enter. DO NOT click on any listing.
    Press menu key, and select register now.
    You will get a registration message. Then go to email settings and send service books.
    Some models like the Curve 8330 and Pearl require logging into the carriers BIS site
    via PC.
    You will get an verification email for your gmail account.
    Verify the device and Gmail are working.
    Thanks,
    Bifocals
    Click Accept as Solution for posts that have solved your issue(s)!
    Be sure to click Like! for those who have helped you.
    Install BlackBerry Protect it's a free application designed to help find your lost BlackBerry smartphone, and keep the information on it secure.

  • ITunes bug? Someone please validate

    I am not sure if it is just my machine... or a real bug:
    Choose File>New Smart Playlist>pull down "Year">try to type in any number in the input field for year (will not accept input for any option).
    All other smart playlists that I have created work fine - just when I choose to sort by "Year" I can not input any number (date).
    Is this a bug or just my machine?
    Randy

    Randy,
    It looks like the Smart Playlist won't allow you to type over the year that's entered by default. However, after deleting the year you are able to enter in digits as you please.
    I think this restriction comes from the field being willing to accept up to four digits, but not more than that and it's assuming you're adding digits even though the default year entry shows as selected and is made key immediately.
    I would personally classify this as a bug as well, though not as high as your initial statement made it out to be.
    Try selecting, then deleting the year and entering a new year. It's a hassle to not be able to simple overwrite the default entry, I know... but until it's remedied this is the only workaround I can see.

  • Please validate my select stmt

    SELECT *   " bukrs lifnr gjahr belnr blart
               FROM bsak
              appending table gt_bsak
               INTO CORRESPONDING FIELDS OF TABLE gt_bsak
               WHERE cpudt in r_cpudt
               AND   blart in r_blart
               AND   bukrs in s_bukrs
              AND   lifnr in s_lifnr
               AND   belnr in s_belnr
               AND   gjahr in s_gjahr
    What is wrong in above stmt .
    As one record is selecting from db table (se11) bsak with the set of values of
    r_cpudt, r_blart, s_bukrs, s_belnr, s_gjahr .

    Hi,
      Nothing is wrong the select statement..
      Compare the values you give in SE11 with the values in the where clause..
      Check your values in r_cpudt and r_blart..looks like you are populating manually in your program..
      Populate the range only if the value is present..
    Example..
      RANGES r_matnr for mara-matnr.
      if not v_matnr is initial.
        r_matnr-sign = 'I'.
        r_matnr-option = 'EQ'.
        r_matnr-low = v_matnr.
        append r_matnr.
      endif.
    Thanks,
    Naren

  • Formula Variable to Validate Input Values

    Hi experts,
    I created a query with some exceptions which uses formula variables to validate these exceptions. But I have a requirements for these formula variables. Eg: Certain user can only enter the selection range of values 1-50 for this formula variables during the run time, if the user enter the values more than > 51, the user will not be able to see the report results and the query will show message saying that the user is not authorized to see the results with this selection. And certain user will be able to see the report results for selection values more than 51.
    Any idea of how to achieve this? I planning to create a customer exit but I do not know what code to use here.
    Thanks alot.

    Just now i noticed that even wtih user hooks, it is not feasible: Please validate my approach is correct or not.
    i used query:
    select api_module_id, module_name, module_package
    from hr_api_modules
    where module_name like '%ELEMENT%ENT%';
    API_MODULE_ID MODULE_NAME MODULE_PACKAGE
    78 CREATE_ELEMENT_ENTRY PY_ELEMENT_ENTRY_API
    79 UPDATE_ELEMENT_ENTRY PY_ELEMENT_ENTRY_API
    80 DELETE_ELEMENT_ENTRY PY_ELEMENT_ENTRY_API
    178 PAY_ELEMENT_ENTRIES_F     
    but .. i dont see any hook record for api_module_id = 78 in hr_api_hooks table.
    select *
    from hr_api_hooks
    where api_module_id = 78;
    -- No Records for above Query.
    My conclusion is, we cannot register our custom package with PY_ELEMENT_ENTRY_API.create_element_entry module.
    Please validate my conclusion is correct or not.
    if this is correct, It is really unfortunate that, i cannot implement this simple validation.
    Message was edited by:
    user552453

  • Can't validate purchase date

    Hello all!
    I am a proud Macbook owner, but when I tried to register my product, I failed. The selfsolve page says "Please validate your purchase date" and when I click on it, I get back to the screen where I have to enter a serial number. This loop can be repeated infinitely.
    What should I do? Is this a bug, or is something wrong with my browser? I use Google Chrome.
    Thank you for your attention!

    If you're registering an Apple product on an Apple website, it couldn't hurt to use an Apple browser (Safari) to do it.
    Note that if you bought your rMBP from Apple, it's already registered.

  • Can any one validate this architecture?

    I have designed an architecture for my Application using MVC framework. I need
    wise advice on my architecture.Please validate.
    The architeure is
    JSP ->Struts Action class - >Businessdelegate--> (uses)--> Service Locator--> Session Facade(session bean)-->Businessobject-->Dao
                                                                                                                         |
                                                                                                               Application Service
                                                                                                                          |
                                                                                                          External Application  &  Webservice  ****************************************************************************************
    Explanation of the above depicted sequence :
    JSP : Provides the view for the presentation layer.
    Action Class - The function of an action class is to create a Transfer object out of Form Object and invoke the corresponding business delegate method.
    Business Delegate - The business delegate calls the appropriate Service method based on the value obtained from the Transfer object.This layer uses Service locator for the JNDI look up.
    Session Bean -EJB Service (Session bean) delegates the business object coordination logic to the Business Object Layer.
    Business object Layer- All the business validations will be performed.Based on the business requirement, it will call the DAO or call Web Service Layer through Application Service layer.
    Application Layer - The Application Service layer is used to co-ordinate with the external application services and Web service layer.
    My Queries :
    1) One section of my application has just one concurrent user. Ie. the application has Administration section in which at a time only 2 users will be using the application. Is it wise to go for EJB implementation.?
    2) If EJB layer is not used? can i use a simple java interface class and an implementation class to replace the EJB layer..so that if the future requirement needs EJB implementation, then we can just introduce a home interface to convert this existing approach to a EJB.I have this thought process, I am not sure whether this is feasible? If this is feasible, how do i go about?
    3)Is there any simple approach to have a better architecture? Please advice
    4) If you look at the above layered sequence, I am calling the external application , say for example any rule engine(External application) call is via this application service layer and Web service call is also through the application layer.Do i need to have a seperate layer to differnsiate the call from the webservice and the other external application?

    I have designed an architecture for my Application
    using MVC framework. I need
    wise advice on my architecture.Please validate.You might have a look at the J2EE design patterns and find something similar to this :-)
    JSP ->Struts Action class -
    - >Businessdelegate--> (uses)--> Service Locator-->
    Session Facade(session bean)-->Businessobject-->Dao Yeah! Everyone uses the same design... I'm going to run away from Java now...
    My Queries :
    1) One section of my application has just one
    one concurrent user. Ie. the application has
    Administration section in which at a time only 2
    users will be using the application. Is it wise to go
    for EJB implementation.?You need not have the EJB for that. Anyway, all your EJB does is call another bunch of classes. It is not really achieving what a session facade is intended to do (save remote EJB calls). Besides a Business Object would be achieving the purpose of encapsulating the business logic.
    2) If EJB layer is not used? can i use a simple
    le java interface class and an implementation class
    to replace the EJB layer..so that if the future
    requirement needs EJB implementation, then we can
    just introduce a home interface to convert this
    existing approach to a EJB.I have this thought
    process, I am not sure whether this is feasible? If
    this is feasible, how do i go about?It depends on what you want to do having an EJB. Is it for scalability, concurrent database transaction handling, persistence... ??? If you require all that, I doubt you would get it in a single interface + implementing class. Anyway, you have DAOs to take care of DB layer. And your EJB doesn't serve much purpose here.
    3)Is there any simple approach to have a better
    architecture? Please adviceYes, do away with the EJB. I think Think about what you want to really do with the thing labelled as "DAO". In short, look for the core J2EE patterns and try to understand what each layer is intended to do, if it is a part of the architecture..
    4) If you look at the above layered sequence, I am
    calling the external application , say for example
    any rule engine(External application) call is via
    this application service layer and Web service call
    is also through the application layer.Do i need to
    have a seperate layer to differnsiate the call from
    the webservice and the other external application?You might have another layer of abstraction if you expect a change in requirements. Else it would be just another layer. :-)
    Disclaimer: All the replies are to the best of my knowledge! Consult someone, especially J2EE patterns.

  • Out Of memory in prod

    One of the prod clusters is running on below crashed both nodes with an out of memory exception which looks like below.
    How do we get to know if the crash is due to a memory leak in the code or elsewhere?
    Any inputs which helps to identify on the issue and submit data to application team supporting the need to update the systems is appreciated.
    RHEL 4.6 on a 32 bit OS
    BEA JRockit(R) R27.5.0
    Below is the dump file generated when the JVM was crashed.
    ===== BEGIN DUMP =============================================================
    JRockit dump produced after 21 days, 21:54:48 on Thu Aug 29 23:22:36 2013
        *  If you see this dump, please go to                    *
        *  http://edocs.bea.com/jrockit/go2troubleshooting.html  *
        *  for troubleshooting information.                      *
    Additional information is available in:
      /wls_domains/prod_slimseu_wli_domain/jrockit.20717.dump
    No snapshot file (core dump) will be created because core dumps have been
    disabled. To enable core dumping, try "ulimit -c unlimited"
    before starting JRockit again.
    Error Message: Out of memory [68]
    Signal info  : si_signo=11, si_code=2 si_addr=(nil)
    Fatal Error  : Lock Iteration lockTokenIterInit src/jvm/code/runtime/refiter.c:233
    Version      : BEA JRockit(R) R27.5.0-110_o-99226-1.5.0_14-20080528-1505-linux-ia32
    GC Strategy  : Mode: throughput. Currently using strategy: genparpar
    GC Status    : OC is not running. Last finished OC was OC#6379.
                 : YC is not running. Last finished YC was YC#46347.
    OC History   : Strategy genparpar was used for OC#5680 to OC#5848.
                 : Strategy singleparpar was used for OC#5849.
                 : Strategy genparpar was used for OC#5850 to OC#6034.
                 : Strategy singleparpar was used for OC#6035.
                 : Strategy genparpar was used for OC#6036 to OC#6379.
    YC History   : Ran 7 YCs before OC#6375.
                 : Ran 6 YCs before OC#6376.
                 : Ran 4 YCs before OC#6377.
                 : Ran 7 YCs before OC#6378.
                 : Ran 5 YCs before OC#6379.
                 : Ran 0 YCs since last OC.
    YC Promotion : Last YC successfully promoted all objects
    Heap         : 0x8100000 - 0x88100000  (Size: 2048 MB)
    Compaction   : 0x80100000 - 0x88100000  (Current compaction type: external)
    NurseryList  : 0x6d634138 - 0x798afad0
    KeepArea     : 0x79218a20 - 0x7c8122f0
    NurseryMarker: [ 0x79218a20,  0x7c8122f0 ]
    CompRefs     : References are 32-bit.
    CPU          : Intel Core 2 SSE SSE2 SSE3 SSSE3 SSE4.1 EM64T
    Number CPUs  : 4
    Tot Phys Mem : 21292417024 (20306 MB)
    OS version   : Red Hat Enterprise Linux ES release 4 (Nahant Update 6)
    Linux version 2.6.9-67.ELsmp ([email protected]) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-8)) #1 SMP Wed Nov 7 13:58:04 EST 2007 (i686)
    Thread System: NPTL
    Java locking : Normal
    State        : JVM is running
    Command Line : -Xms2048m -Xmx2048m -Xss=256k -da -Dplatform.home=/opt/bea922/aldsp301/weblogic92 -Dwls.home=/opt/bea922/aldsp301/weblogic92/server -Dwli.home=/opt/bea922/aldsp301/weblogic92/integration -Denvironment=prod -Dlog4j.configuration=file:/wls_domains/prod_slimseu_wli_domain/apacheLog4jCfg.xml -Dweblogic.management.discover=false -Dweblogic.management.server=http://meermin.european.idexxi.com:30050 -Dwlw.iterativeDev=false -Dwlw.testConsole=false -Dwlw.logErrorsToConsole=true -Dweblogic.ext.dirs=/opt/bea922/aldsp301/patch_weblogic922/profiles/default/sysext_manifest_classpath -Xverbose:gcreport,memdbg,gcpause -Xverboselog:/wls_logs/prod_slimseu_wli_domain/prod_slimseu_wli.gc -Duser.timezone=GMT -Dweblogic.Domain=prod_slimseu_wli_domain -Dweblogic.Name=prod_slimseu_wli_02 -Djava.security.policy=/opt/bea922/aldsp301/weblogic92/server/lib/weblogic.policy -Dsun.java.launcher=SUN_STANDARD weblogic.Server
    java.home    : /opt/bea922/aldsp301/jrockit-R27.5.0/jre
    j.class.path : /opt/bea922/aldsp301/aldsp_3.0/lib/binxml.jar:/opt/bea922/aldsp301/patch_weblogic922/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/opt/bea922/aldsp301/jrockit-R27.5.0/lib/tools.jar:/opt/bea922/aldsp301/weblogic92/server/lib/weblogic_sp.jar:/opt/bea922/aldsp301/weblogic92/server/lib/weblogic.jar:/opt/bea922/aldsp301/weblogic92/server/lib/webservices.jar::/opt/bea922/aldsp301/weblogic92/integration/lib/worklist-system-required.jar:/opt/bea922/aldsp301/weblogic92/server/lib/jpd.jar:/opt/bea922/aldsp301/weblogic92/integration/L10N:/opt/bea922/aldsp301/weblogic92/common/eval/pointbase/lib/pbclient51.jar:/opt/bea922/aldsp301/weblogic92/server/lib/xqrl.jar::
    j.lib.path   : /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/jrockit:/opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386:/opt/bea922/aldsp301/jrockit-R27.5.0/jre/../lib/i386:/opt/bea922/aldsp301/patch_weblogic922/profiles/default/native:/opt/bea922/aldsp301/weblogic92/server/native/linux/i686:/opt/bea922/aldsp301/weblogic92/server/native/linux/i686/oci920_8
    JAVA_HOME    : /opt/bea922/aldsp301/jrockit-R27.5.0
    _JAVA_OPTIONS: <not set>
    LD_LIBRARY_PATH: /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/jrockit:/opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386:/opt/bea922/aldsp301/jrockit-R27.5.0/jre/../lib/i386:/opt/bea922/aldsp301/patch_weblogic922/profiles/default/native:/opt/bea922/aldsp301/weblogic92/server/native/linux/i686:/opt/bea922/aldsp301/weblogic92/server/native/linux/i686/oci920_8
    LD_ASSUME_KERNEL: <not set>
    C Heap       : 1 memory allocations have failed
                 : First failure was a mmMalloc of 20 bytes
                 : Last failure was a mmMalloc of 20 bytes
    StackOverFlow: 0 StackOverFlowErrors have occured
    OutOfMemory  : 3 OutOfMemoryErrors have occured
    Registers (from ThreadContext: 0xa96d4e94 / OS context: 0xa96d4f90):
       eax = 00001267    ecx = a96d520c    edx = 00000043    ebx = b7f5d74c
       esp = a96d5280    ebp = a96d5298    esi = 00000044    edi = a96d52e8
        es = 0000007b     cs = 00000073     ss = 0000007b     ds = 0000007b
        fs = 00000000     gs = 00000033
       eip = b7dabd55 eflags = 00000282
    Stack:
    (* marks the word pointed to by the stack pointer)
    a96d5280: b7f72020* 00000200  b7f5d74c  a96d52e8  a96d52e8  a96d52a4 
    a96d5298: a96d52b8  b7f258c4  00000044  b7f5d74c  a96d52e8  a96d5310 
    a96d52b0: a96d5358  a96d5360  a96d52d8  b7f258ef  00000044  b7f5d74c 
    a96d52c8: a96d52e8  a96d5360  a96d5310  a96d5358  a96d52f8  b7ecee0a 
    Code:
    (* marks the word pointed to by the instruction pointer)
    b7dabd24: 4c892074  458b0824  2404c710  b7f72020  0c244489  000200b8 
    b7dabd3c: 24448900  92fae804  01b80017  a3000000  b7f72004  001267b8 
    b7dabd54: 0000a300* 04c70000  00003f24  9aeae800  768d0017  27bc8d00 
    b7dabd6c: 00000000  e589fc55  53c03157  b9e87d8d  00000004  00c0ec81 
    Loaded modules:
    (* denotes the module causing the exception)
    08048000-08056ff3  /opt/bea922/aldsp301/jrockit-R27.5.0/bin/java
    0093f000-0094c85b  /lib/tls/libpthread.so.0
    00833000-00853c8f  /lib/tls/libm.so.6
    00858000-00859967  /lib/libdl.so.2
    00705000-0082a578  /lib/tls/libc.so.6
    006eb000-0070039b  /lib/ld-linux.so.2
    b7d16000-b7f6c6a7 */opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/jrockit/libjvm.so
    00db2000-00db9a76  /lib/tls/librt.so.1
    b7cdb000-b7cf9103  /lib/libnss_centrifydc.so.2
    0099a000-009a8fef  /lib/libresolv.so.2
    00d76000-00d8866f  /lib/libnsl.so.1
    b7cd0000-b7cd8a57  /lib/libnss_files.so.2
    b7be5000-b7bef81b  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libverify.so
    b7bc2000-b7be2317  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libjava.so
    b6b1b000-b6b20f13  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/native_threads/libhpi.so
    b65ae000-b65bc4c4  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libzip.so
    b4e71000-b4e82f03  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libnet.so
    b4e69000-b4e6f207  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libnio.so
    b5f03000-b5f06313  /lib/libnss_dns.so.2
    b3a6e000-b3a73246  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libmanagement.so
    b39e1000-b39ea357  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libjmapi.so
    b36d8000-b36d9de4  /opt/bea922/aldsp301/weblogic92/server/native/linux/i686/libwlfileio2.so
    a59ed000-a5a4c026  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libawt.so
    a5926000-a59eb21f  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libmlib_image.so
    a5920000-a5924f1c  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/headless/libmawt.so
    a53f8000-a54710a7  /opt/bea922/aldsp301/jrockit-R27.5.0/jre/lib/i386/libfontmanager.so
    "[ACTIVE] ExecuteThread: '25' fo" id=75 idx=0x128 tid=20894 lastJavaFrame=0xa96d54cc
    Stack 0: start=0xa9698000, end=0xa96da000, guards=0xa969d000 (ok), forbidden=0xa969b000
    Thread Stack Trace:
        at dumpForceDump+117()@0xb7dabd55
        at vmFatalErrorMsgV+84()@0xb7f258c4
        at vmFatalErrorMsg+31()@0xb7f258ef
        at fatalError+42()@0xb7ecee0a
        at lockTokenIterInit+151()@0xb7ecf317
        at trProcessLocksForThread+102()@0xb7edda26
        at get_all_locks+106()@0xb7df61ca
        at javalockConvertTokenForObject+74()@0xb7df83aa
        -- Java stack --
        at jrockit/vm/Locks.convertThinLockedToFatLocked(Ljava/lang/Object;)V(Native Method)
        at jrockit/vm/Locks.createMonitorAndConvert(Locks.java:1521)[inlined]
        at jrockit/vm/Locks.wait(Locks.java:2184)[inlined]
        at weblogic/rjvm/ResponseImpl.waitForData(ResponseImpl.java:81)[optimized]
        ^-- Holding lock: weblogic/rjvm/ResponseImpl@0x6daebaa8[thin lock]
        at weblogic/rjvm/ResponseImpl.getTxContext(ResponseImpl.java:108)[inlined]
        at weblogic/rjvm/BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:109)[optimized]
        at weblogic/rmi/cluster/ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:335)[inlined]
        at weblogic/rmi/cluster/ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)[optimized]
        at com/bea/ld/Server_ydm4ie_EOImpl_1030_WLStub.executeOperationStreaming(Lcom/bea/dsp/ejb/QualName;[Ljava/lang/Object;Lcom/bea/ld/QueryAttributes;Lcom/bea/ld/filter/FilterXQuery;)Lcom/bea/dsp/ejb/StreamingQueryResult;(Unknown Source)[optimized]
        at com/bea/dsp/das/ejb/EJBClient.invokeOperation(EJBClient.java:148)[optimized]
        at com/bea/dsp/das/DataAccessServiceImpl.invokeOperation(DataAccessServiceImpl.java:171)[inlined]
        at com/bea/dsp/das/DataAccessServiceImpl.invoke(DataAccessServiceImpl.java:122)[inlined]
        at com/bea/dsp/control/core/delegates/impl/DSPControlInvocationDelegate.executeFunction(DSPControlInvocationDelegate.java:219)[inlined]
        at com/bea/dsp/control/core/delegates/impl/DSPControlInvocationDelegate.invokeOnDataService(DSPControlInvocationDelegate.java:64)[optimized]
        at com/bea/dsp/control/core/DSPControlImpl.invoke(DSPControlImpl.java:81)[optimized]
        at com/idexx/lims/controls/dsp/ResultsReportDSPControlFileBean.getPathEventTimeStampForDepartment(ResultsReportDSPControlFileBean.java:267)[optimized]
        at com/idexx/lims/orderresults/dao/OrderResultsDAOImpl.getPathEventTimeStampForDepartment(OrderResultsDAOImpl.java:109)[optimized]
        at com/idexx/lims/controls/OrderResultsCustomControlImpl.releaseResultsAndSaveReport(OrderResultsCustomControlImpl.java:360)[optimized]
        at com/idexx/lims/controls/OrderResultsCustomControlBean.releaseResultsAndSaveReport(OrderResultsCustomControlBean.java:440)[optimized]
        at sun/reflect/GeneratedMethodAccessor831.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)[optimized]
        at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]
        at java/lang/reflect/Method.invoke(Method.java:585)[optimized]
        at com/bea/wli/knex/runtime/jcs/container/JcsProxy.invokeBeehiveControl(JcsProxy.java:666)[optimized]
        at com/bea/wli/knex/runtime/jcs/container/JcsProxy.invoke(JcsProxy.java:433)[optimized]
        at $Proxy163.releaseResultsAndSaveReport(LorderResults/logical/orderResultsWs/ReleaseResultsAndSaveReportDocumentXmlBean;)LorderResults/logical/orderResultsWs/ReleaseResultsAndSaveReportResponseDocumentXmlBean;(Unknown Source)
        at com/idexx/lims/controls/process/OrderResultsProcess.orderResultsCustomControlReleaseResultsAndSaveReport(OrderResultsProcess.java:649)
        at sun/reflect/GeneratedMethodAccessor830.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
        at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]
        at java/lang/reflect/Method.invoke(Method.java:585)[optimized]
        at com/bea/wli/bpm/runtime/Perform.invoke(Perform.java:39)[inlined]
        at com/bea/wli/bpm/runtime/Perform.execute(Perform.java:50)[optimized]
        at com/bea/wli/bpm/runtime/SyncReceive.messageDelivery(SyncReceive.java:63)[optimized]
        at com/bea/wli/bpm/runtime/ProcessState.processMessage(ProcessState.java:217)[optimized]
        at com/bea/wli/bpm/runtime/ProcessState.dispatchRequest(ProcessState.java:241)[inlined]
        at com/bea/wli/bpm/runtime/JpdContainer.dispatchProcessRequest(JpdContainer.java:1077)[optimized]
        at com/bea/wli/bpm/runtime/JpdContainer.preInvoke(JpdContainer.java:1041)[optimized]
        at com/bea/wli/knex/runtime/core/container/Invocable.invoke(Invocable.java:248)[optimized]
        at com/bea/wli/bpm/runtime/JpdContainer.invoke(JpdContainer.java:814)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseContainerBean.invokeBase(BaseContainerBean.java:224)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SLSBContainerBean.invoke(SLSBContainerBean.java:136)[optimized]
        at com/bea/wlwgen/StatelessContainer_2hozgx_ELOImpl.invoke(StatelessContainer_2hozgx_ELOImpl.java:137)[optimized]
        at com/bea/wlwgen/SLSBContAdpt.invokeOnBean(SLSBContAdpt.java:29)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseDispatcherBean.runAsInvoke(BaseDispatcherBean.java:185)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseDispatcherBean.invoke(BaseDispatcherBean.java:54)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SyncDispatcherBean.invoke(SyncDispatcherBean.java:168)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SyncDispatcher_k1mrl8_EOImpl.invoke(SyncDispatcher_k1mrl8_EOImpl.java:133)[optimized]
        at com/bea/wli/knex/runtime/core/dispatcher/Dispatcher.remoteDispatch(Dispatcher.java:165)[inlined]
        at com/bea/wli/knex/runtime/core/dispatcher/ServiceHandleImpl.invoke(ServiceHandleImpl.java:460)[optimized]
        at com/bea/wli/knex/runtime/core/call/JavaCall.invoke(JavaCall.java:56)[optimized]
        at com/bea/wli/bpm/runtime/SubFlowCall.invoke(SubFlowCall.java:112)[optimized]
        at com/bea/wli/knex/runtime/core/control/ServiceControlImpl.invoke(ServiceControlImpl.java:1307)[inlined]
        at com/bea/control/ProcessControlImpl.invoke(ProcessControlImpl.java:825)[optimized]
        at com/bea/wli/knex/runtime/core/control/ServiceControlImpl.invoke(ServiceControlImpl.java:1174)[optimized]
        at com/bea/control/ProcessControlImpl.invoke(ProcessControlImpl.java:760)[optimized]
        at com/idexx/lims/controls/process/OrderResultsProcessControlBean.releaseResultsClientRequestwithReturn(OrderResultsProcessControlBean.java:394)
        at sun/reflect/GeneratedMethodAccessor828.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
        at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]
        at java/lang/reflect/Method.invoke(Method.java:585)[optimized]
        at com/bea/wli/knex/runtime/jcs/container/JcsProxy.invokeBeehiveControl(JcsProxy.java:666)[optimized]
        at com/bea/wli/knex/runtime/jcs/container/JcsProxy.invoke(JcsProxy.java:446)[optimized]
        at $Proxy171.releaseResultsClientRequestwithReturn(LorderResults/logical/orderResultsWs/ReleaseResultsAndSaveReportDocumentXmlBean;)LorderResults/logical/orderResultsWs/ReleaseResultsAndSaveReportResponseDocumentXmlBean;(Unknown Source)
        at com/idexx/lims/controls/process/OrderResultsProcess.orderResultsProcessControlReleaseResultsClientRequestwithReturn111(OrderResultsProcess.java:1686)[optimized]
        at sun/reflect/GeneratedMethodAccessor827.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
        at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]
        at java/lang/reflect/Method.invoke(Method.java:585)[optimized]
        at com/bea/wli/bpm/runtime/Perform.invoke(Perform.java:39)[inlined]
        at com/bea/wli/bpm/runtime/Perform.execute(Perform.java:50)[optimized]
        at com/bea/wli/bpm/runtime/SyncReceive.messageDelivery(SyncReceive.java:63)[optimized]
        at com/bea/wli/bpm/runtime/ProcessState.processMessage(ProcessState.java:217)[optimized]
        at com/bea/wli/bpm/runtime/ProcessState.dispatchRequest(ProcessState.java:241)[inlined]
        at com/bea/wli/bpm/runtime/JpdContainer.dispatchProcessRequest(JpdContainer.java:1077)[optimized]
        at com/bea/wli/bpm/runtime/JpdContainer.preInvoke(JpdContainer.java:1041)[optimized]
        at com/bea/wli/knex/runtime/core/container/Invocable.invoke(Invocable.java:248)[optimized]
        at com/bea/wli/bpm/runtime/JpdContainer.invoke(JpdContainer.java:814)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseContainerBean.invokeBase(BaseContainerBean.java:224)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SLSBContainerBean.invoke(SLSBContainerBean.java:136)[optimized]
        at com/bea/wlwgen/StatelessContainer_2hozgx_ELOImpl.invoke(StatelessContainer_2hozgx_ELOImpl.java:137)[optimized]
        at com/bea/wlwgen/SLSBContAdpt.invokeOnBean(SLSBContAdpt.java:29)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseDispatcherBean.runAsInvoke(BaseDispatcherBean.java:185)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseDispatcherBean.invoke(BaseDispatcherBean.java:54)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SyncDispatcherBean.invoke(SyncDispatcherBean.java:168)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SyncDispatcher_k1mrl8_EOImpl.invoke(SyncDispatcher_k1mrl8_EOImpl.java:133)[optimized]
        at com/bea/wli/knex/runtime/core/dispatcher/Dispatcher.remoteDispatch(Dispatcher.java:165)[inlined]
        at com/bea/wli/knex/runtime/core/dispatcher/ServiceHandleImpl.invoke(ServiceHandleImpl.java:460)[optimized]
        at com/bea/wli/knex/runtime/core/call/JavaCall.invoke(JavaCall.java:56)[optimized]
        at com/bea/wli/bpm/runtime/SubFlowCall.invoke(SubFlowCall.java:112)[optimized]
        at com/bea/wli/knex/runtime/core/control/ServiceControlImpl.invoke(ServiceControlImpl.java:1307)[inlined]
        at com/bea/control/ProcessControlImpl.invoke(ProcessControlImpl.java:825)[optimized]
        at com/bea/wli/knex/runtime/core/control/ServiceControlImpl.invoke(ServiceControlImpl.java:1174)[optimized]
        at com/bea/control/ProcessControlImpl.invoke(ProcessControlImpl.java:760)[optimized]
        at com/idexx/lims/controls/process/OrderResultsProcessControlBean.releaseResultsToCustomer(OrderResultsProcessControlBean.java:677)[optimized]
        at sun/reflect/GeneratedMethodAccessor46336.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
        at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]
        at java/lang/reflect/Method.invoke(Method.java:585)[optimized]
        at com/bea/wli/knex/runtime/jcs/container/JcsProxy.invokeBeehiveControl(JcsProxy.java:666)[optimized]
        at com/bea/wli/knex/runtime/jcs/container/JcsProxy.invoke(JcsProxy.java:446)[optimized]
        at $Proxy12611.releaseResultsToCustomer(LorderResults/logical/orderResultsWs/ReleaseResultsToCustomerDocumentXmlBean;)LorderResults/logical/orderResultsWs/ReleaseResultsToCustomerResponseDocumentXmlBean;(Unknown Source)
        at com/idexx/lims/processes/ReleaseResultsToCustomerProcess.sendReleaseRequest(ReleaseResultsToCustomerProcess.java:101)
        at sun/reflect/GeneratedMethodAccessor46335.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)
        at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]
        at java/lang/reflect/Method.invoke(Method.java:585)[optimized]
        at com/bea/wli/bpm/runtime/Perform.invoke(Perform.java:39)[inlined]
        at com/bea/wli/bpm/runtime/Perform.execute(Perform.java:50)[optimized]
        at com/bea/wli/bpm/runtime/Receive.messageDelivery(Receive.java:93)[optimized]
        at com/bea/wli/bpm/runtime/ProcessState.processMessage(ProcessState.java:217)[optimized]
        at com/bea/wli/bpm/runtime/ProcessState.dispatchRequest(ProcessState.java:241)[inlined]
        at com/bea/wli/bpm/runtime/JpdContainer.dispatchProcessRequest(JpdContainer.java:1077)[optimized]
        at com/bea/wli/bpm/runtime/JpdContainer.preInvoke(JpdContainer.java:1041)[optimized]
        at com/bea/wli/knex/runtime/core/container/Invocable.invoke(Invocable.java:248)[optimized]
        at com/bea/wli/bpm/runtime/JpdContainer.invoke(JpdContainer.java:814)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseContainerBean.invokeBase(BaseContainerBean.java:224)[optimized]
        at com/bea/wli/knex/runtime/core/bean/SLSBContainerBean.invoke(SLSBContainerBean.java:136)[optimized]
        at com/bea/wlwgen/StatelessContainer_2hozgx_ELOImpl.invoke(StatelessContainer_2hozgx_ELOImpl.java:137)[optimized]
        at com/bea/wlwgen/SLSBContAdpt.invokeOnBean(SLSBContAdpt.java:29)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseDispatcherBean.runAsInvoke(BaseDispatcherBean.java:185)[optimized]
        at com/bea/wli/knex/runtime/core/bean/BaseDispatcherBean.invoke(BaseDispatcherBean.java:54)[optimized]
        at com/bea/wli/knex/runtime/core/bean/AsyncDispatcherBean.onMessage(AsyncDispatcherBean.java:259)[optimized]
        at weblogic/ejb/container/internal/MDListener.execute(MDListener.java:429)[inlined]
        at weblogic/ejb/container/internal/MDListener.transactionalOnMessage(MDListener.java:335)[inlined]
        at weblogic/ejb/container/internal/MDListener.onMessage(MDListener.java:291)[optimized]
        at weblogic/jms/client/JMSSession.onMessage(JMSSession.java:4072)[optimized]
        at weblogic/jms/client/JMSSession.execute(JMSSession.java:3962)[optimized]
        at weblogic/jms/client/JMSSession$UseForRunnable.run(JMSSession.java:4490)[optimized]
        at weblogic/work/ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)[optimized]
        at weblogic/work/ExecuteThread.execute(ExecuteThread.java:209)[optimized]
        at weblogic/work/ExecuteThread.run(ExecuteThread.java:181)
        at jrockit/vm/RNI.c2java(IIIII)V(Native Method)
        -- end of trace
    Extended, platform specific info:
    libc release: 2.3.4-stable
    Elf headers:
    libc       ehdrs: EI: 7f454c46010101000000000000000000 ET: 3 EM: 3 V: 1 ENTRY: 00719ed0 PHOFF: 00000034 SHOFF: 00174ab8 EF: 0x0 HS: 52 PS: 32 PHN; 10 SS: 40 SHN: 67 STIDX: 66
    libpthread ehdrs: EI: 7f454c46010101000000000000000000 ET: 3 EM: 3 V: 1 ENTRY: 00943850 PHOFF: 00000034 SHOFF: 00019f00 EF: 0x0 HS: 52 PS: 32 PHN; 9 SS: 40 SHN: 39 STIDX: 38
    libjvm     ehdrs: EI: 7f454c46010101000000000000000000 ET: 3 EM: 3 V: 1 ENTRY: 0004bbe0 PHOFF: 00000034 SHOFF: 00297e24 EF: 0x0 HS: 52 PS: 32 PHN; 4 SS: 40 SHN: 19 STIDX: 16
        *  If you see this dump, please go to                    *
        *  http://edocs.bea.com/jrockit/go2troubleshooting.html  *
        *  for troubleshooting information.                      *
    ===== END DUMP ===============================================================

    Vicky77 wrote:
    We are seeing memory leaks in our application, this is causing Out of Memory exception after every 5-7 days in prod environment. We tried to analyse our application with JPROBE and these are our findings...
    1) Once these session is expiring, all application objects are getting garbage collected.
    2) We are seeing huge increase in String and Char[] with each submitted applicationWhere are these coming from?
    Are you using any libraries like JAXB? Are you binding XML to objects?
    We are using Weblogic 10.0 with jdk version 1.5.0_06. Are there any known String related memory leak issues.
    My understanding is that unless we are using any static variable or application scope objects we should have any memory leakage.Apparently not.
    Can someone please validate if this understanding is correct? The JVM is telling you that it's incorrect. Believe the evidence you have before you.
    Your JVM settings might help. What are the settings for the GC? How big is your perm space, and how is that changing with time?
    What could be other possible causes of memory leaks? We are also using private static ThreadLocal variablesSounds like the perm space is exploding in size. It fills up and you're done.
    I'd recommend that you download JVMStat from Sun and watch what memory is doing as you run your test. It's not a nice graphic view of eden, old & new gen, and perm spaces that will give you an idea of what's going on. It won't tell you why. Keep drilling down with JProbe.
    %

  • How to generat multiple invoices based on per employee/contractor/services?

    Hello Experts / Dina,
    I am in situation where customer is in business of body shopping and charges to his final customer based on individual invoice / per employee /contracor & customer services. This was happening in legacy system but after the implementation of Oracle Project costing and Oracle Project billing, customer is not able to generate invoices per employee services. Rather consolidated invoices are getting generated.
    How to achieve this functionality in oracle project billing?
    Lets take example - On Project P1 for customer ABC, 3 below employees are working on different task for 3 months.
    Now after one month employees have been billed as shown below.
    Emp 1 - 1000 USD - for 100 Hrs
    Emp 2 - 2000 USD - for 200 Hrs
    Emp 3 - 1000 USD - for 50 hrs
    Now @ end of the month when invoice is getting generated is 1 invoice including 3 lines of amount total 4000 USD. There is problem; customer wants that there should be 3 different invoices per employee shoud generated based on above mentiond 3 diff lines for customer ABC.
    I guess with oracle projects billing - You can split the invoice based on Accrue through date ( which is not possible in this case ) and agreement ( which is also not possible in this case ) and different currency ( which is again not possible in this case) - I may be wrong when saying it is not possible. plz correct me if I am wrong.
    even I guess billing extension wont work. So is there any way to achive this?
    Right now only option i am thinking is let single invoice of 4000 USD with 3 different lines should pass to AR and while priniting the invoice customer can create 3 diff prints which includes individual lines. and while applying receipts on the single invoice in the system, customer can apply the receipts to indivual lines.
    but I am not sure about AUDIT issues.. Can some one think about any AUDIT issues comes to this approch or issues with TAX rounding amount issues ?
    Infact I would like to solve this issue with the help of Oracle Projects billing and not with custom invoice print program. I guess someone from you experts can figure it out to generate muiltple invoice based on employees / suppliers / contractors / materials etc.
    A suggestion on Extension / customization / seeded functionality of Oracle Project billing on thi issue would be gr8 help.
    Please help.
    Thanks
    Edited by: oracle_samba on Jan 7, 2013 1:06 AM
    Edited by: oracle_samba on Jan 7, 2013 1:07 AM

    Hi Dina,
    First of all thanks for your update :-) Your solution looks much promising.
    I thought of using billing extension but rejected on the ground that I would end up in generating events based on employee for their corsponding billig amounts so finally generating a consolidated invoice only in One GDI run. But what i was missing was pre-processing extension and running the extention in loop based on employee count.
    I am fully sure business would not have any issues of auto approving and releasing invoice upon generation. But my question is "is it possible to just approve the invoice & not release it using auto approve and release extension?" The reason is I think when GDI runs it only deletes Unapproved invoice & spare Approve invoices. - So please suggest.
    Also please validate my understanding about your solution with an existing example -
    As with the current example, there are 3 EMP presents so need to run GDI 3 times and develop pre-processing ext in a such a way that at each time it will put on hold on all the billable items except EMP1, and EMP2 and EMP3 on each consecutive run respectivly. And ensure that Auto Approve and release extension should be used in order to avoid overriding previously generated invoice? Am I right ?
    Many Many thanks for solution !!!
    Regards,
    :-)

Maybe you are looking for

  • Error - "Message Interface does not exist in any software components"

    HI This is an Idoc sender - SOAP receiver scenario. When I try to create the receiver determination, I get a warning message - " Message interface does not exist in any software components installed on this business system" I checked all the usual th

  • Solution found for ios 6 wifi issues

    solution ====== I had the same problem as you(and others). some people are having a dropped wifi problem whereby it lets you connect to your home network(or other)and a second or so later it drops the signal and loads up a page at apple.com that no l

  • Weblogic Uninstall Issue

    Hi, We have installed WebLogic 32-bit install on WIN 2008 64-bit server by specifying a local JVM (jrockit) during installation. Upon uninstalling we get a fatal error and below is the snapshot of the error. Please let me know if you need the entire

  • Toshiba/x86 -- Cannot find boot.bin

    I am trying to install Solaris 10 on a Toshiba Satellite A10 laptop, I insert CD 1, and it goes to Primary Boot, and then says "cannot find boot.bin". I tried to boot from the other 3 disks, but unsurprisingly, it did not work. I read every posts abo

  • Tascam midi interface

    I got a tascam US 122 interface. I can finally get the usb light showing and Logic express 8 acknowledges it. I don't get any sound through it. I know all the leads are right. I tried just playing Itunes through it and that did not work either. I hav