Error in Validation, Entity object

Hello,
I am using ADF BC and Faces in my project.
I put a validator in one of my entity, If I am adding a record, the validator works well. But
If I try to just edit a record in my JSP table, and click "Save" button, the application throws an "Internal Server Error" <NullPointerException> displayed in my page..
Is it a bug? Or I'm just missing something here?
Thanks....
I paste the error below..
java.lang.NullPointerException     at oracle.jbo.server.ViewRowSetImpl.prepKeyForFind(ViewRowSetImpl.java:3801)     at oracle.jbo.server.ViewRowSetImpl.findByKey(ViewRowSetImpl.java:3838)     at oracle.jbo.server.ViewRowSetImpl.findByKey(ViewRowSetImpl.java:3793)     at oracle.jbo.server.ViewRowSetImpl.findByKey(ViewRowSetImpl.java:3781)     at oracle.jbo.server.ViewObjectImpl.findByKey(ViewObjectImpl.java:7017)     at oracle.jbo.uicli.binding.JUCtrlRangeBinding.setError(JUCtrlRangeBinding.java:176)     at oracle.jbo.uicli.binding.JUCtrlValueBinding.processInputException(JUCtrlValueBinding.java:1835)     at oracle.adf.model.binding.DCIteratorBinding.processInputException(DCIteratorBinding.java:2464)     at oracle.adf.model.binding.DCBindingContainer.processException(DCBindingContainer.java:3108)     at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.handleError(PageLifecycleImpl.java:568)     at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.validateModelUpdates(PageLifecycleImpl.java:288)     at oracle.adf.controller.v2.lifecycle.Lifecycle$4.execute(Lifecycle.java:263)     at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)     at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:33)     at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$3.after(ADFPhaseListener.java:354)     at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:94)     at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:211)     at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)     at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:367)     at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:336)     at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:196)     at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:105)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)     at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:167)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)     at nis.api.common.filter.EncodingFilter.doFilter(EncodingFilter.java:24)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)     at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)     at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)     at java.lang.Thread.run(Thread.java:595)
Message was edited by:
alvinf1209
Message was edited by:
alvinf1209

You might want to break down debugging this into two steps.
First make sure your validation works for an update situation with the AM tester - this will take the web part out of the picture.
If that works then have a look at your "Submit" button and check exactly what you are doing in there.

Similar Messages

  • Help: 'JBO-26080: Error while selecting entity object' on RefreshDataSource

    Hi all,
    The Problem:
    My page throws out a JBO-26080 error on the RefreshDataSource Tag. This only happens the second time it needs to be refreshed, i.e. the second time the form is submitted to processRequest.jsp (see Background Info below). In my testing I have found that it is definately the RefreshDataSource tag.
    Any help will be much appreciated.
    Background Info:
    I have 2 JSP's, 1 (report.jsp) that displays a table and 1 (processReport.jsp) that runs a stored procedure, implemented as a method in the Application Module, to select data for the table.
    The method in the application module:
    public void doCurrencyCalc()
    CallableStatement st=null;
    try // 1
    String stmt = "BEGIN CONVERT_MONEY(?,?,?,?,?,?,?,?);END;";
    int nParam = 3;
    System.out.println("** SQL = " + stmt);
    DBTransaction tr = getDBTransaction();
    st=tr.createCallableStatement(stmt,DBTransaction.DEFAULT);
    st.setString(1, getWB());
    System.out.println(" > WB = " + getWB());
    st.setLong(2, getKpi());
    System.out.println(" > Kpi = " + getKpi());
    for(int i=0; i<6; i++)
    if(getWbSel(i+1)) st.setString(nParam,String.valueOf(getWbNo(i+1)));
    else st.setString(nParam,null);
    nParam++;
    } // for i
    st.executeUpdate();
    System.out.println("** Calculation Complete");
    } // try 1
    catch(SQLException s)
    throw new JboException(s);
    } // catch SqlException
    finally
    try{if(st!=null)st.close();}
    catch(SQLException s){      }
    } // finally
    } // end doCurrencyCalc
    The processReport jsp:
    <%@ taglib uri="/webapp/DataTags.tld" prefix="jbo" %>
    <%@ page contentType="text/html;charset=windows-1252"%>
    <%@ page import="za.org.saawu.ibs.bc4j.common.IBSbc4jModule"%>
    <jbo:ApplicationModule id="IBSbc4jModule" configname="za.org.saawu.ibs.bc4j.IBSbc4jModule.IBSbc4jModuleLocal" releasemode="Stateful" /><%
    IBSbc4jModule app = (IBSbc4jModule)IBSbc4jModule.useApplicationModule(true);
    String strDisplay = new String(request.getParameter("btnDisplay").toString());
    if(request.getParameter("KPIGroup")!="-1") {
    app.setKpiGroup(new Long(request.getParameter("KPIGroup")).longValue());
    if(request.getParameter("Kpi")!="-1") app.setKpi(new Long(request.getParameter("Kpi")).longValue());
    else app.setKpi(0l);
    String strParams[] = request.getParameterValues("wbsel");
    app.resetWBSel();
    if(strParams.length>0) {
    for(int nCount=0; nCount<strParams.length; nCount++) {
    int nWBNo = app.findWB(strParams[nCount]);
    if(nWBNo>-1) app.setWBSel(nWBNo+1,true);
    } // for
    app.doCurrencyCalc();
    } else {
    session.setAttribute("info","NO_WBSEL");
    } // if strParams length is 0
    if(strDisplay.compareToIgnoreCase("TABLE")==0) {
    session.setAttribute("info","REFRESH_TABLE");
    } else if(strDisplay.compareToIgnoreCase("GRAPH")==0){
    session.setAttribute("info","REFRESH_GRAPH");
    } // if the request btnDisplay is TABLE
    } else {
    session.setAttribute("info","NO_KPIGROUP");
    } // if the KPIGroup was selected
    %>
    <jbo:DataSource id="srcOutput" appid="IBSbc4jModule" viewobject="OutputView" />
    <jbo:RefreshDataSource datasource="srcOutput" />
    <jsp:forward page="report.jsp" />
    <jbo:ReleasePageResources />
    The report jsp is a form that has some input selections and the DataTable tag

    Michael:
    'JBO-26080' means that something was wrong with the SQL statement issued to get the data for an entity object.
    You need the detail exception stack trace to see what went wrong at the JDBC level. Take a look to see if the exception reported on your browser has detail exception info on it.
    If not, you should run your middle tier app with diagnostic turned on. This will output lots of diag info on console and you should get the detail exception in it. Please take a look at the detail exception. If you can't make sense out of the exception, post it to this thread.
    To turn on diagnostic, you need to specify
    -Djbo.debugoutput=console
    as one of the JVM switches.
    If you're invoking your app (middle-tier app) from command line,
    include -Djbo.debugoutput=console as in
    java.exe -Djbo.debugoutput=console ...
    If you're running your app from within JDev:
    1. Select the project.
    2. Do right mouse click and select "Project Settings..."
    3. On the Settings dialog, select Configurations/Runner.
    4. In the righthand side pane, you should see a textbox for "Java
    Options". Please add the following JVM switch:
    -Djbo.debugoutput=console
    Then, rerun. The run command should include
    -Djbo.debugoutput=console as in
    "D:\JDev9i\jdk\bin\javaw.exe" -Djbo.debugoutput=console -classpath ...
    Thanks.
    Sung

  • Error while deleting a row from the Entity Object

    Hi OAF Guys,
    i am unable to delete the newly created row from the entity object.
    let me explain my scenario.
    1. i have a table of which some of the columns are mandatory.
    2. I am writing the code in the validateEntity to check wether the user really enter anything into the fields.
    3. My problem is, when the user creates row and wanted to delete the row without entering any details, the validate entity of the EO gets fired which will not allows to delete the row.
    Is there any workaround for this problem.
    Regards,
    Nagesh Manda.

    Hi Tapash,
    I am very sorry for not providing you the complete details of my scenario. Here i am explaining
    1. what code you have placed while creating the row and in validation method on EOImpl.
    while creating a new row i am initializing the primary key of the EO with the sequence value.
    2.When you say, you are unable to delete the row, are you getting a error message ? if yes, custom message or fwk error ?
    its not the fwk error, its the custom message which wrote in my validateEntity method of EO to check whether the user had entered all the necesary columns or not.
    3.How are you trying to delete the row ?
    while the user clicks on the delete switcher i am getting the primary key of the row and searching for the row in the vo and finally deleting it.
    The problem arises when the user creates a row, and later doesnt want to enter the details and delete it. Here while deleting the row the validateEntity method of the EO gets fired and doesnt allow me to do so :(.
    Any way appreciate your help tapash.
    Regards,
    Nagesh Manda.

  • Error while creating new entity object.

    Hi all
    I'm using Jdev 11.1.1.3. I want to create an entity object and Jdev issues an information error saying "Either this is not a valid name or an object with that name already exists."
    I found that if the package I'm targeting for the new entity is called "com.test.model.whatever" I cannot create a EO called "Whatever".
    I can't find any reference in the fusion developer guide that constraints the entity names to be allowed.
    Is there a way to circumvent this issue or is this the way it should be?

    Sudipto and Suresh, thank you very much for your replies.
    I know that changing the package or entity name would work, but was expecting some other kind of workaround, something like giving a full qualified name on some xml or something to avoid the name clash or whatever the problem is.
    I do not like packing all the entities together as it goes against my best practice of packing things that change together on the same package. Also I don't like suffix or prefix class names as it goes against my best practice of short descriptive names.
    So well, I will have to tinker the names some more and meet you guys half way.
    I will now mark this thread as answered, thanks again.

  • Error while saving data using two entity objects (EO)

    Hi All,
    i am using two entity objects for saving the date in two different tables.
    on my page i am having two tables and two save buttons for saving the data in the respective tables.
    if i am not entering any data on the first table and putting valid data on the second table and click on the save button.
    it is going into error saying "Null Pointer Exception"..
    i am using getTransaction.commit() in my AM.
    so it is trying to save all the data in both the tables.
    i want to commit data of the respective table for which the save button is clicked.
    Waiting for ur reply

    Hi,
    i am using the following code for saving the data in the AM
    // TO SAVE THE JOB ASSIGNMENT DETAILS
    public void saveJobAssignmentDetails(String projectId)
    EmpAssignmentVOImpl empAssignVO = getEmpAssignmentVO1();
    getTransaction().commit(); // Line where i am getting the error
    rowNumberCountJobAssign = 0; // IN JOB ASSIGNMENT
    // EXECUTING THE DISPLAY FUNCTION AGAIN SO TAHT ALL SAVED FIELD ARE READONLY AS REQUIRED
    displayJobAssign(projectId);
    if(empAssignVO.getRowCount() != 0)
    throw new OAException("Job assignment details have been saved successfully. ",OAException.CONFIRMATION);
    Stack trace :
    oracle.apps.fnd.framework.OAException: oracle.jbo.DMLException: JBO-26041: Failed to post data to database during "Insert": SQL Statement "BEGIN INSERT INTO pa_job_bill_rate_overrides(START_DATE_ACTIVE,LAST_UPDATE_DATE,LAST_UPDATED_BY,CREATION_DATE,CREATED_BY,LAST_UPDATE_LOGIN,BILL_RATE_UNIT,PROJECT_ID,RECORD_VERSION_NUMBER,JOB_BILL_RATE_OVERRIDE_ID,RATE_CURRENCY_CODE) VALUES (:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11) RETURNING JOB_BILL_RATE_OVERRIDE_ID, JOB_ID, START_DATE_ACTIVE, LAST_UPDATE_DATE, LAST_UPDATED_BY, CREATION_DATE, CREATED_BY, LAST_UPDATE_LOGIN, RATE, BILL_RATE_UNIT, PROJECT_ID, TASK_ID, END_DATE_ACTIVE, RECORD_VERSION_NUMBER, RATE_CURRENCY_CODE, DISCOUNT_PERCENTAGE, RATE_DISC_REASON_CODE INTO :12, :13, :14, :15, :16, :17, :18, :19, :20, :21, :22, :23, :24, :25, :26, :27, :28; END;".
         at oracle.apps.fnd.framework.OAException.wrapperInvocationTargetException(OAException.java:972)
         at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:210)
         at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:152)
         at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.invokeMethod(OAApplicationModuleImpl.java:721)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.webui.jobBillRateAndAssignmentCO.processFormRequest(jobBillRateAndAssignmentCO.java:357)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:799)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processFormRequest(OAPageLayoutHelper.java:1118)
         at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processFormRequest(OAPageLayoutBean.java:1579)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:995)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:961)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:816)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processFormRequest(OAFormBean.java:395)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:995)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:961)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:816)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.beans.OABodyBean.processFormRequest(OABodyBean.java:363)
         at oracle.apps.fnd.framework.webui.OAPageBean.processFormRequest(OAPageBean.java:2633)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1659)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:497)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:418)
         at OA.jspService(OA.jsp:40)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)
    ## Detail 0 ##
    java.sql.SQLException: ORA-01400: cannot insert NULL into ("PA"."PA_JOB_BILL_RATE_OVERRIDES"."JOB_ID")
    ORA-06512: at line 1
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
         at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
         at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:583)
         at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1983)
         at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1141)
         at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2154)
         at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2036)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2880)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:622)
         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:698)
         at oracle.jbo.server.OracleSQLBuilderImpl.doEntityDML(OracleSQLBuilderImpl.java:371)
         at oracle.jbo.server.EntityImpl.doDML(EntityImpl.java:5108)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.schema.server.JobBillRateEOImpl.doDML(JobBillRateEOImpl.java:124)
         at oracle.jbo.server.EntityImpl.postChanges(EntityImpl.java:4015)
         at oracle.apps.fnd.framework.server.OAEntityImpl.postChanges(OAEntityImpl.java:1676)
         at oracle.jbo.server.DBTransactionImpl.doPostTransactionListeners(DBTransactionImpl.java:2694)
         at oracle.jbo.server.DBTransactionImpl.postChanges(DBTransactionImpl.java:2540)
         at oracle.jbo.server.DBTransactionImpl.commitInternal(DBTransactionImpl.java:1783)
         at oracle.jbo.server.DBTransactionImpl.commit(DBTransactionImpl.java:1976)
         at oracle.apps.fnd.framework.server.OADBTransactionImpl.commit(OADBTransactionImpl.java:680)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.server.jobBillRateAndAssignmentAMImpl.saveJobAssignmentDetails(jobBillRateAndAssignmentAMImpl.java:772)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:189)
         at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:152)
         at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.invokeMethod(OAApplicationModuleImpl.java:721)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.webui.jobBillRateAndAssignmentCO.processFormRequest(jobBillRateAndAssignmentCO.java:357)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:799)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processFormRequest(OAPageLayoutHelper.java:1118)
         at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processFormRequest(OAPageLayoutBean.java:1579)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:995)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:961)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:816)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processFormRequest(OAFormBean.java:395)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:995)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:961)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:816)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.beans.OABodyBean.processFormRequest(OABodyBean.java:363)
         at oracle.apps.fnd.framework.webui.OAPageBean.processFormRequest(OAPageBean.java:2633)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1659)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:497)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:418)
         at OA.jspService(OA.jsp:40)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)
    java.sql.SQLException: ORA-01400: cannot insert NULL into ("PA"."PA_JOB_BILL_RATE_OVERRIDES"."JOB_ID")
    ORA-06512: at line 1
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
         at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
         at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:583)
         at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1983)
         at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1141)
         at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2154)
         at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2036)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2880)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:622)
         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:698)
         at oracle.jbo.server.OracleSQLBuilderImpl.doEntityDML(OracleSQLBuilderImpl.java:371)
         at oracle.jbo.server.EntityImpl.doDML(EntityImpl.java:5108)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.schema.server.JobBillRateEOImpl.doDML(JobBillRateEOImpl.java:124)
         at oracle.jbo.server.EntityImpl.postChanges(EntityImpl.java:4015)
         at oracle.apps.fnd.framework.server.OAEntityImpl.postChanges(OAEntityImpl.java:1676)
         at oracle.jbo.server.DBTransactionImpl.doPostTransactionListeners(DBTransactionImpl.java:2694)
         at oracle.jbo.server.DBTransactionImpl.postChanges(DBTransactionImpl.java:2540)
         at oracle.jbo.server.DBTransactionImpl.commitInternal(DBTransactionImpl.java:1783)
         at oracle.jbo.server.DBTransactionImpl.commit(DBTransactionImpl.java:1976)
         at oracle.apps.fnd.framework.server.OADBTransactionImpl.commit(OADBTransactionImpl.java:680)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.server.jobBillRateAndAssignmentAMImpl.saveJobAssignmentDetails(jobBillRateAndAssignmentAMImpl.java:772)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:189)
         at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:152)
         at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.invokeMethod(OAApplicationModuleImpl.java:721)
         at tcsl.oracle.apps.pa.jobBillRateAndAssignment.webui.jobBillRateAndAssignmentCO.processFormRequest(jobBillRateAndAssignmentCO.java:357)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:799)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processFormRequest(OAPageLayoutHelper.java:1118)
         at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processFormRequest(OAPageLayoutBean.java:1579)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:995)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:961)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:816)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processFormRequest(OAFormBean.java:395)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:995)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:961)
         at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:816)
         at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:363)
         at oracle.apps.fnd.framework.webui.beans.OABodyBean.processFormRequest(OABodyBean.java:363)
         at oracle.apps.fnd.framework.webui.OAPageBean.processFormRequest(OAPageBean.java:2633)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1659)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:497)
         at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:418)
         at OA.jspService(OA.jsp:40)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:534)

  • Validation of attribute in Entity Object with List Rule Type

    hi all
    I have an entity "currncy" and I want to make
    a validation in entity level on its attribute "Isdefaultcurrency"
    which is boolean.
    Entity Object : Currency
    attributes :
    1. Currencyid DBsequence
    2. Currencyname String
    3. Isdefaultcurrency, Boolean, CheckBox
    Rule Type : List
    Operator : In
    List Type : Query Result 'select ISDEFAULTCURRENCY from currency where ISDEFAULTCURRENCY=1'
    I want when user insert in table, validation checks the attribute 'Isdefaultcurrency'
    was true then show the error message that there was default currency and if you
    want to set it to true (or default) you must change another record that was true
    and uncheck it then back to current record and will make it true and
    there is one record in my table that its attribute 'Isdefaultcurrency' must be true
    this validation that I used , it does not work correctly and it allows to enter 2 records with
    true value for Isdefaultcurrency. In fact I want when User Enter the First record and
    set the Isdefaultcurrency to true then enter the second record and set the Isdefaultcurrency
    to true the error message will be shown.
    pleas explain it
    Edited by: Marzieh on Jan 30, 2012 9:43 PM

    Is it that you want to only allow one record in the table to have isdefaultcurrency='1'?
    yes , that is correct . I used Oracle DataBase .
    DECODE(isdefaultcurrency, 1, 1, null) please explain about it.
    isdefaultcurrency attribute has boolean Type with 0 or 1 values.
    I would like to show an error if check box was checked for the second time. The idea is that just
    one check box should be checked.
    thanks for your answer

  • Entity Object validation for "Date" type

    I am trying to use the Entity Object validation for a Date field type, it is a required field.
    I am using the format: MM/dd/yy HH:mm:ss
    It is a simple validation where the date value must be less than or equal to the current date/time.
    I tried using "Query Result" validation where the date is LESS THAN the query SELECT SYSDATE FROM dual.
    This throws an error:
    JBO-27011: Attribute set with value 2006-07-09 14:05:53.0 for LksrSurveyDte in LCFSReportService.LeakDetailView1 failed.
    I have be unable to find help on validating dates using validation for an Entity Object and need some help.
    Thanks in advance.

    In your case you can implement a service method in the VO to check if any other reservation overlaps with the new one (which is not inserted in the db).
    I would use a an other VO (e.g. VODateCheck) for this. This VO has it's query build to check if a given roomid and a given startdate(time?) overlaps any other record for the roomid
    select * from ReservationRoom where RoomId=:bindRoomId and ReservationEnd>=:bindReservationStartIf this query returns one or more rows you have an overlapping in the schedule and throw an error.
    You call this VODateCheck from your service method in the other module before inserting the record. Set the bind variables in the VODateCheck and execute the query.
    Timo

  • BC4J Entity object validation and JSP

    Hi, I've been trying to implement BC4J best practices as per a previous thread with Steven Muench.
    I've placed all my business logic/validation in the entity object create and validateEntity methods. This works perfectly in the tester utility.
    In a JSP page the first time around the error raised also gets displayed properly prompting the user to go back and fix his data entry. The problem is that the error keeps reappearing even after the data has been fixed.
    We use web beans to perform the save using standard create/setAttribute/InsertRow/commit logic.
    The whole setup works perfectly in JSP if there are no errors in the data.
    Any pointers or ideas?
    Thanks.
    null

    productNew.jsp
    <FORM NAME="saveForm" METHOD=POST ACTION="productSave.jsp">
    <table align="center">
    <tr>
    <td>
    <div align="right">Product Code:</div>
    </td>
    <td>
    <input type="text" name="productcode" size="6" maxlength="6">
    </td>
    </tr>
    <tr>
    <td>
    <div align="right">Product Sname:</div>
    </td>
    <td>
    <input type="text" name="productsname" size="20" maxlength="20">
    </td>
    </tr>
    <tr>
    <td height="19">
    <div align="right">Product Name:</div>
    </td>
    <td height="19">
    <input type="text" name="productname" size="45" maxlength="45">
    </td>
    </tr>
    <tr>
    <td>
    <div align="right">Product Type:</div>
    </td>
    <td>
    <jsp:useBean class="com.palmtreebusiness.edms.products.jsp.LovBean" id="lov1" scope="request">
    <%
    lov1.setLovDefault("None Selected");
    lov1.setLovKey(0);
    lov1.setLovKeyDescription(1);
    lov1.setJSOnChangeMethod("");
    lov1.setLovHTMLField("producttypekey");
    lov1.initialize(pageContext, "productsjsp_com_palmtreebusiness_edms_products_bc4j_bc4jmodule.ProducttypetbView");
    lov1.render();
    %>
    </jsp:useBean> </td>
    </tr>
    <tr>
    <td>
    <div align="right">Product Sub Class:</div>
    </td>
    <td>
    <jsp:useBean class="com.palmtreebusiness.edms.products.jsp.LovBean" id="lov2" scope="request">
    <%
    lov2.setLovDefault("All Selected");
    lov2.setLovKey(0);
    lov2.setLovKeyDescription(1);
    lov2.setJSOnChangeMethod("");
    lov2.setLovHTMLField("productsubclasskey");
    lov2.initialize(pageContext, "productsjsp_com_palmtreebusiness_edms_products_bc4j_bc4jmodule.ProductsubclasstbView");
    lov2.render();
    %>
    </jsp:useBean>
    </td>
    </tr>
    <tr>
    <td>
    <div align="right">STCC DG Code:</div>
    </td>
    <td>
    <input type="text" name="stccdgcodekey" size="10" maxlength="10">
    </td>
    </tr>
    <tr>
    <td>
    <div align="right">Harmonized Code:</div>
    </td>
    <td>
    <input type="text" name="harmonizedcode" size="20" maxlength="20">
    </td>
    </tr>
    </table>
    </form>
    productSave.jsp
    <%@ page language = "java" errorPage="errorpage.jsp" import = "java.util.*, oracle.jbo.*, javax.naming.*, oracle.jdeveloper.html.*, oracle.jbo.html.databeans.*" contentType="text/html;charset=ISO-8859-1"%>
    <%
    // make sure the application is registered
    oracle.jbo.html.jsp.JSPApplicationRegistry.registerApplicationFromPropertyFile(session , "productsjsp_com_palmtreebusiness_edms_products_bc4j_bc4jmodule");
    %>
    <HTML>
    <HEAD>
    <jsp:useBean id="prod" class="com.palmtreebusiness.edms.products.jsp.productSavebean" scope="request">
    <%
    try {
    prod.initialize(pageContext, "productsjsp_com_palmtreebusiness_edms_products_bc4j_bc4jmodule.ProducttbView");
    prod.setReleaseApplicationResources(true);
    prod.save();
    response.sendRedirect("productList.jsp");
    response.setStatus(response.SC_MOVED_TEMPORARILY);
    catch (Exception ex) {
    out.println("<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=ISO-8859-1\">");
    out.println("<META NAME=\"GENERATOR\" CONTENT=\"Oracle JDeveloper\">");
    out.println("<TITLE>");
    out.println("Save Error");
    out.println("</TITLE>");
    out.println("</HEAD>");
    out.println("<BODY>");
    out.println("A save error occured.<br><br>");
    out.println(ex.getMessage());
    out.println("<br><br>Plese use the back feature of your browser to go back to the form and fix your data.");
    out.println("</BODY>");
    out.println("</HTML>");
    %>
    </jsp:useBean>
    saveBean.java
    public void save() throws oracle.jbo.JboException {
    Row rRow;
    System.out.println(request.getParameter("producttypekey"));
    System.out.println(request.getParameter("productsubclasskey"));
    try {
    // get the rowset instance
    RowSet rSet = getRowSet();
    rRow = rSet.createRow();
    rRow.setAttribute("Producttypekey", new Number(request.getParameter("producttypekey")));
    rRow.setAttribute("Productsubclasskey", new Number(request.getParameter("productsubclasskey")));
    rRow.setAttribute("Productcode", request.getParameter("productcode"));
    rRow.setAttribute("Productsname", request.getParameter("productsname"));
    rRow.setAttribute("Productname", request.getParameter("productname"));
    rRow.setAttribute("Stccdgcodekey", new Number(request.getParameter("stccdgcodekey")));
    rRow.setAttribute("Harmonizedcode", request.getParameter("harmonizedcode"));
    rSet.insertRow(rRow);
    rSet.getApplicationModule().getTransaction().commit();
    catch (oracle.jbo.JboException jboex) {
    qView.reset();
    throw new oracle.jbo.JboException(jboex.getMessage());
    catch (Exception ex) {
    throw new oracle.jbo.JboException(ex.getMessage());
    producttbimpl.java
    public void create(AttributeList attributeList) {
    try {
    SequenceImpl s = new SequenceImpl("producttb_seq", getDBTransaction());
    Integer next = (Integer)s.getData();
    setProductkey(new Number(next.intValue()));
    super.create(attributeList);
    catch (Exception jboe) {
    if (jboe instanceof oracle.jbo.JboException) {
    oracle.jbo.JboException ex2 = (oracle.jbo.JboException)jboe;
    if (ex2.getErrorCode().equals("25030")) {
    return;
    throw new oracle.jbo.JboException("Unable to create this record!\n" + jboe.getMessage());
    public void validateEntity() throws oracle.jbo.JboException {
    //TODO: Add custom implementation.
    Number nSubclasskey, nTypekey;
    Number nSubclassFkey, nTypeFkey;
    try {
    nSubclassFkey = getProductsubclasstb().getProductclasskey();
    nTypeFkey = getProducttypetb().getProducttypekey();
    nSubclasskey = getProductsubclasskey();
    nTypekey = getProducttypekey();
    if (!nSubclassFkey.equals(nSubclasskey) &#0124; &#0124; !nTypeFkey.equals(nTypekey)) {
    throw new oracle.jbo.JboException("You need to specify a product sub class and type first!");
    catch (Exception ex) {
    throw new oracle.jbo.JboException("You need to specify a product sub class and type first!");
    super.validateEntity();
    null

  • How to avoid Entity Object validations when comiting a DB transaction

    Hello,
    I have a screen that have three sections:
    1. Header
    2. First tab that contains rows, lets call it User Details  - only the ability to add records and update existing
    3. Second tab that contains rows, lets call it Roles  - ability to create, modify and delete
    -- I have a Save and Cancel button
    I have an Entity Object that covers the whole page UserDetailsEO and it has its validation methods on the implementation UserDetailsEOImpl.java.
    On the second tab when deleting the record, the delete binding method its called and it has a row to commit the transaction. By doing so the validations for the EO are called.
    However I want to avoid performing validation at this point. I can delete rows without any validation, I just want to do the validation when clicking Save.
    Is there any way to accomplish this?
    Thank you,

    Hello Timo,
    Thanks for your answer, the delete action comes from an applicationTable, here is my code:
    The deleteImmediate is set to true.
    <fnd:applicationsTable tableId="t2" id="AT1"
                                             deleteEnabled="true"
                                             createPatternType="inline"
                                             createImmediate="true"
                                             createText="#{applcoreBundle.ADD_ROW}"
                                             deleteActionListener="#{ParticipantDetailPageBean.invokeConfirmationDelete}"
                                             deleteImmediate="true"
                                             styleClass="AFStretchWidth"
                                             deleteMsg="#{applcoreBundle.DELETE_CONFIRM}"
                                             deletePartialTriggers="_ATp:t2"
                                             duplicateEnabled="false">
    The popup does not have buttons itself. Here is the code
    <af:popup id="confirmDeletePopup"
                                      binding="#{ParticipantDetailPageBean.deleteYesNoPopup}"
                                      childCreation="deferred">
                              <af:dialog id="d1" type="okCancel"
                                         dialogListener="#{ParticipantDetailPageBean.handleConfirmDeleteDialog}"
                                         title="#{IcCnSrpTopGenBundle['Header.RoleAssignmentDeleteWarning']}">
                                <af:panelGroupLayout id="pgl4">
                                  <af:panelFormLayout id="pfl2">
                                    <f:facet name="footer"/>
                                    <af:activeOutputText value="#{applcoreBundle.DELETE_CONFIRM}"
                                                         id="aot1"/>
                                  </af:panelFormLayout>
                                </af:panelGroupLayout>
                              </af:dialog>
                            </af:popup>

  • Error in compiling an entity object

    I am new to OAF. I am trying to create a page. I created a new workspace, two projects, In one project an entity object and in the 2nd project created a view object based on the entity object and an application module. I am getting some error when I rebuild the workspace. I have not followed the naming convention.
    Name of the entity object:TlkApInvoicesHeaderTmp.
    Please someone help. Thank you.
    Error is
    C:\OA\OAF\jdevhome\jdev\myprojects\apps\oracle\ak\prativa\testing\TlkApInvoicesHeaderTmpImpl.java
    Error(12,8): class apps.oracle.ak.prativa.testing.TlkApInvoicesHeaderTmpImpl should be declared abstract; it does not define method setLastUpdateLogin(oracle.jbo.domain.Number) in class oracle.apps.fnd.framework.server.OAEntityImpl

    Well, you need to add the WHO columns in the table upon which you are basing your EO. Otherwise you should define your EOImpl as abstract.
    --Shiv                                                                                                                                                                                                                                                                                                       

  • Error when running the entity object

    Hi Experts,
    I am learning OAF. I created Application Module, and entity object for table emp and shcema apps.
    While running entity object, it's throwing the following error.
    Error(17,14): class practice_test_prc1.oracle.apps.mfg.simplepg.schema.server.EmpImpl should be declared abstract; it does not define method setLastUpdateLogin(oracle.jbo.domain.Number) of class oracle.apps.fnd.framework.server.OAEntityImpl
    I changed the EmpImpl class as abstract;error was rectified.
    I wanted to know why it's is giving that error, Did i make any mistake while creating the entity object?
    Awaiting your response.
    Thanks in advance.

    Hi,
    ---The custom table should contain who columns in table structure.
    CREATED_BY Number,
    CREATION_DATE Date,
    LAST_UPDATE_DATE Date,
    LAST_UPDATED_BY Number,
    LAST_UPDATE_LOGIN Number
    Refer:
    How to create a new EO in OAF?
    Regards
    Meher Irk

  • Creating Entity Object from Service Interface - JDeveloper version 11.1.1.3

    In our project, we don't intend to have any JDBC connection to a database and want to create all my entity objects using SDO web services deployed in a remote server. I could create an entity object based on a SDO web service deployed in the standalone WL server successfully. But at the time of Development,when I select ADF Business Component --> Entity Object, it always takes to a screen that prompts for a JDBC connection, if you have no connection defined in the project yet. To bypass this, I need to create a valid connection to a local DB and then I can go the next page that prompts me to to choose service interface and asks for a WSDL URL. How do I get around creating a JDBC connection and create a service interface based data source directly?
    To get around this issue, I created a connection to a local DB by providing a wrong password to make sure that we don't need a valid db connection. The application module (Business Component Browser) works fine when the DB connection is broken. But when I create a JSF page and put the data control there, if we don't have the DB connection established it gives error during deployment.I tried deleting the unused connection, but that gives a lot of errors during deployment. My question is;
    1. How can I create a service interface based data source by-passing the requirement for a connection?
    2. If that's not possible - how can I cleanly delete the JDBC connection and all it's dependencies, so that, it deploys and runs without error

    Frank,
    Thanks for your response.
    I have made some progress in last two days and solved some of the original issues. I deleted the fake JDBC connection from connection.xml that I had to use to go to the second screen that lets me select the WSDL for the service interface. After that, I checked off the "Auto Generate and Synchronize ..." option from Application --> Application Properties --> Deployment. (thanks to Steve Muench's blog post on this subject). After that, I could deploy the JSF page and the page shows up with no problem.
    However, when I try to run the App Module that was created from the WSDL (service interface), it brings up a pop-up with heading "Password Required" that says "Enter the password for" and asks for a user name and password (not sure what they are as they take any value and takes me to the next screen). After that, I can open the View and navigate through it. When i change some data and try to commit - it makes the change to the data and stores in the DB but gives an error saying "(oracle.jbo.NotConnectedException) JBO-25200: Application module is not connected to a database."
    Also, the data control created from the service interface had operations called Commit and Rollback. I used the Commit on JSF page and that does the exact same thing too. Any idea?
    Also - when we consume a SDO WSDL to create the entity object - how can we access the SOAP Request and Response objects? We have to implement WS-Security by instrumenting the SOAP header and need to get a handle on that. Is there a mechanism similar to JAX-WS handler framework for SDO?
    R,
    Chandan

  • Extended but NOT polymorphic Entity Object ?

    Hi,
    We are trying to implement the OO features of ADF BC, i.e : Inheritance and Polymorphism, to reuse the logic in EO. I need some confirmation below to make sure we apply it correctly :
    1) We can Extend Entity Object WITHOUT assigning any discriminator, can't we ?
    (this is what I call Extended but NOT polymorphic )
    If the answer is yes , then I have further question :
    2) In our Order Processing module of our ERP application, there are following entity object : SalesOrder, Invoice, SalesReturn, CreditNote
    And there are four underlying database tables : SalesOrder, Invoice, SalesReturn, CreditNote.
    They are surely DIFFERENT transaction BUT they have COMMON attributes (and validation), This is why I call it "Extended but NOT polymorphic".
    The common attributes are :
    - DocID (PK)
    - DocNumber
    - DocDate
    - Warehouse
    - Customer
    - Salesman
    - TermOfPayment
    - DueDate
    So I create one BaseOrderEntity as super class entity. Then I create four entity objects that extend the base entity :
    Entity : SalesOrder, Extend : BaseOrderEntity, Database Object : SalesOrder
    Entity : Invoice, Extend : BaseOrderEntity, Database Object : Invoice
    Entity : SalesReturn, Extend : BaseOrderEntity, Database Object : SalesReturn
    Entity : CreditNote, Extend : BaseOrderEntity, Database Object : CreditNote
    Is this the correct way to apply it ?
    In other word, is this the correct use case ?
    Thank you very much,
    xtanto.

    Starting in JDeveloper 10.1.2, the ADF runtime throws an error if it detects that you have a superclass and subclass entity objects without properly-configured discriminator attributes. If you do not intend to instantiate the superclass, just assign it a descriminator attribute with a value that will never occur in real-life, like NULL or 'x' or whatever.
    It will be simplest if all your family of subclasses were stored in the same table, although that is not required. It simply makes the polymorphic queries easier.
    If you want to avoid the runtime check for the discriminator's being properly configured, because you know that your application will never run the chance of loading the same row into the entity cache as two different entity definition types, then you can get a property jbo.abstract.base.check in your configuration (or as a System property) to the value false and then the check is not performed.

  • Managing Entity Object and PL/SQL transactions

    Hi,
    I have requirement to use entity objects and PL/SQL API in the same transaction.
    First the data is created in the entity object and then API is called to do some validations on the data created through entity object.
    I am not able to fetch the rows created by the entity object in the PL/SQL API until I issue a commit before calling the API.
    Can anyone suggest me how to get the data in PL/SQL API which was created by the entity object without commit. As I want to have a commit only after API returns true.
    Thanks in advance

    Override the beforeCommit method of the main entity object of your page.
    The commit will only take place if the PLSQL does not throw any errors.
    See example below:
    public void beforeCommit(oracle.jbo.server.TransactionEvent e) {
    methodToCheckUsingPLSQL();
    super.beforeCommit(e);
    private void methodToCheckUsingPLSQL() {
    try {
    String sql =
    "BEGIN check_my_entity(p_id => :1" +
    ", x_return_status => :2" +
    ", x_return_msg => :3); END;";
    OracleCallableStatement stmt =
    (OracleCallableStatement)getDBTransaction().createCallableStatement(sql,
    DBTransaction.DEFAULT);
    // Rebind parameters
    stmt.setNUMBER(1, getId());
    stmt.registerOutParameter(2, Types.VARCHAR); //x_return_status
    stmt.registerOutParameter(3, Types.VARCHAR); //x_return_msg
    stmt.executeUpdate();
    String returnStatus = stmt.getString(2);
    String returnMsg = stmt.getString(3);
    if (!"SUCCESS".equals(returnStatus)) {
    throw new OAException(returnMsg);
    } catch (Exception e) {
    throw new OAException("Error during methodToCheckUsingPLSQL. " +
    e.getMessage());
    Regards,
    Jeroen Kloosterman

  • How to Catch the state of the Entity Object

    I have Location Entity object. With JClient I am testing it.
    I want to insert the data,
    due to validations (wrong data) insert fails.
    Then I am correcting data, still to another view object it is passing old data.
    After correcting the data when I try to click commit it is not executing the code from getEntityState = STATUS_NEW
    Can someone also please let me know how to catch the state of the entity
    Thanks

    Hi Juli,
    I am totally new to using Jdeveloper and I need ur humble help letting me know how to access an Entity object for invoking the insert, update and delete statements. It would be great if u can provide me with some error-free sample code.
    Waiting for some help from U.

Maybe you are looking for

  • Admin account Deleted

    Hello, I control a network of Macs remotely. There all new iMacs running OSX 10.6.5. In the ARD list the computer displays ACCESS DENIED. I know the password, so I tried to verify it and no joy. I then tried to SSH in as admin and nothing. I then SSH

  • Printer keeps printing (HP Officejet pro 8500 A909g)

    I'm currently running a HP OfficeJet Pro 8500 A909g wireless all-in-one printer off a wireless network - my laptop running Vista Basic. My printer has started the Christmas season by printing the document I send to it repeatedly... whether this is a

  • Migrating from Sup2GE to Sup720 Native IOS

    We are planning to migrate a 6509 chassis from a single Sup2GE & SFM to a Sup720-3B. Can this be done without a service interruption? If so, what is the recommended procedure for this? If anyone has done this, I would love to hear your story. Thanks

  • Export sequence with actual frame numbers

    Hi all, I rendered my projects entire workarea once in a whole png-sequence! Now i changed a small part and wanted to render that part into the folder with the already rendered sequence. PROBLEM is that it alway starts with "ZERO". How can i tell Pre

  • ACS 5.0 NFR-version ?

    Hi all, I've seen the ACS 5.0 evaluation version, so I wonder if it is also available in the NFR package ? If it hasn't already be released there, is there any date when to expect it ? How often are these NFR packages re-bundled anyway ? Thanks in ad