Help needed in understanding the compiled format of actionscripts

Hi all,
I need to inject an actionscript to an existing .SWF file. So
can anyone help me out in explaining the process involved in the
compilation of the action script into binary form which has to be
injected into the existing SWF file. I need to do this
programmatically using Java. So pls dont suggest me any Third party
softwares which does that.
Please help me out..
Thanks in advance.
Prabakaran Srinivasan.

Hi all,
I need to inject an actionscript to an existing .SWF file. So
can anyone help me out in explaining the process involved in the
compilation of the action script into binary form which has to be
injected into the existing SWF file. I need to do this
programmatically using Java. So pls dont suggest me any Third party
softwares which does that.
Please help me out..
Thanks in advance.
Prabakaran Srinivasan.

Similar Messages

  • Help needed in understanding the code.

    Hi All,
    I am just trying to understand the Java code in one Self Serice page. However, I am having tough in understanding the CO code. In the prosessRequest class, I have the below code.
    oapagecontext.putTransactionValue("AddAssignmentInsertRowFlag", "N");
    oaapplicationmodule.getTransaction().commit();
    As soon as, oaapplicationmodule.getTransaction().commit();
    gets executed, its calling some other class. Not sure what is being called, but i can see the log messages that its executing some other class which actually does the calls to DB APIs and inserting data into main tables.
    Can you please explain me what is being called to make DB API calls. I would greatly appreciate your help.
    Thanks in Advance!
    - Rani
    ****************************Here is the full code of class for your reference****************************
    public void processFormRequest(OAPageContext oapagecontext, OAWebBean oawebbean)
    if("SelectedResourceLink".equals(oapagecontext.getParameter("event")))
    Debug.log(oapagecontext, this, "SelectedResourceLink has been pressed", 3);
    oapagecontext.redirectImmediately("OA.jsp?akRegionCode=PA_SELECTED_RESOURCES_LAYOUT&akRegionApplicationId=275", true, "RP");
    String s = (String)oapagecontext.getTransactionValue("AssignmentType");
    super.processFormRequest(oapagecontext, oawebbean);
    Debug.log(oapagecontext, this, "in processFormRequest()", 3);
    OAApplicationModule oaapplicationmodule = oapagecontext.getRootApplicationModule();
    if(!"Y".equals(oapagecontext.getParameter("paMass")))
    String s1 = oapagecontext.getParameter("event");
    if("lovUpdate".equals(s1))
    Debug.log(oapagecontext, this, "*** User Selected a value from LOV ***", 3);
    String s3 = oapagecontext.getParameter("source");
    Debug.log(oapagecontext, this, "*** lovInputSourceId = " + s3 + " ***", 3);
    if("ProjectNumber".equals(s3) && "Project".equals(s))
    Hashtable hashtable = oapagecontext.getLovResultsFromSession(s3);
    String s10 = (String)hashtable.get("ProjectId");
    Debug.log(oapagecontext, this, "*** ProjectId ***" + s10, 3);
    oapagecontext.putTransactionValue("paProjectId", s10);
    if("Project".equals(s))
    Debug.log(oapagecontext, this, "*** Setting default value for Delivery assignment ***", 3);
    oaapplicationmodule.invokeMethod("defaultProjectAttrs");
    if("RoleName".equals(s3))
    Hashtable hashtable1 = oapagecontext.getLovResultsFromSession(s3);
    Debug.log(oapagecontext, this, "*** RoleName Hashtable Contents ***" + hashtable1.toString(), 3);
    String s11 = (String)hashtable1.get("RoleId");
    Debug.log(oapagecontext, this, "*** RoleId ***" + s11, 3);
    Debug.log(oapagecontext, this, "*** AssignmentType = " + s + "***", 3);
    if("Open".equals(s))
    Debug.log(oapagecontext, this, "*** Calling defaultJobAttrs for Open Assignment***", 3);
    Serializable aserializable[] = {
    s11
    oaapplicationmodule.invokeMethod("defaultJobAttrs", aserializable);
    if("Template".equals(s) || "Open".equals(s))
    Debug.log(oapagecontext, this, "*** Defaulting Competencies ***" + s11, 3);
    OAViewObject oaviewobject = (OAViewObject)oapagecontext.getApplicationModule(oawebbean).findViewObject("RoleCompetenciesVO");
    oaviewobject.setMaxFetchSize(-1);
    oaviewobject.setWhereClauseParam(0, s11);
    oaviewobject.executeQuery();
    Debug.log(oapagecontext, this, "*** End LOV event ***", 3);
    String s4 = "";
    String s8 = "";
    OASubTabLayoutBean oasubtablayoutbean1 = (OASubTabLayoutBean)oawebbean.findIndexedChildRecursive("AddAssignmentSubTabLayout");
    if("Project".equals(s) && !oasubtablayoutbean1.isSubTabClicked(oapagecontext))
    OAViewObject oaviewobject1 = (OAViewObject)oapagecontext.getApplicationModule(oawebbean).findViewObject("AddNewAssignmentVO");
    s4 = (String)oaviewobject1.first().getAttribute("ProjectId");
    s8 = (String)oaviewobject1.first().getAttribute("ProjectNumber");
    Debug.log(oapagecontext, this, "*** lProjectId = " + s4, 3);
    Debug.log(oapagecontext, this, "*** lProjectNumber = " + s8, 3);
    if("Project".equals(s) && !oasubtablayoutbean1.isSubTabClicked(oapagecontext) && !StringUtils.isNullOrEmpty(s8))
    Debug.log(oapagecontext, this, "Delivery Assignment, Project Number is there but no Project Id", 3);
    if(s4 == null || s4.equals(""))
    ViewObject viewobject = oapagecontext.getApplicationModule(oawebbean).findViewObject("ObtainProjectId");
    if(viewobject == null)
    String s14 = "SELECT project_id FROM PA_PROJECTS_ALL WHERE segment1 =:1";
    viewobject = oaapplicationmodule.createViewObjectFromQueryStmt("ObtainProjectId", s14);
    viewobject.setWhereClauseParam(0, s8);
    viewobject.executeQuery();
    int j = viewobject.getRowCount();
    if(j != 1)
    Debug.log(oapagecontext, this, "Error : Project Number is Invalid or not unique", 3);
    OAException oaexception4 = null;
    oaexception4 = new OAException("PA", "PA_PROJECT_NUMBER_INVALID");
    oaexception4.setApplicationModule(oaapplicationmodule);
    throw oaexception4;
    oracle.jbo.Row row = viewobject.last();
    if(row != null)
    Object obj2 = row.getAttribute(0);
    if(obj2 != null)
    s4 = obj2.toString();
    if(s4 != null)
    oapagecontext.putTransactionValue("paProjectId", s4);
    if(oaapplicationmodule.findViewObject("AddNewAssignmentsVO") != null)
    oaapplicationmodule.findViewObject("AddNewAssignmentVO").first().setAttribute("ProjectId", s4);
    } else
    Debug.log(oapagecontext, this, "Error : No rows returned in Project Number query", 3);
    OAException oaexception5 = null;
    oaexception5 = new OAException("PA", "PA_PROJECT_NUMBER_INVALID");
    oaexception5.setApplicationModule(oaapplicationmodule);
    throw oaexception5;
    String s12 = "F";
    if(s4 != null && !s4.equals(""))
    String s13 = Security.checkUserPrivilege("PA_ASN_CR_AND_DL", "PA_PROJECTS", s4, oapagecontext, false);
    if("F".equals(s13))
    OAException oaexception3 = null;
    oaexception3 = new OAException("PA", "PA_ADD_DELIVERY_ASMT_SECURITY");
    oaexception3.setApplicationModule(oaapplicationmodule);
    Debug.log(oapagecontext, this, "ERROR:" + oaexception3.getMessage(), 3);
    throw oaexception3;
    OAViewObject oaviewobject2 = (OAViewObject)oapagecontext.getApplicationModule(oawebbean).findViewObject("AddNewAssignmentVO");
    Object obj = oaviewobject2.first().getAttribute("BillRateOverride");
    Object obj1 = oaviewobject2.first().getAttribute("BillRateCurrOverride");
    Object obj3 = oaviewobject2.first().getAttribute("MarkupPercentOverride");
    Object obj4 = oaviewobject2.first().getAttribute("DiscountPercentOverride");
    Object obj5 = oaviewobject2.first().getAttribute("TpRateOverride");
    Object obj6 = oaviewobject2.first().getAttribute("TpCurrencyOverride");
    Object obj7 = oaviewobject2.first().getAttribute("TpCalcBaseCodeOverride");
    Object obj8 = oaviewobject2.first().getAttribute("TpPercentAppliedOverride");
    Object obj9 = null;
    Object obj10 = null;
    Debug.log(oapagecontext, this, "in AddAssignmentsTopCO processFcstInfoRg(): getting the implementation options", 3);
    Object obj11 = oaviewobject2.first().getAttribute("BrRateDiscReasonCode");
    Object obj12 = oapagecontext.getTransactionValue("rateDiscReasonFlag");
    Object obj13 = oapagecontext.getTransactionValue("brOverrideFlag");
    Object obj14 = oapagecontext.getTransactionValue("brDiscountOverrideFlag");
    String s22 = oapagecontext.getParameter("BillRateRadioGroup");
    if("BRCurrencyRadioButton".equals(s22))
    Debug.log(oapagecontext, this, "BRCurrencyRadioButton chosen", 3);
    if(obj == null || obj1 == null)
    Debug.log(oapagecontext, this, "error", 3);
    OAException oaexception6 = new OAException("PA", "PA_CURR_BILL_RATE_REQUIRED");
    oaexception6.setApplicationModule(oaapplicationmodule);
    throw oaexception6;
    } else
    if("BRMarkupRadioButton".equals(s22))
    Debug.log(oapagecontext, this, "BRMarkup%RadioButton chosen", 3);
    if(obj3 == null)
    Debug.log(oapagecontext, this, "error", 3);
    OAException oaexception7 = new OAException("PA", "PA_MARKUP_PERCENT_REQUIRED");
    oaexception7.setApplicationModule(oaapplicationmodule);
    throw oaexception7;
    } else
    if("BRDiscountRadioButton".equals(s22))
    Debug.log(oapagecontext, this, "BRDiscount%RadioButton chosen", 3);
    if(obj4 == null)
    Debug.log(oapagecontext, this, "error", 3);
    OAException oaexception8 = new OAException(oapagecontext.getMessage("PA", "PA_DISCOUNT_PERCENT_REQUIRED", null));
    oaexception8.setApplicationModule(oaapplicationmodule);
    throw oaexception8;
    if("Y".equals(oapagecontext.getTransactionValue("paMass")) || "Admin".equals(s) || "Template".equals(s))
    Debug.log(oapagecontext, this, "Need not have this check for team templates ", 3);
    } else
    if(obj13 != null && obj13.equals("Y") && obj12 != null && obj12.equals("Y") && "BRCurrencyRadioButton".equals(s22) && StringUtils.isNullOrEmpty((String)obj11))
    Debug.log(oapagecontext, this, "error 1", 3);
    OAException oaexception9 = new OAException("PA", "PA_RATE_DISC_REASON_REQUIRED");
    oaexception9.setApplicationModule(oaapplicationmodule);
    throw oaexception9;
    if(obj14 != null && obj14.equals("Y") && obj12 != null && obj12.equals("Y") && "BRDiscountRadioButton".equals(s22) && StringUtils.isNullOrEmpty((String)obj11))
    Debug.log(oapagecontext, this, "error 2", 3);
    OAException oaexception10 = new OAException("PA", "PA_RATE_DISC_REASON_REQUIRED");
    oaexception10.setApplicationModule(oaapplicationmodule);
    throw oaexception10;
    Debug.log(oapagecontext, this, "*** Selected transfer price radio shr = " + s22, 3);
    oapagecontext.putTransactionValue("BROGroupSelected", s22);
    Debug.log(oapagecontext, this, "*** 1 :Selected bill rate radio = " + s22, 3);
    if(s22 != null)
    oapagecontext.putSessionValue("BROGroupSelected", s22);
    s22 = oapagecontext.getParameter("TransferPriceRadioGroup");
    Debug.log(oapagecontext, this, "*** Selected transfer price radio = " + s22, 3);
    if("TPCurrencyRadioButton".equals(s22))
    Debug.log(oapagecontext, this, "***TPCurrencyRadioButton chosen", 3);
    if(obj5 == null || obj6 == null)
    Debug.log(oapagecontext, this, "error", 3);
    OAException oaexception11 = new OAException("PA", "PA_CURR_RATE_REQUIRED");
    oaexception11.setApplicationModule(oaapplicationmodule);
    throw oaexception11;
    } else
    if("TPBasisRadioButton".equals(s22))
    Debug.log(oapagecontext, this, "***TPBasisRadioButton chosen", 3);
    if(obj7 == null || obj8 == null)
    Debug.log(oapagecontext, this, "error", 3);
    OAException oaexception12 = new OAException("PA", "PA_BASIS_APPLY_PERCENT_REQD");
    oaexception12.setApplicationModule(oaapplicationmodule);
    throw oaexception12;
    oapagecontext.putTransactionValue("TPORadioGroupSelected", s22);
    if(oaapplicationmodule.findViewObject("AddNewAssignmentVO").first().getAttribute("RoleId") != null)
    Debug.log(oapagecontext, this, "*** Role Id is + " + oaapplicationmodule.findViewObject("AddNewAssignmentVO").first().getAttribute("RoleId"), 3);
    if(oapagecontext.getParameter("SearchCompetencies") != null)
    String s2 = "OA.jsp?akRegionCode=PA_COMP_SEARCH_LAYOUT&akRegionApplicationId=275&paCallingPage=AddAssignment";
    oapagecontext.redirectImmediately(s2, true, "RP");
    OASubTabLayoutBean oasubtablayoutbean = (OASubTabLayoutBean)oawebbean.findIndexedChildRecursive("AddAssignmentSubTabLayout");
    if(s.equals("Project") && oasubtablayoutbean.isSubTabClicked(oapagecontext) && !StringUtils.isNullOrEmpty((String)oapagecontext.getTransactionValue("paProjectId")))
    String s5 = "PA_ASN_FCST_INFO_ED";
    String s9 = "F";
    s9 = Security.checkUserPrivilege(s5, "PA_PROJECTS", (String)oapagecontext.getTransactionValue("paProjectId"), oapagecontext, false);
    if(s9.equals("F"))
    Debug.log(oapagecontext, this, "Error : PA_ASN_FCST_INFO_ED previelge not found", 3);
    OAException oaexception2 = null;
    oaexception2 = new OAException("PA", "PA_NO_SEC_FIN_INFO");
    oaexception2.setApplicationModule(oaapplicationmodule);
    throw oaexception2;
    if(oapagecontext.getParameter("GoBtn") != null)
    if("Y".equals(oapagecontext.getTransactionValue("paMass")) && "0".equals(oapagecontext.getTransactionValue("paNumSelectedResources")))
    OAException oaexception = new OAException("PA", "PA_NO_RESOURCE_SELECTED");
    oaexception.setApplicationModule(oapagecontext.getRootApplicationModule());
    Debug.log(oapagecontext, this, "ERROR:" + oaexception.getMessage(), 3);
    throw oaexception;
    String s6 = "T";
    if(s.equals("Admin") && "Y".equals(oapagecontext.getTransactionValue("paMass")) && "1".equals(oapagecontext.getTransactionValue("paNumSelectedResources")))
    Debug.log(oapagecontext, this, "resource id[19] is " + (String)oapagecontext.getTransactionValue("paResourceId"), 3);
    if(oapagecontext.getTransactionValue("AdminSecurityChecked") == null)
    String s7 = Security.checkPrivilegeOnResource("-999", (String)oapagecontext.getTransactionValue("paResourceId"), SessionUtils.getResourceName((String)oapagecontext.getTransactionValue("paResourceId"), oapagecontext), "PA_ADM_ASN_CR_AND_DL", null, oapagecontext, false);
    if("F".equals(s7))
    OAException oaexception1 = new OAException("PA", "PA_ADD_ADMIN_ASMT_SECURITY");
    oaexception1.setApplicationModule(oapagecontext.getRootApplicationModule());
    Debug.log(oapagecontext, this, "ERROR:" + oaexception1.getMessage(), 3);
    throw oaexception1;
    if("SUBMIT_APPRVL".equals(oapagecontext.getParameter("AddAsgmtApplyAction")))
    oapagecontext.putTransactionValue("Save", "N");
    else
    oapagecontext.putTransactionValue("Save", "Y");
    String as[] = oaapplicationmodule.getApplicationModuleNames();
    String as1[] = oaapplicationmodule.getViewObjectNames();
    Debug.log(oapagecontext, this, "no of app module: " + as.length, 3);
    Debug.log(oapagecontext, this, "no of view: " + as1.length, 3);
    for(int i = 0; i < as.length; i++)
    Debug.log(oapagecontext, this, "app module: " + as, 3);
    for(int k = 0; k < as1.length; k++)
    Debug.log(oapagecontext, this, "app module: " + as1[k], 3);
    Debug.log(oapagecontext, this, "*** assignmentType = " + s, 3);
    Debug.log(oapagecontext, this, "*** projectId = " + oapagecontext.getTransactionValue("paProjectId"), 3);
    if("Project".equals(s) && !StringUtils.isNullOrEmpty((String)oapagecontext.getTransactionValue("paProjectId")) && !"Y".equals(oapagecontext.getParameter("paMass")))
    Debug.log(oapagecontext, this, "*** Setting default staffing owner for add delivery assignment -- projectId = " + oapagecontext.getTransactionValue("paProjectId"), 3);
    oaapplicationmodule.invokeMethod("setDefaultStaffingOwner");
    OAViewObject oaviewobject3 = (OAViewObject)oaapplicationmodule.findViewObject("RoleCompetenciesVO");
    oaviewobject3.setMaxFetchSize(0);
    oaviewobject3.setRangeSize(-1);
    oracle.jbo.Row arow[] = oaviewobject3.getAllRowsInRange();
    for(int l = 0; l < arow.length; l++)
    RoleCompetenciesVORowImpl rolecompetenciesvorowimpl = (RoleCompetenciesVORowImpl)oaviewobject3.getRowAtRangeIndex(l);
    Debug.log(oapagecontext, this, "roleCompetenciesVORowImpl" + rolecompetenciesvorowimpl, 3);
    rolecompetenciesvorowimpl.setPlsqlState((byte)0);
    oapagecontext.putTransactionValue("AddAssignmentInsertRowFlag", "N");
    oaapplicationmodule.getTransaction().commit();
    if("Y".equals(oapagecontext.getTransactionValue("paMass")) && !"1".equals(oapagecontext.getTransactionValue("paNumSelectedResources")))
    if(!"SUBMIT_APPRVL".equals(oapagecontext.getParameter("AddAsgmtApplyAction")))
    Debug.log(oapagecontext, this, "Save, Mass, NumSelectedResources>1", 3);
    Debug.log(oapagecontext, this, "work flow has been launched", 3);
    OADialogPage oadialogpage = new OADialogPage((byte)3, new OAException("PA", "PA_MASS_ASSIGNMENT_CONFIRM"), null, "OA.jsp?akRegionCode=PA_RESOURCE_LIST_LAYOUT&akRegionApplicationId=275&addBreadCrumb=N", null);
    oadialogpage.setRetainAMValue(false);
    oapagecontext.redirectToDialogPage(oadialogpage);
    return;
    Debug.log(oapagecontext, this, "SaveAndSubmit, Mass, NumSelectedResources>1", 3);
    putParametersOnSession(oapagecontext);
    int i1 = 0;
    int j1 = 0;
    String s21 = "SelectedResourceId";
    int l1 = Integer.parseInt(oapagecontext.getTransactionValue("paNumSelectedResources").toString());
    Debug.log(oapagecontext, this, "size of resourceArray = " + l1, 3);
    String as2[] = new String[l1];
    for(; !"END".equals(oapagecontext.getTransactionValue(s21.concat(Integer.toString(i1)))); i1++)
    if(oapagecontext.getTransactionValue(s21.concat(Integer.toString(i1))) != null)
    Debug.log(oapagecontext, this, "resource id = " + oapagecontext.getTransactionValue(s21.concat(Integer.toString(i1))).toString(), 3);
    as2[j1] = oapagecontext.getTransactionValue(s21.concat(Integer.toString(i1))).toString();
    j1++;
    SessionUtils.putMultipleParameters("paResourceId", as2, oapagecontext);
    Debug.log(oapagecontext, this, "redirect to Mass Submit for Approval page", 3);
    oapagecontext.redirectImmediately("OA.jsp?akRegionCode=PA_MASS_SUBMIT_LAYOUT&akRegionApplicationId=275&paCallingPage=MassAdd&paProjectId=" + oapagecontext.getTransactionValue("p_project_id"), false, "RP");
    return;
    if("RETURN_TO".equals(oapagecontext.getParameter("AddAsgmtApplyAction")))
    Debug.log(oapagecontext, this, "Return to Option Selected ", 3);
    String s15 = (String)oapagecontext.getTransactionValue("PrevPageUrl");
    int k1 = s15.indexOf("OA.jsp?");
    s15 = s15.substring(k1);
    Debug.write(oapagecontext, this, "*** RETURN_TO URL: " + s15, 3);
    oapagecontext.redirectImmediately(s15);
    } else
    if("ADD_ANOTHER".equals(oapagecontext.getParameter("AddAsgmtApplyAction")))
    Debug.log(oapagecontext, this, "Add Another Option Selected", 3);
    oaapplicationmodule.invokeMethod("resetAddNewAssignment");
    if(oaapplicationmodule.findViewObject("RoleCompetenciesVO") != null)
    oaapplicationmodule.findViewObject("RoleCompetenciesVO").clearCache();
    String s16;
    if(!s.equals("Project") && !s.equals("Admin"))
    s16 = "OA.jsp?akRegionCode=PA_ADD_ASSIGNMENTS_PAGE_LAYOUT&akRegionApplicationId=275&paProjectId=" + oapagecontext.getTransactionValue("paProjectId") + "&paAssignmentType=" + s + "&OA_SubTabIdx=0";
    else
    s16 = "OA.jsp?akRegionCode=PA_ADD_ASSIGNMENTS_PAGE_LAYOUT&akRegionApplicationId=275&paResourceId=" + oapagecontext.getTransactionValue("paResourceId") + "&paAssignmentType=" + s + "&OA_SubTabIdx=0";
    Debug.log(oapagecontext, this, "nextUrl " + s16, 3);
    if("Template".equals(s))
    oapagecontext.redirectImmediately(s16, true, "S");
    else
    oapagecontext.redirectImmediately(s16, false, "S");
    } else
    if("UPDATE_DETAILS".equals(oapagecontext.getParameter("AddAsgmtApplyAction")))
    Debug.log(oapagecontext, this, "Update Details Selected ", 3);
    String s17 = "";
    if("Staffed".equals(s))
    s17 = "ProjStaffedAsmt";
    else
    if("Admin".equals(s))
    s17 = "AdminAsmt";
    else
    if("Project".equals(s))
    s17 = "PersonStaffedAsmt";
    else
    if("Open".equals(s))
    s17 = "OpenAsmt";
    else
    if("Template".equals(s))
    s17 = "TemplateAsmt";
    String s19 = "OA.jsp?akRegionCode=PA_ASMT_LAYOUT&akRegionApplicationId=275&paProjectId=" + oapagecontext.getTransactionValue("paProjectId") + "&paAssignmentId=" + oapagecontext.getTransactionValue("wfOutAssignmentId") + "&paCalledPage=" + s17 + "&addBreadCrumb=RP";
    Debug.log(oapagecontext, this, "UPDATE_DETAILS: URL: " + s19, 3);
    oapagecontext.redirectImmediately(s19, false, "RP");
    if(s.equals("Staffed") || s.equals("Admin") || s.equals("Project"))
    String s18 = (String)oapagecontext.getTransactionValue("wfOutResourceId");
    String s20 = (String)oapagecontext.getTransactionValue("wfOutAssignmentId");
    Debug.log(oapagecontext, this, "outResourceId " + s18, 3);
    Debug.log(oapagecontext, this, "outAssignmentId " + s20, 3);
    if("SUBMIT_APPRVL".equals(oapagecontext.getParameter("AddAsgmtApplyAction")))
    if(s.equals("Staffed"))
    oapagecontext.redirectImmediately("OA.jsp?akRegionCode=PA_SUBMIT_ASMT_APR_LAYOUT&akRegionApplicationId=275&paAsgmtId=" + s20 + "&paResourceId=" + s18 + "&paProjectId=" + oapagecontext.getTransactionValue("paProjectId") + "&paAsgmtAprStatus=ASGMT_APPRVL_WORKING&paAssignmentType=" + s + "&paCallingPage=AddAssignment", false, "RP");
    return;
    oapagecontext.redirectImmediately("OA.jsp?akRegionCode=PA_SUBMIT_ASMT_APR_LAYOUT&akRegionApplicationId=275&paAsgmtId=" + s20 + "&paResourceId=" + s18 + "&paAsgmtAprStatus=ASGMT_APPRVL_WORKING&paAssignmentType=" + s + "&paCallingPage=AddAssignment", false, "RP");

    Hi Rani,
    As soon as the transaction is commited the methods in the VORowImpl Class are called.
    You can check in the VORowImpl class and search for the log messages.
    Thanks,
    Gaurav

  • Help needed in understanding the concept of hierarchical queries

    I really need help in this matter. I have a flafile containing about 4000 rows. It is from my supplier, it's structure is as follows:
    create table Flatfile
    (Pgroup varchar2(30),
    Pclass varchar2(30),
    Manufacturer varchar2(30),
    Article varchar2(30),
    Price Number(6,2));
    Insert into Flatfile Values
    ('Application Software','Database Software','Oracle','Oracle 10G',115);
    Insert into Flatfile Values
    ('Application Software','Database Software','Microsoft','MS SQL Server 2000',200);
    Insert into Flatfile Values
    ('Application Software','Spreadsheet Software','Microsoft','Excel',100);
    Insert into Flatfile Values
    ('Monitor','15"','Acer','Acer 15"" TFT superscreen',199);
    Insert into Flatfile Values
    ('Monitor','15"','Sony','Sony R1500 flat',225);
    Insert into Flatfile Values
    ('Monitor','17"','Philips','Philips Flatscreen',250);
    Insert into Flatfile Values
    ('Monitor','19"','Viewsonic','Viewsonic PLasma Monitor',275);
    Insert into Flatfile Values
    ('Processor','AMD','AMD','FX-55',600);
    Insert into Flatfile Values
    ('Processor','Intel','Intel','P4 3 GHZ',399);
    My goal is to make a hierarchical query with the start with and connect by clauses. From what I have read is that I need to normalize the data of the flatfile.
    How do I achieve a table which I can query so that the query will represent the hierarchy that exists. Namely
    Pgroup
    ++Pclasse
    Application Software
    ++Database Software
    ++Spreadsheet Software
    So a 2-level hierarchy. I'd like to understand this simple concept first. I built on the knowledge that I gain. So the questions are:
    1.What do I need to do to make the table so that I can use a hierarchical query on it?
    2. How should the query syntax be?
    3. Is it also possible to get the data in the hierarchical query sorted asec?
    I would only like to use the simple structures of the start with and connect by clauses first. I've read there are some new additions to 10G. The problem with the examples used by the tutorials is that the tables are already made so that they are suitable for hierarchical queries. I hope to understand it by this example. And take it a step further.
    Sincerely,
    Pete

    Primarily hierarchy query serves to process tree-like structures which RDBMS simulates using through parent-child relation, often in a single table (see famoust
    EMP table where employee can have the manager who is an employee at the same time).
    In your case it could look like:
    SQL> select pgroup, pclass from flatfile;
    PGROUP                         PCLASS
    Application Software           Database Software
    Application Software           Database Software
    Application Software           Spreadsheet Software
    Monitor                        15"
    Monitor                        15"
    Monitor                        17"
    Monitor                        19"
    Processor                      AMD
    Processor                      Intel
                                   Application Software
                                   Monitor
                                   Processor
    12 rows selected.
    SQL> select decode(level,1,pclass,'  ' || pclass), Manufacturer from flatfile
      2  start with pgroup is null
      3  connect by prior pclass = pgroup
      4  /
    DECODE(LEVEL,1,PCLASS,''||PCLASS MANUFACTURER
    Application Software
      Database Software              Oracle
      Database Software              Microsoft
      Spreadsheet Software           Microsoft
    Monitor
      15"                            Acer
      15"                            Sony
      17"                            Philips
      19"                            Viewsonic
    Processor
      AMD                            AMD
      Intel                          Intel
    12 rows selected.The hierarchy syntax is described completely in the documentation including
    LEVEL and PRIOR keywords.
    As for the ordering question you can use siblings ordering:
    SQL> select decode(level,1,pclass,'  ' || pclass), Manufacturer from flatfile
      2  start with pgroup is null
      3  connect by prior pclass = pgroup
      4  order siblings by 1 desc
      5  /
    DECODE(LEVEL,1,PCLASS,''||PCLASS MANUFACTURER
    Processor
      Intel                          Intel
      AMD                            AMD
    Monitor
      19"                            Viewsonic
      17"                            Philips
      15"                            Acer
      15"                            Sony
    Application Software
      Spreadsheet Software           Microsoft
      Database Software              Oracle
      Database Software              Microsoft
    12 rows selected.Rgds.

  • Help needed in understanding the Java code.

    Hi All,
    I have recently started learning the Java language. I came across this example and had a problem in understanding the output of the program. I could follow that if the continue statement is present in the below program the output is "Found 9 p's in the string" . But if the continue statement is removed I could not understand why the output would be "Found 35 p's in the string" .Is it because of the spaces and characters other than p... (eter ier icked a eck of ickled eers)
    Example-----------------------
    The continue statement skips the current iteration of a for, while , or do-while loop. The unlabeled form skips to the end of the innermost loop's body and evaluates the boolean expression that controls the loop. The following program, ContinueDemo , steps through a String, counting the occurences of the letter "p". If the current character is not a p, the continue statement skips the rest of the loop and proceeds to the next character. If it is a "p", the program increments the letter count.
    class ContinueDemo {
    public static void main(String[] args) {
    String searchMe
    = "peter piper picked a " +
    "peck of pickled peppers";
    int max = searchMe.length();
    int numPs = 0;
    for (int i = 0; i < max; i++) {
    // interested only in p's
    if (searchMe.charAt(i) != 'p')
    continue;
    // process p's
    numPs++;
    System.out.println("Found " +
    numPs + " p's in the string.");
    Here is the output of this program:
    Found 9 p's in the string.
    To see this effect more clearly, try removing the continue statement and recompiling. When you run the program again, the count will be wrong, saying that it found 35 p's instead of 9.

    The answer is already in your example - "The unlabeled form skips to the end of the innermost loop's body and evaluates the boolean expression that controls the loop."
    It unloads the current loop iteration when condition is matching. Loop is again starting from boolean expression inside loop declaration.
    Java Programming - java forum

  • Please help me in understanding the EDIFACT D96A format for INVOICE

    Hi,
    Im doing an INVOICE02 IDOC to EDIFACT D96A INVOIC scenario. Im new to EDI.
    Pls Pls Pls Pls kindly help me in understanding the following EDIFACT D96A file. 
    UNBUNOA:35410033000055:145400110000009:14070612:085511137INV96A+EANCOM1'                                        
    UNH1INVOIC:D:96A:UN:EAN008'                                        
    BGM3805010237529+9'                                        
    DTM+137:200706120000:203'                                        
    DTM+35:20070612:102'                                        
    DTM+454:20070612:102'                                        
    RFF+ON:32210'                                        
    DTM+171:20070612:102'                                        
    RFF+DQ:000030585715'                                        
    DTM+171:20070612:102'                                        
    NADSU5410148000001::9+BVBA Unilever Belgium SPRLBl.De L?'Humanité 292 292Bruxelles1190BE'                                        
    RFF+VA:BE438390312'                                        
    RFF+ARA:0438390312'                                        
    NADBY5400110000009::9+D.L.L.RUE OSSEGHEM 53-MOLENBEEKMOLENBEEK-SAINT-JEAN1080BE'                                        
    NADDP5400110000009::9+D.L.L.RUE OSSEGHEM 53-MOLENBEEKMOLENBEEK-SAINT-JEAN1080BE'                                        
    NADIV5400110000009::9+DELHAIZE FRS. CENTRALESRUE OSSEGHEM , 53BRUSSEL-MOLENBEEK1080BE'                                        
    RFF+VA:BE402206045'                                        
    RFF+ARA:0402206045'                                        
    CUX+2:EUR:4'                                        
    LIN10+8000920900987:EN'                                        
    PIA1000000000019009801:SA'                                        
    IMDF+IN:::IGLO POELEE LEGUMES CHAMPIGNONS 6X8'                                        
    QTY+47:81'                                        
    QTY+46:81'                                        
    MOA+203:1584.4'                                        
    PRI+AAA:19.56'                                        
    PRI+AAB:21.24'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1584.4'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN20+5410148126459:EN'                                        
    PIA1000000000011264501:SA'                                        
    IMDF+IN:::Epinards hachis en portions '                                        
    QTY+47:112'                                        
    QTY+46:112'                                        
    MOA+203:1061.01'                                        
    PRI+AAA:9.47'                                        
    PRI+AAB:10.96'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1061.01'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN40+5410148013452:EN'                                        
    PIA1000000000010134500:SA'                                        
    IMDF+IN:::15 Fish Sticks Colin d?'Alaska '                                        
    QTY+47:256'                                        
    QTY+46:256'                                        
    MOA+203:4937.63'                                        
    PRI+AAA:19.29'                                        
    PRI+AAB:20.16'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:4937.63'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    LIN50+5414807999958:EN'                                        
    PIA1000000000019999501:SA'                                        
    IMDF+IN:::Iglo Poisson Pané Epinards 7X400g'                                        
    QTY+47:180'                                        
    QTY+46:180'                                        
    MOA+203:4160.31'                                        
    PRI+AAA:23.11'                                        
    PRI+AAB:24.08'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:4160.31'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    LIN60+5410148120952:EN'                                        
    PIA1000000000011209501:SA'                                        
    IMDF+IN:::Epinards Crhme en Portions '                                        
    QTY+47:112'                                        
    QTY+46:112'                                        
    MOA+203:1594.69'                                        
    PRI+AAA:14.24'                                        
    PRI+AAB:15.92'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1594.69'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN70+5410148124158:EN'                                        
    PIA1000000000011241503:SA'                                        
    IMDF+IN:::EPINARDS HACHES EN PORTIONS 450G'                                        
    QTY+47:144'                                        
    QTY+46:144'                                        
    MOA+203:938.01'                                        
    PRI+AAA:6.51'                                        
    PRI+AAB:7.44'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:938.01'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN120+5410148016729:EN'                                        
    PIA1000000000010167201:SA'                                        
    IMDF+IN:::Macaroni Fromage/Jambon '                                        
    QTY+47:260'                                        
    QTY+46:260'                                        
    MOA+203:4337.55'                                        
    PRI+AAA:16.68'                                        
    PRI+AAB:17.58'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:4337.55'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    LIN130+5410148441255:EN'                                        
    PIA1000000000014412503:SA'                                        
    IMDF+IN:::CHOUX ROUGES AUX POMMES 450G'                                        
    QTY+47:144'                                        
    QTY+46:144'                                        
    MOA+203:1756.99'                                        
    PRI+AAA:12.2'                                        
    PRI+AAB:13.36'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1756.99'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN140+5410148017702:EN'                                        
    PIA1000000000010177001:SA'                                        
    IMDF+IN:::Frit?'Kot 1'                                        
    QTY+47:60'                                        
    QTY+46:60'                                        
    MOA+203:1102.6'                                        
    PRI+AAA:18.38'                                        
    PRI+AAB:22'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1102.6'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:4.9:1'                                        
    LIN180+8000920801796:EN'                                        
    PIA1000000000018017901:SA'                                        
    IMDF+IN:::EPINARDS EN BRANCHES 10 X 450'                                        
    QTY+47:190'                                        
    QTY+46:190'                                        
    MOA+203:2204.2'                                        
    PRI+AAA:11.6'                                        
    PRI+AAB:12.9'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:2204.2'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN200+5410148014268:EN'                                        
    PIA1000000000010142602:SA'                                        
    IMDF+IN:::PETITS POIS EXTRA FINS 450G'                                        
    QTY+47:238'                                        
    QTY+46:238'                                        
    MOA+203:1999.6'                                        
    PRI+AAA:8.4'                                        
    PRI+AAB:9.24'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1999.6'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    ALCA++1'                                        
    PCD+1:1.96:1'                                        
    LIN230+8000920807248:EN'                                        
    PIA1000000000018072403:SA'                                        
    IMDF+IN:::IGLO POUL ET PENNE AUX LEG.SOLEI. 6'                                        
    QTY+47:99'                                        
    QTY+46:99'                                        
    MOA+203:1727.54'                                        
    PRI+AAA:17.45'                                        
    PRI+AAB:18.3'                                        
    TAX7VAT+++:::6.000'                                        
    MOA+125:1727.54'                                        
    ALCA++1'                                        
    PCD+1:0:1'                                        
    ALCA++1'                                        
    PCD+1:1.97:1'                                        
    UNS+S'                                        
    CNT+2:12'                                        
    MOA+124:1644.27'                                        
    MOA+86:29048.8'                                        
    MOA+79:27404.53'                                        
    MOA+125:27404.53'                                        
    TAX7VAT++:::6.000S'                                        
    MOA+125:27404.50'                                        
    MOA+124:1644.27'                                        
    UNT2121'                                        
    UNZ111137'
    Advance appreciations,
    Ram.

    Its very simple:
    UNB-segment : Interchange Header
    S001     SYNTAX IDENTIFIER
    0001     Syntax Identifier                    “UNOA”
    0002     Syntax version number               “2”
    S002     INTERCHANGE RECIPIENT
    0004     Sender Identification                    “8711382000091”  (= GLN Code Tilburg)     
    0007     Identification Code Qualifier               “14”
    S003     INTERCHANGE SENDER
    0004     Recipient Identification               “8711700400008”(= GLN Code Unilever)
    0007     Identification Code Qualifier               “14”
    S004     DATE/TIME OF PREPARATION
    0017     Date                            YYMMDD
    0019     Time                            HHMM
    0020     INTERCHANGE CTRL REF.     Unique message reference number
    0026     APPLICATION REFERENCE          “WMS0330”
    UNH-segment: Message header
    0062     MESSAGE REFERENCE NUMBER      Unique sequence numbe within UNB
    S009     MESSAGE IDENTIFIER
    0065     Message type     identifier               “INVRPT”
    0052     Message type version number               “D”
    0054     Message type release number               “96A”
    0051     Controlling agency                    “EN”
    0057     Association assigned code               “EAN004”
    BGM-segment: Beginning of message
    C002     DOCUMENT/MESSAGE NAME
    1001     Document/message name, coded  35”     (= Inventory report)
    3055     Code list responsible agency, coded     “9”     (= EAN)
    1004     DOCUMENT/MESSAGE NUMBER     Unique Number assigned by CS (= Date/Time CCYYMMDDHHMMSS)
    1225     MESSAGE FUNCTION, CODED          “9”     (= Original)
    DTM-segment: Date/time/period
    C507     DATE/TIME/PERIOD
    2005     Date/time/period qualifier 137”     (=Document/message date/time)
    2380     Date/time/period     Document date
    2379     Date/time/period format qualifier     “102”     (= CCYYMMDD)
    RFF-segment: Reference
    C506     REFERENCE
    1153     Reference code qualifier “ON”     (= Order number)
    1154     Reference identifier     Agreement number
    NAD-segment: Name and address
    3035     PARTY QUALIFIER     “GY”     (= Inventory reporting party = CS)
                   “GM”     (= Inventory controller = XYZ)
    C082     PARTY IDENTIFICATION DETAILS
    3039     Party id. identification          GLN code
    3055     Code list responsible agency, coded     “9”     (= EAN)
    LIN-segment: Line item
    1082     LINE ITEM NUMBER               Unique Line Number
    C212     ITEM NUMBER IDENTIFICATION
    7140     Item number               EAN Material code
    7143     Item number type, coded          “EN”     (= EAN)
    PIA-segment: Additional Product Information
    4347     PRODUCT ID FUNCTION IDENTIFIER     "1"(= Additional Information)
    C212     ITEM NUMBER IDENTIFICATION
    7140     Item number          Promotional Variant
    7143     Item number type, coded     "PV”     (= Promotional variant)
    QTY-segment: Quantity
    C186     QUANTITY DETAILS
    6063     Quantity qualifier     “12”      (= Despatch quantity)
    6060     Quantity           Number of stock units
    PRI: Represent price
    TAX: represent tax.
    Try to go to the below website where you will able to get the information regarding all the sgements and elements of Invocie.
    http://www.edifactory.de/messages.php?s=D96A
    Also refer the below link for EDI understanding:
    http://www.gxs.com/pdfs/Tutorial/Tutor_EDIFACT_GXS.pdf
    Thnx
    Chirag Gohil

  • Help needed to understand business process irrespective of SAP

    Hello all,
    I am an engineer with specialization in electronics and telecommunication. The topic of RFID is thus fascinating for me hence,I have been reading SAP AII for some time now. The components of RFID like tags, readers and communication between them is known to me upto some extend but the business process that SAP AII supports/ implements/ automates are new to me because of which I miss the big picture of SAP AII.
    The material I have been reading on SAP AII describes many such process e.g. goods issue, goods return, slap and Ship, logistic process etc. I find it difficult to comprehend these business processes as I think they are described mainly in jargons/ terms (jargon for me) like "delivery processing", "delivery document", "Shipping document", "handling unit", "outbound and inbound process", "goods posting" and numerous similar terms. Moreover I think the explanation is SAP specific.
    I feel I should take a top down approach to understand SAP AII and for this I first need to understand the business process in generic/ standard terms. Once they are clear I guess I would be able to understand SAP RFID solution.
    I request you all to guide me. Am I taking the right approach? If yes please help me understand the basic business process. Pointers to some good douments or any other resource explaining standard business process will definately help.
    Thank You

    Hi Gaurav,
                   You are very correct that being a technical person you find difficulty in understanding jargon terms of SAP.
    Let me explain you the scenario:
    There are two sides to SAP
    1) Functional - Understanding of Business Processes
    Here there are two parts:
    a) Business Process With Respect To SAP AII - These processes generally deals with RFID technology that happens in warehouses, disribution centers and are close to technological world. These deal only with SAP AII
    b) Business Process With Respect To SAP R/3 - These processes deals with SAP AII when integrated with backend systems like SAP R/3, SAP WM or other systems. These talk about the end to end scenario of RFID. Like you pointed out, delivery processing, etc.
    Understanding of Core that  is part a above and a bit basics about b will be very helpful.
    2) Technical - Understanding SAP AII
    Here also two parts are there:
    a) Understanding RFID as a technology with SAP AII - Deals with understaning technological viewpoints on RFID and mapping it to SAP AII. Example Devices, Tags, Device Controllers, Middlewares and their representation in SAP AII.
    Most important is above part
    b) Understanding Technological part of SAP itself - For example, ABAP, BAPI, BADI etc.
    So this is how it works. You are going very correct and follow above things.
    Please revert if you have any specific questions.
    Thnks

  • Help needed to optimize the query

    Help needed to optimize the query:
    The requirement is to select the record with max eff_date from HIST_TBL and that max eff_date should be > = '01-Jan-2007'.
    This is having high cost and taking around 15mins to execute.
    Can anyone help to fine-tune this??
       SELECT c.H_SEC,
                    c.S_PAID,
                    c.H_PAID,
                    table_c.EFF_DATE
       FROM    MTCH_TBL c
                    LEFT OUTER JOIN
                       (SELECT b.SEC_ALIAS,
                               b.EFF_DATE,
                               b.INSTANCE
                          FROM HIST_TBL b
                         WHERE b.EFF_DATE =
                                  (SELECT MAX (b2.EFF_DATE)
                                     FROM HIST_TBL b2
                                    WHERE b.SEC_ALIAS = b2.SEC_ALIAS
                                          AND b.INSTANCE =
                                                 b2.INSTANCE
                                          AND b2.EFF_DATE >= '01-Jan-2007')
                               OR b.EFF_DATE IS NULL) table_c
                    ON  table_c.SEC_ALIAS=c.H_SEC
                       AND table_c.INSTANCE = 100;

    To start with, I would avoid scanning HIST_TBL twice.
    Try this
    select c.h_sec
         , c.s_paid
         , c.h_paid
         , table_c.eff_date
      from mtch_tbl c
      left
      join (
              select sec_alias
                   , eff_date
                   , instance
                from (
                        select sec_alias
                             , eff_date
                             , instance
                             , max(eff_date) over(partition by sec_alias, instance) max_eff_date
                          from hist_tbl b
                         where eff_date >= to_date('01-jan-2007', 'dd-mon-yyyy')
                            or eff_date is null
               where eff_date = max_eff_date
                  or eff_date is null
           ) table_c
        on table_c.sec_alias = c.h_sec
       and table_c.instance  = 100;

  • Help required in understanding the flow of control in working with EJB 3.0

    *1. Can anyone help me in understanding the flow after getting an object of InitialContext in using Stateless/Stateful in EJB 3.0 from client i.e. what we are getting in the step Object ref=jndiContext.lookup("CalculateBean/Remote) .*
    *2. What is the use of INITIAL_CONTEXT_FACTORY*
    *3. PROVIDER_URL*
    *4. Java.naimg.factory.url.pkgs*
    *5. why org.jboss.naming and org.jnp.interfaces separated by semi colon.*
    *6. Why we dont require INITIAL_CONTEXT_FACTORY, PROVIDER_URL and Java.naming.factory.url.pkgs if the client is a web client.*
    Properties p=new Properties();
              p.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
              p.put(Context.PROVIDER_URL,"jnp://localhost:1099");
              p.put("java.naming.factory.url.pkgs","org.jboss.naming:org.jnp.interfaces");
              Context jndiContext = new InitialContext(p);
         Object ref = jndiContext.lookup("CalculateBean/Remote");
    Calculate c = (Calculate)ref;
    int sum=c.add(3,4);
    System.out.println(sum);
    Thanx in advance........

    Annotations can also be processed at run time using the core reflection API (java.lang.Class & java.lang.reflect.*), so you might want to explore down that path. I have no idea how JBoss actually does it, but annotation processing at build time and core reflection at runtime are the two most obvious possibilities.
    Bruce

  • I want to check the main diffrence in Pop up block enabled and disabled.But,i don't get any difference.Would u please help me to understand the difference using one practical example of website

    I want to check the main diffrence in Pop up block enabled and disabled.But,i don't get any difference.Would u please help me to understand the difference using one practical example of website

    Here's two popup test sites.
    http://www.kephyr.com/popupkillertest/test/index.html
    http://www.popuptest.com/

  • Need to understand the relation between ManualResetEvent and thread

    please help me to understand the below code
    what is resetEvent.Set() and WaitOne() ? what it does ?
    var resetEvent = new ManualResetEvent(false);
    ThreadPool.QueueUserWorkItem(
    arg =>
    DoWork();
    resetEvent.Set();
    resetEvent.WaitOne();
    again help me to understand the below code
    var events = new List<ManualResetEvent>();
    foreach(var job in jobs)
    var resetEvent = new ManualResetEvent(false);
    ThreadPool.QueueUserWorkItem(
    arg =>
    DoWork(job);
    resetEvent.Set();
    events.Add(resetEvent);
    WaitHandle.WaitAll(events.ToArray());
    why this line WaitHandle.WaitAll(events.ToArray()); is required ?
    why adding ManualResetEvent instance to list ?
    looking for discussion. thanks

    WaitOne() will cause the current (main) thread to wait until the thread pool thread has called the Set() method. If you don't call the WaitOne() method, the code line below ThreadPool.QueueUserWorkItem(...) will get executed before the delegate that you
    pass do the ThreadPool.QueueUserWorkItem method has actually finished its execution because the threads are being executed simultaneously:
    var resetEvent = new ManualResetEvent(false);
    ThreadPool.QueueUserWorkItem(
    arg =>
    //this will be executed simultaneously on thread B
    Thread.Sleep(10000);
    //tell thread A to continue
    resetEvent.Set();
    //thread A waits here until thread B calls the Set() method...
    resetEvent.WaitOne();
    string s = "abc"; //this line won't get executed until thread B has called the Set() method provided that the WaitOne() method is called by thread A above.
    >>why this line WaitHandle.WaitAll(events.ToArray()); is required ?
    It causes the main thread to wait until the Set method of all ManualResetEvent objects in the events list has been called. Othwerwise the execution of the main thread would continue immediately after the foreach loop has been executed. By this time the DoWork
    method of all jobs has not yet been completed because they are being executed on another thread.
    WaitHandle.WaitAll(events.ToArray());
    string s = "abc"; //this line won't get executed until all the Set() method of all ManualResetEvent objects in events has been called
    >>why adding ManualResetEvent instance to list ?
    Because you (appearantly) want to wait for all objects in the list, i.e. you want to wait for the DoWork method to complete for all jobs before you continue the execution of the main thread (and go on to assign the string s to the value "abc"
    in the above example).
    Hope that helps.
    Please remember to close your threads by marking helpful posts as answer then start a new thread if you have a new question. Please don't ask several questions in the same thread.

  • Need to Understand the Packet Flow

    Dear Friend,
    I need to understand the packet flow of the below diagram.
    I have configured MPLS on R2,R3 and R4. And IBGP is configured on R2 and R4. Now I am able to reach from R1 to R5's Loopback address. I need to understand the packect flow from R1 to R5 like If I ping from R1's Loopback  to R5's Loopback address then Source IP is 1.1.1.1 and destination IP is 5.5.5.5. What will be the packet structure at R2, R3,R4...??????????
    Please explain in details......Me really confused as R4 has not route about 5.5.5.5 also 1.1.1.1...How it forwards the packets??????

    Sanjib
    So R2 and R4 are PE devices and R3 is a P device ? And you are not doing MPLS VPNs, just normal MPLS ?
    If so R4 must have a route to 5.5.5.5. Did you mean R3 does not have a route ?
    With MPLS any P device only knows how to get to other P devices and PE devices. It does not know about any networks outside the MPLS network. The PE devices have routes to any external networks connected to them and know how to get to P and other PE devices.
    Note that in terms of PE/P reachability the routing/LDP information has already been exchanged and an MPLS forwarding table built. So for reachability between PE/P routers (ie. not outside the MPLS network) route lookup do not need to be performed, it is simply a matter of removing and adding labels.
    So assuming you are not using MPLS VPNs and that MPLS labels have been exchanged between all P and PE routers -
    R1 pings 5.5.5.5
    1) R1 does a route lookup for 5.5.5.5 and sends it to R2.
    2) R2 is a PE device. It does a route lookup for 5.5.5.5 and sees R4 as the next hop (this route has been exchanged via MP-BGP).
    3) R2 then need to send the packet to R4. To do this it looks in it's MPLS forwarding table to see how to get to R4. The MPLS forwarding table tells it which label to attach to the packet. It adds this label and sends the packet out of it's interface to R3.
    3) R3 is a P device. It does not need to do a route lookup for 5.5.5.5. It simply looks at the incoming MPLS label and consults it's MPLS forwarding table. It will have an entry in it's table saying that an incoming packet with an MPLS label of x should be sent out with an MPLS label of y. It changes the label and sends it out to R4.
    4) R4 receives the packet, removes the label, does an IP lookup for 5.5.5.5 and sends it to R5.
    Note that actually R3 might not add a label as there is something called Penultimate Hop Popping where if the net hop from the P router is a PE router it sends the packet without a label to save extra processing on the PE router. If you had multiple P routers only the last P router before the PE router would do PHP.
    The key thing to understand is that the P devices don't do route lookups when forwarding data. They simply switch labels. Whereas the PE devices do need to do route lookups for destinations outside the MPLS network. 
    Jon

  • Help needed regarding AE SDK compiled/linked out file extension

    Hi,
       I am new to the AE SDK plug-in build, and to the Forum.
       How to select .aex file format extension for the compiler and linker single file output?
       My system is:
             Adobe CS 5
             Windows 7 with 64-bit processing
             Visual Studio 2008 SP1
       I am stuck and need help.

    I got a direct answer - it is the concept of linking to a library (.dll) and not to an executable (.exe).
    This is encouraging, thank you. 

  • Help needed in overriding the finalize() method!

    Hi
    I need some help in overwriting the finalize() method.
    I have a program, but at certain points, i would like to "kill" a particular object.
    I figured that the only way to do that is to make that object's class override the finalize method, and call it when i need to kill the object.
    Once that is done, i would call the garbage collector gc() to hopefully dispose of it.
    Please assist me?
    Thanks
    Regards

    To, as you put it, kill an object, just null it. This
    will be an indication for the garbage collector to
    collect the object. In the finalizer, you marely null
    all fields in the class. Like this:
    public class DummyClass
    String string = "This is a string";
    Object object = new Boolean(true);
    public void finalize() throws Throwable
    super.finalize();
    string = null;
    object = null;
    public static void main(String[] args)
    //Create a new object, i.e allocate an
    te an instance.
    DummyClass cls = new DummyClass();
    //Null the reference
    cls = null;
    This is a pointless exercise. If an object is being finalized, then all the references it contains are about to cease being relevant anyway, so there's no purpose to be served in setting them to null.
    All that clearing a reference to an object does is to clear the reference. Whether the object is subsequently finalized depends on whether the object has become unreachable.
    Directly calling finalize is permitted, but doesn't usually serve any purpose. In particular, it does not cause the object to be released. Further, calling the finalize method does not consitute finalization of the object. Finalization occurs when the method is called as a consequence of a garbage collector action.
    If a variable contains a reference to an object (say a table), and you want a new table instead, then create a new table object, and assign its reference to the variable. Assuming that the variable was the only place that the old table's reference was stored, the old table will, sooner or later, get finalized and collected.
    Sylvia.

  • Help needed in using the appropriate Trigger

    I have a master detail form.DEPT block is the master block and Employee is Detail block.I need to display the message when user is
    trying to enter the ENAME field in the Employee block(detail) when the DEPTNO in the DEPT block(master) is not equal to 10.
    Messgae should be displayed when user trying to type the value but not when the user navigates into the ENAME text field.
    What is the appropriate trigger that is useful here?
    Thanks.
    GSR

    If the DEPT block is table based in the block's POST-QUERY trigger you can simply set
      if :DEPT.DEPTNO !=10 then
        set_item_proerty('DEPT.ENAME', insert_allowed, property_false);
        set_item_proerty('DEPT.ENAME', update_allowed, property_false);
      else
        set_item_proerty('DEPT.ENAME', insert_allowed, property_true);
        set_item_proerty('DEPT.ENAME', update_allowed, property_true);
      end if;if the block is a non-database one then you can put that code in EMPNAME's WHEN-VALIDATE-ITEM trigger
    Luca
    Don't forget to mark the answer as helpful/correct if it is. please.

  • Help needed in using the DocCheck utility

    Hi
    Can somebody help me to use the DocCheck utility.I need to check that all the java files have the required javadoc tags and they are correct.
    I have downloaded the zip file and I have been giving the following commands
    c:\javadoc -doclet com.sun.tools.doclets.doccheck.DocCheck -docletpath c:\svk\jdk1.2.2\bin\doccheck1.2b1\lib\doccheck.jar -sourcepath<full path with the file name>
    But I get the following error message : No package or class specified.
    I also tried giving the following command:
    D:\SegaSource\sega\src\com\sega\account>javadoc -doclet com.sun.tools.doclets.do
    ccheck.DocCheck -docletpath d:\jdk1.3\doccheck1.2b1\lib\doccheck.jar User.java
    But I get the following message:
    Loading source file User.java...
    Constructing Javadoc information...
    javadoc: warning - Import not found: com.sega.account.address.Address - ignoring
    javadoc: warning - Import not found: com.sega.account.icon.Icon - ignoring!
    javadoc: warning - Import not found: com.sega.common.DateUtil - ignoring!
    javadoc: warning - Import not found: atg.nucleus.GenericService - ignoring!
    javadoc: warning - Cannot find class com.sega.account.icon.Icon
    javadoc: warning - Cannot find class com.sega.account.address.Address
    javadoc: warning - Cannot find class com.sega.account.MasterManager
    7 warnings
    please help
    Thanks
    SVK

    I have never ran the DocCheck from the command prompt, so I really don't know how to do it, but I do run it succesfully using ant (build tool from apache - jakarta, if you use tomcat you already have it installed).
    So.. if you do use ant.. this will help:
    <target name="doccheck" depends="prepare">
         <javadoc
              packagenames="${packages}"
                    destdir="${doccheck.home}"
              doclet="com.sun.tools.doclets.doccheck.DocCheck"
              docletpath="${doccheck.path}" >
              <classpath refid="project.classpath"/>
              <sourcepath refid="project.classpath"/>
         </javadoc>
    </target>If you don't use it.. I guess I was of no help, sorry.
    Ylan

Maybe you are looking for

  • Regular Expressions Problem!!!!!!!!! Please help!

    HI, I need to extract the lines of a aperticular file without the comments. I have a code to catch the comments, But don't know how to how to get the lines without the matching comment lines This is the RegEx to catch the line comments. ((?:/\\*(?:[^

  • Reporting Score in Solo Learning LMS

    I have read through the message thread and see that there are other folks having difficulty getting quiz scores to report on various LMS platforms. Does anyone have suggestions on how to get the score to report from a Captivate3 SCORM 1.2 course to t

  • Backup error after kernel patch upgrade

    Hi. I have a backup problem after the kernel patch upgrade.  I have SAP R3 4.6C on HPUX11.0 with an Oracle 8.17 database. I have upgraded kernel patch from 1655 to 2337. Afterward, I am getting following backup error: BR280I Time stamp 2007-11-06 09.

  • Need to have the delete key in phone dialpad at the bottom

    WIth the new os 7, my iphone 5 phone dialpad's backspace or delete was moved from the bottom to the top. This makes it very difficult to use the phone with  one hand, esp when you make a typo. I have not been able to move my right thumb all the way t

  • Using another language (German)...

    How do I get the umlauts to appear over a, u & o in German? I live in Germany and want to type email to friends in German in Mail. I selected the German flag in the bar up top, but still cannot figure out how to get the umlauts to appear (the little