Oracle ADF - Commit operation issue.
Hi,
I am new to Oracle ADF. I am using Oracle jDeveloper 11.1.1.4.0
and facing problem when I try to save a new record from within application.
I have called a action on commit button and used auto generated code, here is the it -
BindingContainer bindings = getBindings();
OperationBinding operationBinding = bindings.getOperationBinding("Commit");
Object result = operationBinding.execute();
if (!operationBinding.getErrors().isEmpty()) {
return null;
I read that after execute statement framework calls doDML(int operation, TransactionEvent e) method in EOImpl and there we do insert/update/delete...etc,
But when I debug my application it doesn't. Please correct me if I am wrong.
Unable to understand what exactly the problem is?
Appreciate your help.
Thanks in advance.
Madhav.
Hi,
Yes, I do have a break point in doDML() of EOImpl.java
Also I have another break point in bean before it calls the EOImpl's doDML().
I'll show you the action method in bean which get's call on click of commit button in .jspx,
public String commitAction() {
BindingContainer bindings = getBindings();
OperationBinding operationBinding = bindings.getOperationBinding("Commit");
Object result = operationBinding.execute();
if (!operationBinding.getErrors().isEmpty()) {
return null;
return null;
}In this method I put a break point at
Object result = operationBinding.execute();from here control doesn't go to EOImpl class.
Here is the .jspx code for commit button,
<af:commandButton text="Commit"
disabled="#{!bindings.Commit.enabled}"
id="cb1"
action="#{CustomerProfileBean.commitAction}"/>Can I use both action and actionListener properties for same command button?
Is this technically correct?
Thanks,
Madhav.
Edited by: 877436 on Aug 4, 2011 11:49 PM
Similar Messages
-
ADF datacontrol Commit operation - commitng only few tables
Hello Everyone,
This is my requirement.
The application has several View-objects each derived from a corresponding single EO/DB TABLE. I mean that there are no joins in the view object query and just one VO-EO/table relationship.In the transaction I'm just INSERTING rows into several view objects.
All I need is that At the final commit operation, only the few tables should get committed at the DB level and not all the tables.Is there a way to do this and I know that I cannot use the generic COMMIT operation at the data control as it commits rows into all the tables.
Any help is appreciated.
Thankyou,
SriHaving view objects that are to commited & not commited in separate AM as suggested by John is the solution.
But how about this,
in beforeCommit() method, get handle to the View objects that are not to be commited and get their associated entities and set the row state to "Initialized".
Setting the row state to "Initialized" would
You can use the setNewRowState() method to mark the entity as being Initialized, which removes it from the transaction's list of pending changesCheck for same documentation in ADF Developer's guide:
http://download.oracle.com/docs/cd/E15523_01/web.1111/b31974/bcvalidation.htm#sthref721
Thanks,
Navaneeth -
Oracle ADF task flow setup failing- deployment issue
Hi Experts,
We are facing issue while deploying the ADF taskflow to Oracle webcenter portal/application server.
We will need your help to get any pointers from your Oracle network to help resolve.
Details of issue are as below.
Please help ASAP.
Problem Statement: Issue in the ADF taskflow while it is deployed on Oracle Webcenter Portal/Application server (the ADF taskflow is fetching data from PL/SQL procedure using table/record objects as OUT parameter, which is running fine in Jdeveloper).
Problem Description:
From ADF task flow we are invoking a PL/SQL procedure, which is returning a PL/SQL objects as an OUT parameter, some of these objects are of TABLE TYPE and one of RECORD TYPE. We are invoking this oracle procedure and fetching the object using jdbc. The object to which we are mapping this PL/SQL object is a custom java type object. We are using Jdeveloper 11.1.1.4 and Oracle ADF for this and we are able to successfully fetch the object using the code snippet #1 attached below.
However, when we deploying the same code, i.e. the above ADF task flow in the Webcenter Portal server 11.1.1.4, inside the Webcenter portal application, it doesn’t work and give the below error, error snippet #2 below.
Options tried: Initially we were using oracle.sql.STRUCT to handle the PL/SQL object, we tried changing this to weblogic.jdbc.wrapper.Struct and also java.sql.Struct, however we are still getting same error.
The objective is to get the data from PL/SQL procedure in objects (record, table) as OUT parameters in ADF taskflow deployed on Oracle webcenter portal/application server.
******Code Snippet #1**************************
txn = getDBTransaction();
Connection con =
((DBTransactionImpl) txn).getPersistManagerConnection();
st = (OracleCallableStatement) con.prepareCall(callfetchOA);
st.setString(1, so_number);
st.setString(2,
generate_pdf); //generate_pdf should be passed as N in case of FetchOA and Y in case of Generate PDF
st.setString(3, so_line_id);
st.registerOutParameter(4, OracleTypes.STRUCT, headerTrxObj);
st.registerOutParameter(5, OracleTypes.ARRAY, lineTrxTypeObj);
st.registerOutParameter(6, OracleTypes.ARRAY, fetchFeeLineTypeObj);
st.registerOutParameter(7, OracleTypes.ARRAY, fetchAdSizeTypeObj);
st.registerOutParameter(8, OracleTypes.ARRAY, fetchChannelTypeObj);
st.registerOutParameter(9, OracleTypes.ARRAY, fetchMarketTypeObj);
st.registerOutParameter(10, OracleTypes.ARRAY, slaTypeObj);
st.registerOutParameter(11, OracleTypes.NUMBER);
st.registerOutParameter(12, OracleTypes.VARCHAR);
st.execute();
Object[] header = st.getSTRUCT(4).getAttributes();
***** error snippet #2**********************
java.lang.ClassCastException: weblogic.jdbc.wrapper.Struct_oracle_sql_JAVA_STRUCT cannot be cast to oracle.sql.STRUCT
at weblogic.jdbc.wrapper.CallableStatement_oracle_jdbc_driver_OracleCallableStatementWrapper.getSTRUCT(Unknown Source)
at com.valassis.service.BaseAppModuleImpl.fetchOrder(BaseAppModuleImpl.java:1496)
at com.valassis.model.beans.vo.OrderVO.fetchOrder(OrderVO.java:177)
at com.valassis.model.beans.vo.OrderVO.testSaveOrder(OrderVO.java:399)
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:597)
at com.sun.el.parser.AstValue.invoke(Unknown Source)
at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
at org.apache.myfaces.trinidad.component.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:46)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:879)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:312)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.portlet.client.adapter.adf.ADFPortletFilter.doFilter(ADFPortletFilter.java:32)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.framework.events.dispatcher.EventDispatcherFilter.doFilter(EventDispatcherFilter.java:44)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.wcps.client.PersonalizationFilter.doFilter(PersonalizationFilter.java:75)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.content.integration.servlets.ContentServletFilter.doFilter(ContentServletFilter.java:168)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.lifecycle.filter.LifecycleLockFilter.doFilter(LifecycleLockFilter.java:151)
Thanks
PhaniMaybe this can help you: http://mike.hostetlerhome.com/2007/02/12/weblogic-oracle-and-blobs-oh-my/
It shows how to obtain a vendor object from the weblogic wrapped instance.
From the blog
weblogic.jdbc.wrapper.Blob cast1 = (weblogic.jdbc.wrapper.Blob) o;
BLOB myblob = (BLOB) cast1.getVendorObj(); -
Oracle ADF: Cannot Commit Database Transaction
Hi All
I am trying to update oracle database using Oracle ADF from command line. The following is my code snippet
final String amName1 = "taxreturn.AM_Taxreturn";
final String connStr = "jdbc:oracle:thin:o9ias/[email protected]:1521:t1fdbo";
Hashtable env = new Hashtable(2);
env.put(Context.INITIAL_CONTEXT_FACTORY, JboContext.JBO_CONTEXT_FACTORY);
env.put(JboContext.DEPLOY_PLATFORM, JboContext.PLATFORM_LOCAL);
ApplicationModule appMod1 = null;
try {
javax.naming.Context ic = new InitialContext(env);
ApplicationModuleHome home1 = (ApplicationModuleHome)ic.lookup(amName1);
appMod1 = home1.create();
appMod1.getTransaction().connect(connStr);
} catch (Exception e) {
e.printStackTrace();
ViewObject t1xvVO = appMod1.createViewObject("t1xvVO", "taxreturn.T1XrefVView");
t1xvVO.setWhereClause("T1X_T1FU_USERID='" + "testlin2" + "' and T1X_T1_TAXYEAR='" + "2012" + "' and T1X_DELETED is null and T1X_INVOICE_T1_150 is null");
t1xvVO.executeQuery();
Row rowT1xv = null;
int count = 0;
while (t1xvVO.hasNext()) {
count++;
rowT1xv = t1xvVO.next();
System.out.println("Number of records: " + count);
t1xvVO.executeQuery();
if (t1xvVO.hasNext()) {
rowT1xv = t1xvVO.last();
System.out.println("First Name: " + rowT1xv.getAttribute("T1FirstName"));
System.out.println("T1xInvoiceT1150: Before: " + rowT1xv.getAttribute("T1xInvoiceT1150"));
rowT1xv.setAttribute("T1xInvoiceT1150", "250");
//appMod1.getTransaction().postChanges();
System.out.println("T1xInvoiceT1150: After: " + rowT1xv.getAttribute("T1xInvoiceT1150"));
System.out.println("Is Dirty: " + t1xvVO.getApplicationModule().getTransaction().isDirty());
try {
appMod1.getTransaction().commit();
System.out.println("Commit succeeded.");
} catch (oracle.jbo.JboException e) {
System.out.println("Commit failed. " + e);
I can see there are total 3 records retrieved. Then I execute query for the view object again and change the last record. But after the commit statement, the database is not update. What's wrong here? Thanks in advance
LeafRefer 6.4.9 How to Create a New Row for a View Object Instance
http://docs.oracle.com/cd/E37975_01/web.111240/e16182/bcqueryresults.htm#sm0094
The procedure to create an ApplicationModule and find View object is different than in the code snippet. Use the procedure in the link. -
Oracle Forms equivalent operations in Oracle ADF
I need to know whether there are equivalent operations in ADF corresponding to these operations in Oracle Forms
System.Current_block
System.Current_record
System.Current_form
etc...As a mechanism to working out how ADF works, a suggested read is the Fusion Dev Guide: http://download.oracle.com/docs/cd/E16162_01/web.1112/e16182/toc.htm
Once you've done this, as extension the dev guide has appendixes "F - ADF Equivalents of Common Oracle Forms Triggers" & "G Performing Common Oracle Forms Tasks in Oracle ADF" for assisting Forms programmers in moving to ADF, a feature/mind map as you will.
However as Vinod says, don't make the mistake of thinking ADF is similar to Forms in its implementation. While Forms and ADF attempt to achieve similar results (ie. applications querying data from a db and showing to the user to view or edit), they do it in totally different technologies.
CM. -
hi, I am using 11g 1.2 and ADF BC
I followed the sample "http://andrejusb.blogspot.com/2010/05/crud-operations-in-oracle-adf-11g-table.html" and built a same thing in my bound task-flow.
the 'Edit' , 'Insert' , 'Save' and 'Undo' button worked perfectly, but the 'Delete' button is not. let say I have three lines in the table, If I click a row and click the 'Delete' button, then all three lines are disapear, May I know why? Thanks for your guide!
Rgds!But I do have the af:form in the page level. My table is inside the region which is in the page.
I have added a af:Subform around my af:PanelCollection, but the result is worse, even when I click 'INSERT' button, the all three lines are disapear!!!
May this sample and code can not work properly inside the region?
Edited by: xsyang on Jul 19, 2011 4:42 AM
finally I understand that the solution in the sample is for bindings in the page, but my af:table component in the page fragment. may not directly coding like sample. am i worng? can anybody guide me how to refer to binding in the fragment. Thanks!
Edited by: xsyang on Jul 19, 2011 8:06 AM -
How to find last DML operation in oracle ADF
how to find last DML operation in oracle ADF
Please help me
Thanks
DambyIn the base EntityIml class, just override doDML() method as I said.
(see http://docs.oracle.com/cd/E16162_01/web.1112/e16182/appendix_mostcommon.htm
"Methods for Creating Your Own Layer of Framework Base Classes")
So, put a some flag in the session.
You should not call doDML() method in backing bean, it will be called by framework.
In the backing bean, you only have to get that information from the session, as follows:
String last_dml_op = (String)ADFContext.getCurrent().getSessionScope().get("last_dml_op");And voila... -
Oracle ADF UIX tutorial wont commit changes
I'm following the tutorial "Developing Applications with Oracle ADF UIX"
http://otn.oracle.com/obe/obe9051jdev/uixTutorial/lesson_UIX.htm
The tutorial works apart from if I create/update or delete a record its not commited to the database.
Where I'm I going wrong?
Thanks for any help.create/update should be commited to database due to method "Commit" that you drop into commit data action, and delete won't be commited, you should additionaly create "Commit" button on your page or use another way to commit.
-
Oracle ADF Jdeveloper(11.1.1.4) opera support
Hi
Is there any official link to validate whether opera browser is supported/not supported for Oracle ADF on Jdeveloper(11.1.1.4)?http://www.oracle.com/technetwork/developer-tools/jdev/index-091111.html
Short answer: only for ADF Mobile -
How to execute commit operation from an ADF button?
Hi,
I am using Jdeveloper 11.1.1.3.0. I have an application and need to customize the application by adding a form. I added the Form and I need to do a commit when they press the SAVE button in that page. the action listener for that SAVE button invokes a method and I don't want to change that code because it handles lots of other stuffs. I need to add the commit to the SAVE button. Is it possible to call the ${bindings.commit.execute} in the javascript when they press the SAVE button or using any other listener to invoke a method in the backing bean.
Thanks
SRYou can add the binding to the commit operation to your page and then call this from the backing bean where your current save logic exist.
See: http://blogs.oracle.com/shay/2010/04/doing_two_declarative_operatio.html -
Error while invoking the commit operation in a data control
JDeveloper 11.1.2
When we invoke the commit operation exposed thru the data control, sometimes we get the following error:
Caused by: java.lang.NullPointerException
at oracle.jbo.server.DBTransactionImpl.addPendingEvent(DBTransactionImpl.java:5751)
at oracle.jbo.server.DBTransactionImpl.sendOrQueueEventForSharedTrans(DBTransactionImpl.java:6659)
at oracle.jbo.server.DBTransactionImpl.fireTransactionStateEvent(DBTransactionImpl.java:6693)
at oracle.jbo.server.DBTransactionImpl.doAfterCommit(DBTransactionImpl.java:2301)
at oracle.jbo.server.DBTransactionImpl.commitInternal(DBTransactionImpl.java:2159)
at oracle.jbo.server.DBTransactionImpl.commit(DBTransactionImpl.java:2352)
This issue is intermittent but occurs many times.
I am NOT able to find any issues with the code.
Any pointers on resolving the issue.
Thanks,
NavaneethMy problem is special, we change the AM configuration to EJB (2.1 stateful, let's put performance issue aside) and deploy remotely, however, there's a NullPointerException occurred at the same line number as your case when we change the task flow id of the dynamic region, because the ADF framework always calls Rollback during region refresh, this Rollback cause the NullPointerException. Even if I caught and ignore this error, there will be always a NullPointerException thrown the next time we do any VO attribute update (kind of same as the blog entry described below).
http://adfbugs.blogspot.com/2011/08/rollback-is-executed-when-region-is.html
I am not sure if we could benefit from fixing of your SR by Oracle. Please share if you have any hints, thank you!
Edited by: codeplay on Mar 30, 2012 9:42 AM -
Hi,
I am using Jdeveloper 11.1.2.3.0. I have generate a .war file and deployed in weblogic server 10.3.6. When I click on start button by selecting the .war file, I am getting following exception
oracle.adf.share.ADFShareException: MDS Exception encountered in parse ADF Configuration
at oracle.adf.share.config.ADFMDSConfig.getDefaultMDSInstance(ADFMDSConfig.java:472)
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:597)
at oracle.adf.share.config.FallbackConfigImpl.getMDSInstance(FallbackConfigImpl.java:83)
at oracle.adf.share.config.ADFContextMDSConfigHelperImpl.getMDSInstance(ADFContextMDSConfigHelperImpl.java:274)
at oracle.adf.share.ADFContext.getMDSInstanceAsObject(ADFContext.java:1790)
at oracle.adf.share.http.ServletADFContext.initialize(ServletADFContext.java:493)
at oracle.adf.share.http.ServletADFContext.initThreadContext(ServletADFContext.java:400)
at oracle.adf.mbean.share.connection.ADFConnectionLifeCycleCallBack.contextInitialized(ADFConnectionLifeCycleCallBack.java:71)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1868)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3154)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1518)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:484)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:671)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:44)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:149)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused By: oracle.mds.exception.MDSRuntimeException: file=/usr/local/Oracle/Middleware/user_projects/domains/arkin_domain/config/fmwconfig/servers/AdminServer/javacache.xml, java.io.FileNotFoundException: /usr/local/Oracle/Middleware/user_projects/domains/arkin_domain/config/fmwconfig/servers/AdminServer/javacache.xml (No such file or directory)
null
/usr/local/Oracle/Middleware/user_projects/domains/arkin_domain/config/fmwconfig/servers/AdminServer/javacache.xml (No such file or directory)
at oracle.mds.internal.cache.JOCCacheProvider.createNamedCacheInternal(JOCCacheProvider.java:343)
at oracle.mds.internal.cache.JOCCacheProvider.createNamedCache(JOCCacheProvider.java:254)
at oracle.mds.internal.cache.JOCCacheProvider.<init>(JOCCacheProvider.java:87)
at oracle.mds.core.MDSInstance.initCache(MDSInstance.java:1649)
at oracle.mds.core.MDSInstance.<init>(MDSInstance.java:1786)
at oracle.mds.core.MDSInstance.<init>(MDSInstance.java:1738)
at oracle.mds.core.MDSInstance.findAndStoreMDSInstance(MDSInstance.java:2035)
at oracle.mds.core.MDSInstance.getOrCreateInstance(MDSInstance.java:529)
at oracle.mds.core.MDSInstance.getOrCreateInstance(MDSInstance.java:492)
at oracle.adf.share.config.ADFMDSConfig.getDefaultMDSInstance(ADFMDSConfig.java:452)
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:597)
at oracle.adf.share.config.FallbackConfigImpl.getMDSInstance(FallbackConfigImpl.java:83)
at oracle.adf.share.config.ADFContextMDSConfigHelperImpl.getMDSInstance(ADFContextMDSConfigHelperImpl.java:274)
at oracle.adf.share.ADFContext.getMDSInstanceAsObject(ADFContext.java:1790)
at oracle.adf.share.http.ServletADFContext.initialize(ServletADFContext.java:493)
at oracle.adf.share.http.ServletADFContext.initThreadContext(ServletADFContext.java:400)
at oracle.adf.mbean.share.connection.ADFConnectionLifeCycleCallBack.contextInitialized(ADFConnectionLifeCycleCallBack.java:71)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1868)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3154)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1518)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:484)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:671)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:44)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:149)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused By: oracle.ias.cache.CacheConfigParsingException: file=/usr/local/Oracle/Middleware/user_projects/domains/arkin_domain/config/fmwconfig/servers/AdminServer/javacache.xml, java.io.FileNotFoundException: /usr/local/Oracle/Middleware/user_projects/domains/arkin_domain/config/fmwconfig/servers/AdminServer/javacache.xml (No such file or directory)
please let me know, how to resolve this issue.Filters are configured as follows in the web.xml:
<filter>
<filter-name>JpsFilter</filter-name>
<filter-class>oracle.security.jps.ee.http.JpsFilter</filter-class>
<init-param>
<param-name>enable.anonymous</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter>
<filter-name>trinidad</filter-name>
<filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
</filter>
<filter>
<filter-name>adfBindings</filter-name>
<filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>JpsFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>trinidad</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>adfBindings</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping> -
ADF Taskflows tutorial - Issue
Hello, I am following tutorial at below URL to learn ADF Task flows...
http://www.oracle.com/technetwork/developer-tools/jdev/ccset22-all-099343.html
I followed all the steps as it is provided and I am struck at step "Run the Application --> Step 7" ... When I create a new order the application fails to save the data and give Error 404 page.
JDeveloper version 11.1.2.1.0. No error message in Jdev console to troubleshoot further.
Thanks in advance for your time and assistance
-Vagic.Hi Timo,
Yes thats right. The error is when I hit save button. I verified once again in property inspector for the "Save" button. The action is set to "save".
Also, the "Save" button is created by drag and dropping "Commit" operation under Data control operations.
I also noticed "#{bindings.Commit.execute}" is already populated in "ActionListener" property.
Regarding hollows on orders-flow task flow... a green hollow on "browseOrders" and gray hollow on "task return".
I re-ran the application and the issue persists... I guess I missed to update the below
1. The changes/updates on existing order were saved successfully.. it is the re-direction failing with 404 error message.
2. Click on "New Order" button brings to edit page with "Order Id" as "-2"; however the OrderId attribute is set as "DBSequence" and sequence name "ORDERS_SEQ" was set.
Thanks, Praveen.
Edited by: Vagic on Mar 30, 2012 12:36 PM -
View links in oracle ADF/query featching from Database
Please any one help for this query
I have two tables Emp, Dept
I have query like this select * from Emp e, Dept d where e.deptno=d.deptno
Query is fetching like this
Empno Ename job Salary Comm deptno deptno dname Loc
15 i1 support 50000 11 5 5 IT sss
15 i1 support 50000 11 3 3 Account sss
16 i2 support 8000 10 5 5 IT sss
16 i2 support 8000 10 3 3 Account sss
16 i2 support 8000 10 3 3 Software sss
16 i2 support 8000 10 4 4 Operation sss
Query is fetching 6 rows.
but my requirement is what ever records fetching from database with same employee number is one record that is same employee number dept names grouped I will show it as one record how to fetch records from data base.
Here is the example (My Requirement):
This is first row:
Empno Ename job Salary Comm
15 i1 support 50000 11
Deptno dname Loc
5 IT sss
3 Account sss
This is second row:
Empno ename job Salary Comm
16 i2 support 8000 10
Deptno dname Loc
5 IT sss
3 Account sss
2 Software sss
4 Operation sss
i am useing oracle ADF if any possibility in view links either i get from the query as i mentioned.
plz any one can help
thanksPlease any one help for this query
I have two tables Emp, Dept
I have query like this select * from Emp e, Dept d where e.deptno=d.deptno
Query is fetching like this
Empno Ename job Salary Comm deptno deptno dname Loc
15 i1 support 50000 11 5 5 IT sss
15 i1 support 50000 11 3 3 Account sss
16 i2 support 8000 10 5 5 IT sss
16 i2 support 8000 10 3 3 Account sss
16 i2 support 8000 10 3 3 Software sss
16 i2 support 8000 10 4 4 Operation sss
Query is fetching 6 rows.
but my requirement is what ever records fetching from database with same employee number is one record that is same employee number dept names grouped I will show it as one record how to fetch records from data base.
Here is the example (My Requirement):
This is first row:
Empno Ename job Salary Comm
15 i1 support 50000 11
Deptno dname Loc
5 IT sss
3 Account sss
This is second row:
Empno ename job Salary Comm
16 i2 support 8000 10
Deptno dname Loc
5 IT sss
3 Account sss
2 Software sss
4 Operation sss
i am useing oracle ADF if any possibility in view links either i get from the query as i mentioned.
plz any one can help
thanks -
Ldap Synch Error in attribute conversion operation Issue in OIM 11g R2 PS1
Hi All,
We have enabled LDAP Synch in OIM11g R2 PS1 environment. We have requirement of users getting created through Web Services. When we create a user through Webservices, and provide all the attributes required to create user then we are getting LDAP Error in attribute conversion operation:
2014-01-03T02:31:52.249-05:00] [oim_server1] [WARNING] [] [oracle.adf.controller.faces.lifecycle.Utils] [tid: [ACTIVE].ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: xelsysadm] [ecid: 1353004b0df87234:-67081615:143517a89d1:-8000-0000000000002807,0] [APP: oracle.iam.console.identity.self-service.ear#V2.0] ADF: Adding the following JSF error message: IAM-2050243 : Orchestration process with id 9864, failed with error message IAM-3010201 : LDAP create event failed : 00000057: LdapErr: DSID-0C090C3E, comment: Error in attribute conversion operation, data 0, v1db1.[[
oracle.iam.ui.platform.exception.OIMRuntimeException: IAM-2050243 : Orchestration process with id 9864, failed with error message IAM-3010201 : LDAP create event failed : 00000057: LdapErr: DSID-0C090C3E, comment: Error in attribute conversion operation, data 0, v1db1.
at oracle.iam.ui.platform.exception.OIMErrorHandler.reportServiceException(OIMErrorHandler.java:170)
at oracle.iam.ui.platform.exception.OIMErrorHandler.reportException(OIMErrorHandler.java:65)
at oracle.adf.model.binding.DCDataControl.reportException(DCDataControl.java:411)
at oracle.adf.model.binding.DCBindingContainer.reportException(DCBindingContainer.java:416)
at oracle.adf.model.binding.DCBindingContainer.reportException(DCBindingContainer.java:471)
at oracle.adf.model.binding.DCControlBinding.reportException(DCControlBinding.java:201)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.reportException(JUCtrlActionBinding.java:2016)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1660)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2150)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:740)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:402)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:252)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:210)
at oracle.iam.ui.platform.utils.FacesUtils.executeOperationBinding(FacesUtils.java:165)
at oracle.iam.ui.platform.utils.FacesUtils.executeOperationBindingFromActionListener(FacesUtils.java:112)
at oracle.iam.ui.catalog.view.backing.CartReqBean.submitActionListener(CartReqBean.java:848)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1256)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1018)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:386)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.view.page.editor.webapp.WebCenterComposerFilter.doFilter(WebCenterComposerFilter.java:117)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.help.web.rich.OHWFilter.doFilter(Unknown Source)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.iam.ui.platform.servletfilter.IdentityContextFilter.doFilter(IdentityContextFilter.java:50)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.iam.platform.servletfilter.PwdMgmtNavigationFilter.doFilter(PwdMgmtNavigationFilter.java:164)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.bpel.services.workflow.client.worklist.util.WorkflowFilter.doFilter(WorkflowFilter.java:248)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.bpel.services.workflow.client.worklist.util.DisableUrlSessionFilter.doFilter(DisableUrlSessionFilter.java:70)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
In this case user is getting created in OIM but LDAP Synch is not happening we are getting the error as mentioned above.
When we create user in OIM not through Web Serives but through Identity Self Service and provide any date attribute for example Start Date,Provisoning Date, Deprovisoning Date or any other date attribute, then also we are geeting the same error of Error in attribute conversion operation Issue, in this case user is not getting created in OIM and LDAP Synch is not happening.
And when we create a user in OIM not through Web Serives but through Identity Self Service and did not give any of the date attribute then user is getting created and LDAP synch is also happening successfully.
We need to create users through Web Services and we need to resolve this issue asap, request you all to provide any helpful pointer on this.
Thanks
VarshaThis can happen due to OIM-LDAP wrong attribute mapping/value getting passed.
Can you please first try with OOTB attributes and see how it behaves?
J
Maybe you are looking for
-
How to change in NOTIF_CREATE - Create Support Notification
Hi I want to add the following thing in the NOTIF_CREATE 1. Person Responsible-when i use to create message in notif_create my name is not appeared in the F4(I have tried in IMG-Service desk-BP ,but my name is not appeared there) 2.How to create new
-
"There was an error processing a page. Out of memory." Adobe Acrobat 9 Pro I had this problem with my last computer over two years ago which was obviously an older version of windows and acrobat and had found a way to solve it but like I said it was
-
Screen sharing and dual displays
Hi, i added a second display on an iMac and often screen share using my MacBook but since adding the second screen i've had issues screen sharing. It will briefly show both the iMac's displays on my MacBook but then cut out with "connection lost", th
-
How to avoid output file and error lines when condition does not match
Hi Experts A customer want to send purchase order files to several vendors and each vendor has their own requirement to content and file format. I have prepared scenarios for each vendor and a template is (conditionally) called when CardCode matches.
-
Hi I have a few olld apples and the latest is a G4 400. Can I replace the cpu board with a higher one . If so what can I add . Would it be possible to add a Dual cpu board ? Joe