ADF BC problem

Hi,
I just got the Oracle Jdeveloper 10g Handbook by Oracle Press. When trying the first example I run into some problem. I am supposed to create a JSP page based on ADF BC. The problem is I cant find the wizard for setting up this. The book says I should find business components under the project technologies when choosing a new gallery.
Is there some thing I have to do to enable ADF BC. I'm using developer preview 10.1.3.
Please help
/Stefan

The book is about the production version of Oracle JDeveloper which is 10.1.2. - the 10.1.3 version you are using is still not in production, and the preview that you have doesn't have the ADF BC parts in it.
So download 10.1.2 from http://otn.oracle.com/products/jdev

Similar Messages

  • ADF Tutorial: problem with chapter 10 (Deploying the Application)

    Hi!
    I'm learning from ADF Tutorial (http://www.oracle.com/technology/obe/ADFBC_tutorial_1013/index.htm) and I have problem with chapter 10. After deploying finished application on the server (OracleAS10g) I try to test it but I get this error everytime:
    500 Internal Server Error
    Servlet error: An exception occured. The current application deployment descriptors do not allow for including it in this response. Please consult the application log for details.
    I get this error after typing login credentials. I didn't consult the log, because I don't know where to look for it (could you tell me please?). I did everything as described in the Tutorial, but I know there are mistakes (in Tutorial), so I don't know what to do.
    Thanks for any advices.

    Hi,
    I'm running Windows XP, JDeveloper version 10.1.3.4.0, Oracle AS 10g version 10.1.3.4.0 with patch. When I tried to deploy same application on Windows Vista and OC4J, it work perfectly, which really confuses me. I think I found log file so I will post it here. It's long, I'm sorry about that:
    09/01/23 16:07:07.62 SRTutorial: Servlet error
    JBO-30003: Fond aplikace (oracle.srtutorial.datamodel.SRPublicServiceLocal) selhal při odhlášení modulu aplikace z důvodu následující výjimky:
    oracle.jbo.JboException: JBO-29000: JBO-29000: Bad version number in .class file
         Neplatná třída: oracle.srtutorial.datamodel.SRPublicServiceImpl
         Zavaděč: SRTutorial.web.SRTutorial:0.0.0
         Code-Source: /C:/OracleAS/j2ee/home/applications/SRTutorial/SRTutorial/WEB-INF/classes/
         Konfigurace: WEB-INF/classes/ in C:\OracleAS\j2ee\home\applications\SRTutorial\SRTutorial\WEB-INF\classes
         Závislá třída: oracle.jbo.common.java2.JDK2ClassLoader
         Zavaděč: adf.oracle.domain:10.1.3.1
         Code-Source: /C:/OracleAS/BC4J/lib/adfm.jar
         Konfigurace: <code-source> in /C:/OracleAS/j2ee/home/config/server.xml
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:2002)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:2793)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:453)
         at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule(HttpSessionCookieImpl.java:233)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:424)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:419)
         at oracle.adf.model.bc4j.DCJboDataControl.rebuildApplicationModule(DCJboDataControl.java:1517)
         at oracle.adf.model.bc4j.DCJboDataControl.beginRequest(DCJboDataControl.java:1381)
         at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:99)
         at oracle.adf.model.BindingContext.get(BindingContext.java:457)
         at oracle.adf.model.binding.DCUtil.findSpelObject(DCUtil.java:280)
         at oracle.adf.model.binding.DCUtil.findSpelObject(DCUtil.java:248)
         at oracle.adf.model.binding.DCUtil.findContextObject(DCUtil.java:383)
         at oracle.adf.model.binding.DCIteratorBinding.<init>(DCIteratorBinding.java:127)
         at oracle.jbo.uicli.binding.JUIteratorBinding.<init>(JUIteratorBinding.java:60)
         at oracle.jbo.uicli.binding.JUIteratorDef.createIterBinding(JUIteratorDef.java:87)
         at oracle.jbo.uicli.binding.JUIteratorDef.createIterBinding(JUIteratorDef.java:51)
         at oracle.adf.model.binding.DCIteratorBindingDef.createExecutableBinding(DCIteratorBindingDef.java:277)
         at oracle.adf.model.binding.DCBindingContainerDef.createExecutables(DCBindingContainerDef.java:296)
         at oracle.adf.model.binding.DCBindingContainerDef.createBindingContainer(DCBindingContainerDef.java:425)
         at oracle.adf.model.binding.DCBindingContainerReference.createBindingContainer(DCBindingContainerReference.java:54)
         at oracle.adf.model.binding.DCBindingContainerReference.getBindingContainer(DCBindingContainerReference.java:44)
         at oracle.adf.model.BindingContext.get(BindingContext.java:483)
         at oracle.adf.model.BindingContext.findBindingContainer(BindingContext.java:313)
         at oracle.adf.model.BindingContext.findBindingContainerByPath(BindingContext.java:633)
         at oracle.adf.model.BindingRequestHandler.isPageViewable(BindingRequestHandler.java:268)
         at oracle.adf.model.BindingRequestHandler.beginRequest(BindingRequestHandler.java:169)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:161)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    ## Detail 0 ##
    oracle.jbo.JboException: JBO-29000: Bad version number in .class file
         Neplatná třída: oracle.srtutorial.datamodel.SRPublicServiceImpl
         Zavaděč: SRTutorial.web.SRTutorial:0.0.0
         Code-Source: /C:/OracleAS/j2ee/home/applications/SRTutorial/SRTutorial/WEB-INF/classes/
         Konfigurace: WEB-INF/classes/ in C:\OracleAS\j2ee\home\applications\SRTutorial\SRTutorial\WEB-INF\classes
         Závislá třída: oracle.jbo.common.java2.JDK2ClassLoader
         Zavaděč: adf.oracle.domain:10.1.3.1
         Code-Source: /C:/OracleAS/BC4J/lib/adfm.jar
         Konfigurace: <code-source> in /C:/OracleAS/j2ee/home/config/server.xml
         at oracle.jbo.pool.ResourcePool.createResource(ResourcePool.java:545)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2094)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:1961)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:2793)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:453)
         at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule(HttpSessionCookieImpl.java:233)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:424)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:419)
         at oracle.adf.model.bc4j.DCJboDataControl.rebuildApplicationModule(DCJboDataControl.java:1517)
         at oracle.adf.model.bc4j.DCJboDataControl.beginRequest(DCJboDataControl.java:1381)
         at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:99)
         at oracle.adf.model.BindingContext.get(BindingContext.java:457)
         at oracle.adf.model.binding.DCUtil.findSpelObject(DCUtil.java:280)
         at oracle.adf.model.binding.DCUtil.findSpelObject(DCUtil.java:248)
         at oracle.adf.model.binding.DCUtil.findContextObject(DCUtil.java:383)
         at oracle.adf.model.binding.DCIteratorBinding.<init>(DCIteratorBinding.java:127)
         at oracle.jbo.uicli.binding.JUIteratorBinding.<init>(JUIteratorBinding.java:60)
         at oracle.jbo.uicli.binding.JUIteratorDef.createIterBinding(JUIteratorDef.java:87)
         at oracle.jbo.uicli.binding.JUIteratorDef.createIterBinding(JUIteratorDef.java:51)
         at oracle.adf.model.binding.DCIteratorBindingDef.createExecutableBinding(DCIteratorBindingDef.java:277)
         at oracle.adf.model.binding.DCBindingContainerDef.createExecutables(DCBindingContainerDef.java:296)
         at oracle.adf.model.binding.DCBindingContainerDef.createBindingContainer(DCBindingContainerDef.java:425)
         at oracle.adf.model.binding.DCBindingContainerReference.createBindingContainer(DCBindingContainerReference.java:54)
         at oracle.adf.model.binding.DCBindingContainerReference.getBindingContainer(DCBindingContainerReference.java:44)
         at oracle.adf.model.BindingContext.get(BindingContext.java:483)
         at oracle.adf.model.BindingContext.findBindingContainer(BindingContext.java:313)
         at oracle.adf.model.BindingContext.findBindingContainerByPath(BindingContext.java:633)
         at oracle.adf.model.BindingRequestHandler.isPageViewable(BindingRequestHandler.java:268)
         at oracle.adf.model.BindingRequestHandler.beginRequest(BindingRequestHandler.java:169)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:161)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    ## Detail 0 ##
    oracle.classloader.util.AnnotatedClassFormatError: Bad version number in .class file
         Neplatná třída: oracle.srtutorial.datamodel.SRPublicServiceImpl
         Zavaděč: SRTutorial.web.SRTutorial:0.0.0
         Code-Source: /C:/OracleAS/j2ee/home/applications/SRTutorial/SRTutorial/WEB-INF/classes/
         Konfigurace: WEB-INF/classes/ in C:\OracleAS\j2ee\home\applications\SRTutorial\SRTutorial\WEB-INF\classes
         Závislá třída: oracle.jbo.common.java2.JDK2ClassLoader
         Zavaděč: adf.oracle.domain:10.1.3.1
         Code-Source: /C:/OracleAS/BC4J/lib/adfm.jar
         Konfigurace: <code-source> in /C:/OracleAS/j2ee/home/config/server.xml
         at oracle.classloader.PolicyClassLoader.findLocalClass (PolicyClassLoader.java:1462) [C:/OracleAS/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@12700959]
         at oracle.classloader.SearchPolicy$FindLocal.getClass (SearchPolicy.java:167) [C:/OracleAS/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@12700959]
         at oracle.classloader.SearchSequence.getClass (SearchSequence.java:119) [C:/OracleAS/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@12700959]
         at oracle.classloader.PolicyClassLoader.internalLoadClass (PolicyClassLoader.java:1674) [C:/OracleAS/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@12700959]
         at oracle.classloader.PolicyClassLoader.loadClass (PolicyClassLoader.java:1635) [C:/OracleAS/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@12700959]
         at oracle.classloader.PolicyClassLoader.loadClass (PolicyClassLoader.java:1620) [C:/OracleAS/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@12700959]
         at java.lang.ClassLoader.loadClassInternal (ClassLoader.java:319) [jre bootstrap, by jre.bootstrap:1.5.0_06]
         at java.lang.Class.forName0 (Native method) [unknown, by unknown]
         at java.lang.Class.forName (Class.java:242) [jre bootstrap, by jre.bootstrap:1.5.0_06]
         at oracle.jbo.common.java2.JDK2ClassLoader.loadClassForName (JDK2ClassLoader.java:38) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.JBOClass.forName (JBOClass.java:164) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.JBOClass.findCustomClass (JBOClass.java:177) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.ApplicationModuleDefImpl.loadFromXML (ApplicationModuleDefImpl.java:836) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.ApplicationModuleDefImpl.loadFromXML (ApplicationModuleDefImpl.java:770) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.MetaObjectManager.loadFromXML (MetaObjectManager.java:534) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.mom.DefinitionManager.loadLazyDefinitionObject (DefinitionManager.java:579) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.mom.DefinitionManager.findDefinitionObject (DefinitionManager.java:441) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.mom.DefinitionManager.findDefinitionObject (DefinitionManager.java:374) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.mom.DefinitionManager.findDefinitionObject (DefinitionManager.java:356) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.MetaObjectManager.findMetaObject (MetaObjectManager.java:700) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.ApplicationModuleDefImpl.findDefObject (ApplicationModuleDefImpl.java:232) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.ApplicationModuleImpl.createRootApplicationModule (ApplicationModuleImpl.java:401) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.server.ApplicationModuleHomeImpl.create (ApplicationModuleHomeImpl.java:91) [C:/OracleAS/BC4J/lib/bc4jmt.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.DefaultConnectionStrategy.createApplicationModule (DefaultConnectionStrategy.java:139) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.DefaultConnectionStrategy.createApplicationModule (DefaultConnectionStrategy.java:80) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.ApplicationPoolImpl.instantiateResource (ApplicationPoolImpl.java:2468) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.pool.ResourcePool.createResource (ResourcePool.java:536) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule (ApplicationPoolImpl.java:2094) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout (ApplicationPoolImpl.java:1961) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule (ApplicationPoolImpl.java:2793) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule (SessionCookieImpl.java:453) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule (HttpSessionCookieImpl.java:233) [C:/OracleAS/BC4J/lib/adfmweb.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule (SessionCookieImpl.java:424) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule (SessionCookieImpl.java:419) [C:/OracleAS/BC4J/lib/bc4jct.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.bc4j.DCJboDataControl.rebuildApplicationModule (DCJboDataControl.java:1517) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.bc4j.DCJboDataControl.beginRequest (DCJboDataControl.java:1381) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCDataControlReference.getDataControl (DCDataControlReference.java:99) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.BindingContext.get (BindingContext.java:457) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCUtil.findSpelObject (DCUtil.java:280) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCUtil.findSpelObject (DCUtil.java:248) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCUtil.findContextObject (DCUtil.java:383) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCIteratorBinding.<init> (DCIteratorBinding.java:127) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.uicli.binding.JUIteratorBinding.<init> (JUIteratorBinding.java:60) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.uicli.binding.JUIteratorDef.createIterBinding (JUIteratorDef.java:87) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.jbo.uicli.binding.JUIteratorDef.createIterBinding (JUIteratorDef.java:51) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCIteratorBindingDef.createExecutableBinding (DCIteratorBindingDef.java:277) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCBindingContainerDef.createExecutables (DCBindingContainerDef.java:296) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCBindingContainerDef.createBindingContainer (DCBindingContainerDef.java:425) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCBindingContainerReference.createBindingContainer (DCBindingContainerReference.java:54) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.binding.DCBindingContainerReference.getBindingContainer (DCBindingContainerReference.java:44) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.BindingContext.get (BindingContext.java:483) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.BindingContext.findBindingContainer (BindingContext.java:313) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.BindingContext.findBindingContainerByPath (BindingContext.java:633) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.BindingRequestHandler.isPageViewable (BindingRequestHandler.java:268) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.BindingRequestHandler.beginRequest (BindingRequestHandler.java:169) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter (ADFBindingFilter.java:161) [C:/OracleAS/BC4J/lib/adfm.jar (from <code-source> in /C:/OracleAS/j2ee/home/config/server.xml), by adf.oracle.domain:10.1.3.1]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke (ServletRequestDispatcher.java:621) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal (ServletRequestDispatcher.java:370) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest (HttpRequestHandler.java:871) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest (HttpRequestHandler.java:453) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest (HttpRequestHandler.java:221) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run (HttpRequestHandler.java:122) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run (HttpRequestHandler.java:111) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run (ServerSocketReadHandler.java:260) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run (ReleasableResourcePooledExecutor.java:303) [C:/OracleAS/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\OracleAS\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at java.lang.Thread.run (Thread.java:595) [jre bootstrap, by jre.bootstrap:1.5.0_06]

  • ADF Javascript problem: cannot get id of an component

    hi, am currently reading and executing examples from ADF faces Web UI Developers Guide for jdeveloper 11g.
    i am trying to execute example 3-7
    I have a <af:commandButton> component , whose id i want to display in an alert box.
    However i am unable to display it
    here is the sample code i made up:
    <f:view>
    <af:document title="hello from component" >
    <af:form >
    <af:commandButton text="show id" id="cmdbutton">
    <af:clientListener method="sayHello" type="action"/>
    </af:commandButton>
    </af:form>
    <f:facet name="metaContainer">
    <trh:script>
    <f:verbatim>
    function sayHello(actionEvent)
    var component= actionEvent.getSource();
    //Get the ID for the component
    var id = component.getId ;
    alert("Hello from " + id);
    </f:verbatim>
    </trh:script>
    </f:facet>
    </af:document>
    </f:view>
    Problem 1: when i run it, the alert box displays: Hello from undefined . i was expecting Hello from cmdButton
    Problem 2: in the line var id = component.getId, if i modify it as var id = component.getId() (just added the parentheses after method getId)
    no alert box is displayed. in javascript when a method accepts no parameters, its ok to call it with or without parentheses. why no alert
    box displayed when i add parentheses to getId.

    in javascript calling a method with or without parentheses is OK , then why the alert box in one case and no alert box in another?
    Because your assumption is wrong. Calling a function can only be done with the parenthesis. When you're not using them then you get a pointer on the function. For example:
    MyNamespace = new Object();
    MyNamespace.myUtilFunction = function()
        return "Hello world";
    alert(MyNamespace.myUtilFunction);
    alert(MyNamespace.myUtilFunction());The first alert will show something like
    "function()
    return "Hello world";
    While the second will print "Hello world". Furthermore, if a function does not exists, like "MyNamespace.myUnexistingFunction" then the first alert would show "undefined" while the second would never even pop as there would be an "MyNamespace.myUnexistingFunction is undefined" error. Consequently, if the alert is not showing with the parenthesis then I guess getId is not a valid function on UIComponent which is possible, I assumed there would be one because there's an id property, but then again, that id would not be very useful on the client side compared to the client id.
    Regards,
    ~ Simon

  • ADF Login problem

    Hi,
    I have implemented ADF Security along with a login bean and a home managed bean according to Frank Nimphius's article in the Oracle Magazine.
    Problems:
    1. In design view the login link is visible, but not in the browser (Firefox vers. 19).
    2. Only the logout link is visible
    3. When trying to logout the current page only refreshes
    Login bean
    package demo.view;
    import java.io.IOException;
    import java.util.Map;
    import javax.faces.application.FacesMessage;
    import javax.faces.context.ExternalContext;
    import javax.faces.context.FacesContext;
    import javax.security.auth.Subject;
    import javax.security.auth.callback.CallbackHandler;
    import javax.security.auth.login.FailedLoginException;
    import javax.security.auth.login.LoginException;
    import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import oracle.adf.share.ADFContext;
    import oracle.adf.view.rich.event.DialogEvent;
    import weblogic.security.SimpleCallbackHandler;
    import weblogic.security.URLCallbackHandler;
    import weblogic.security.services.Authentication;
    import weblogic.servlet.security.ServletAuthentication;
    public class LoginBean {
        String _username = null;
        String _password = null;
        public static String USERNAMETOKEN = "_____demoOnlyUsernameAttrString___________";
        public static String PASSWORDTOKEN = "_____demoOnlyPasswordAttrString___________";
        public LoginBean() {
            super();
        public void setUsername(String _username) {
            this._username = _username;
        public String getUsername() {
            return _username;
        public void setPassword(String _password) {
            this._password = _password;
        public String getPassword() {
            return _password;
      public void onLoginAction(DialogEvent dialogEvent) {
          if (dialogEvent.getOutcome()== DialogEvent.Outcome.ok ){
            doLogin();
          else{
            //cancel, do nothing
      private String doLogin() {
          String un = _username;
          byte[] pw = _password.getBytes();
          FacesContext ctx = FacesContext.getCurrentInstance();
          HttpServletRequest request = (HttpServletRequest)ctx.getExternalContext().getRequest();
          try {         
              CallbackHandler handler = new URLCallbackHandler(un,pw);
              Subject mySubject = weblogic.security.services.Authentication.login(handler);
              weblogic.servlet.security.ServletAuthentication.runAs(mySubject, request);
              ServletAuthentication.generateNewSessionID(request);
              //save username and password. Note that in a real application this is
              //*NOT* what you should do unencrypted. Note that this is a demo
              //Store username , password in session for later use
              //when connecting to Twitter
              ADFContext adfctx = ADFContext.getCurrent();
              Map sessionScope = adfctx.getSessionScope();
              sessionScope.put(this.USERNAMETOKEN, un);
              sessionScope.put(this.PASSWORDTOKEN, new String(pw));
                String loginUrl;
                loginUrl = "/adfAuthentication?success_url=/faces" + ctx.getViewRoot().getViewId();
              HttpServletResponse response = (HttpServletResponse)ctx.getExternalContext().getResponse();
              sendForward(request, response, loginUrl);
          } catch (FailedLoginException fle) {
              FacesMessage msg =
                  new FacesMessage(FacesMessage.SEVERITY_ERROR, "Incorrect Username or Password",
                                   "An incorrect Username or Password" +
                                   " was specified");
              ctx.addMessage("d2:it35", msg);
          } catch (LoginException le) {
              reportUnexpectedLoginError("LoginException", le);
          return null;
      private void sendForward(HttpServletRequest request,
                               HttpServletResponse response, String forwardUrl) {
          FacesContext ctx = FacesContext.getCurrentInstance();
          RequestDispatcher dispatcher = request.getRequestDispatcher(forwardUrl);
          try {
              dispatcher.forward(request, response);
          } catch (ServletException se) {
              reportUnexpectedLoginError("ServletException", se);
          } catch (IOException ie) {
              reportUnexpectedLoginError("IOException", ie);
          ctx.responseComplete();
      private void reportUnexpectedLoginError(String errType, Exception e) {
          FacesMessage msg =
              new FacesMessage(FacesMessage.SEVERITY_ERROR, "Unexpected error during login",
                               "Unexpected error during login (" + errType +
                               "), please consult logs for detail");
          FacesContext.getCurrentInstance().addMessage("d2:it35", msg);
          e.printStackTrace();
        public String logout() {
            FacesContext ctx = FacesContext.getCurrentInstance(); 
            ExternalContext ectx = ctx.getExternalContext();
            String logoutUrl = "faces" + ctx.getViewRoot().getViewId();
            ((HttpServletRequest)ectx.getRequest()).getSession().invalidate();
            try {
                ectx.redirect(logoutUrl);
            } catch (IOException e) {
                e.printStackTrace();
            return null;
    }Home managed bean
    package demo.view;
    import java.io.IOException;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Map;
    import javax.el.ELContext;
    import javax.el.ExpressionFactory;
    import javax.el.ValueExpression;
    import javax.faces.context.ExternalContext;
    import javax.faces.context.FacesContext;
    import javax.faces.event.ActionEvent;
    import oracle.adf.model.binding.DCIteratorBinding;
    import oracle.adf.view.rich.component.rich.RichPopup;
    import oracle.adf.view.rich.component.rich.data.RichTree;
    import oracle.adf.view.rich.component.rich.layout.RichPanelGroupLayout;
    import oracle.adf.view.rich.component.rich.nav.RichCommandImageLink;
    import oracle.adf.view.rich.context.AdfFacesContext;
    import oracle.jbo.Key;
    import oracle.jbo.uicli.binding.JUCtrlHierBinding;
    import oracle.jbo.uicli.binding.JUCtrlHierNodeBinding;
    import oracle.jbo.uicli.binding.JUCtrlHierTypeBinding;
    import oracle.jbo.uicli.binding.JUIteratorBinding;
    import org.apache.myfaces.trinidad.component.UIXSwitcher;
    import org.apache.myfaces.trinidad.event.SelectionEvent;
    import org.apache.myfaces.trinidad.model.CollectionModel;
    import org.apache.myfaces.trinidad.model.RowKeySet;
    public class HomeManagedBean {
        private RichTree locationsTree;
        private UIXSwitcher formSwitcher;
        private RichPanelGroupLayout formPanelGroup;
        private RichPopup popupP1;
        public HomeManagedBean() {
        public void setLocationsTree(RichTree locationsTree) {
            this.locationsTree = locationsTree;
        public RichTree getLocationsTree() {
            return locationsTree;
       * Custom managed bean method that takes a SelectEvent input argument to generically
       * set the current row corresponding to the selected row in the tree. Note that this
       * method is a way to replace the "makeCurrent" EL expression (#{bindings.<tree binding>.
       * treeModel.makeCurrent}that Oracle JDeveloper adds to the tree component SelectionListener
       * property when dragging a collection from the Data Controls panel. Using this custom
       * selection listener allows developers to add pre- and post processing instructions. For
       * example, you may want to enforce PPR on a specific item after a new tree node has been
       * selected. This methods performs the following steps
       * i.   get access to the tree component
       * ii.  get access to the ADF tree binding
       * iii. set the current row on the ADF binding
       * iv.  get the information about target iterators to synchronize
       * v.   synchronize target iterator
       * @param selectionEvent object passed in by ADF Faces when configuring this method to
       * become the selection listener
       * @author Frank Nimphius
      public void onTreeSelect(SelectionEvent selectionEvent) {
        /* REPLACES */
        //#{bindings.allLocations.treeModel.makeCurrent}
       /* custom pre processing goes here */
      //get the tree information from the event object
      RichTree tree1 = (RichTree) selectionEvent.getSource();
      //in a single selection case ( a setting on the tree component ) the added set only
      //has a single entry. If there are more then using this method may not be desirable.
      //Implicitly we turn the multi select in a single select later, ignoring all set
      //entries than the first
      RowKeySet rks2 = selectionEvent.getAddedSet();
      //iterate over the contained keys. Though for a single selection use case we only expect
      //one entry in here
      Iterator rksIterator = rks2.iterator();
      //support single row selection case
      if (rksIterator.hasNext()){
        //get the tree node key, which is a List of path entries describing the
        //location of the node in the tree including its parents nodes
        List key = (List)rksIterator.next();
       //get the ADF tree  binding to work with
        JUCtrlHierBinding treeBinding = null;
        //The Trinidad CollectionModel is used to provide data to trees and tables. In the
        //ADF binding case, it contains the tree binding as wrapped data
        treeBinding = (JUCtrlHierBinding) ((CollectionModel)tree1.getValue()).getWrappedData();
        //find the node identified by the node path from the ADF binding layer. Note that
        //we don't need to know about the name of the tree binding in the PageDef file because
        //all information is provided
        JUCtrlHierNodeBinding nodeBinding = nodeBinding = treeBinding.findNodeByKeyPath(key);
        //the current row is set on the iterator binding. Because all bindings have an internal
        //reference to their iterator usage, the iterator can be queried from the ADF binding
        //object
        DCIteratorBinding _treeIteratorBinding = null;
        _treeIteratorBinding = treeBinding.getDCIteratorBinding();
        Key rowKey = nodeBinding.getRowKey();
        JUIteratorBinding iterator = nodeBinding.getIteratorBinding();
        iterator.setCurrentRowWithKey(rowKey.toStringFormat(true));
        //get selected node type information
        JUCtrlHierTypeBinding typeBinding =  nodeBinding.getHierTypeBinding();
        // The tree node rule may have a target iterator defined. Target iterators are
        // configured using the Target Data Source entry in the tree node edit dialog
        // and allow developers to declaratively synchronize an independent iterator
        // binding with the node selection in the tree.
        String targetIteratorSpelString = typeBinding.getTargetIterator();     
        //chances are that the target iterator option is not configured. We avoid
        //NPE by checking this condition
        if (targetIteratorSpelString != null && !targetIteratorSpelString.isEmpty()) {
          //resolve SPEL string for target iterator
          DCIteratorBinding targetIterator = resolveTargetIterWithSpel(targetIteratorSpelString);
          //synchronize the row in the target iterator
          targetIterator.setCurrentRowWithKey(rowKey.toStringFormat(true));
        /********************* DISPLAY INPUT FORM FOR SELECTED NODE **********************/
        //get the name of the selectected tree node object. In this sample the value is
        //adf.sample.model.DepartmentsView,adf.sample.model.EmployeesView or
        //adf.sample.model.LocationsView
        String selectedNodeObjectRef = typeBinding.getStructureDefName();
        //write selected node object reference to session
        AdfFacesContext adfFacesCtx = AdfFacesContext.getCurrentInstance();
        Map viewScope = adfFacesCtx.getViewScope();
        viewScope.put("nodeRef",selectedNodeObjectRef);
        //refresh form display
        adfFacesCtx.addPartialTarget(this.getFormPanelGroup());
       * Helper method to resolve EL expression into DCIteratorBinding instance
       * @param spelExpr the SPEL expression starting with ${...}
       * @return DCIteratorBinding instance
      private DCIteratorBinding resolveTargetIterWithSpel(String spelExpr){
       FacesContext fctx = FacesContext.getCurrentInstance();
       ELContext elctx = fctx.getELContext();
       ExpressionFactory elFactory = fctx.getApplication().getExpressionFactory();
       ValueExpression valueExpr = elFactory.createValueExpression(elctx, spelExpr,Object.class);
       DCIteratorBinding dciter = (DCIteratorBinding) valueExpr.getValue(elctx);  
       return dciter;
        public void setFormPanelGroup(RichPanelGroupLayout formPanelGroup) {
            this.formPanelGroup = formPanelGroup;
        public RichPanelGroupLayout getFormPanelGroup() {
            return formPanelGroup;
        //based on the current state of the login link,
        //log user in or out
        public void onLoginLogout(ActionEvent actionEvent) {
            RichCommandImageLink rcil = (RichCommandImageLink) actionEvent.getComponent();
            String commandLinkIcon = rcil.getIcon();
            if (commandLinkIcon.indexOf("glbl_login_msg.gif") >0){
              //login
              RichPopup.PopupHints hints = new RichPopup.PopupHints();
              popupP1.show(hints);
            else{
              //logout        
              FacesContext fctx = FacesContext.getCurrentInstance();
              ExternalContext ectx = fctx.getExternalContext();
                try {
                    ectx.redirect("/adfAuthentication?logout=true&end_url=/faces/home.jspx");
                } catch (IOException e) {
                    e.printStackTrace();
        public void setPopupP1(RichPopup popupP1) {
            this.popupP1 = popupP1;
        public RichPopup getPopupP1() {
            return popupP1;
    }Source code in home page
    <af:commandImageLink text="Logout" id="commandImageLink1"
                                                              icon="#{resource['images:glbl_logout.gif']}"
                                                         rendered="#{securityContext.authenticated}" partialSubmit="true"
                                                         immediate="false"
                                                              inlineStyle="font-family:Arial, Helvetica, sans-serif; font-size:11px; color:White;"
                                                                 action="#{LoginBean.logout}"/>
                                         <af:commandImageLink text="Login" id="cil1"
                                                              icon="#{resource['images:glbl_login_msg.gif']}"
                                                         rendered="#{!securityContext.authenticated}"
                                                              inlineStyle="font-family:Arial, Helvetica, sans-serif; font-size:11px; color:White;"
                                                              action="#{LoginBean.toString}">
                                        <af:showPopupBehavior popupId="p1" triggerType="action" align="startAfter"
                                                              alignId="cil1"/>
                                    </af:commandImageLink>
                                    <af:popup id="p1" binding="#{HomeManagedBean.popupP1}">
                                        <af:dialog id="d2" title="Please Login" type="okCancel" closeIconVisible="false"
                                                   modal="true" stretchChildren="none"
                                                   dialogListener="#{LoginBean.onLoginAction}">
                                            <af:panelFormLayout id="pfl5">
                                                <af:inputText label="Username" id="it34" columns="20"
                                                              value="#{LoginBean.username}"/>
                                                <af:inputText label="Password" id="it35" secret="true" columns="20"
                                                              value="#{LoginBean.password}"/>
                                                <af:message id="m2" for="it35" messageType="error"/>
                                            </af:panelFormLayout>
                                        </af:dialog>
                                    </af:popup>Other settings:
    1. No welcome page set in web.xml
    2. No redirect page set in jazn-data.xml
    3. Users, Enterprise and application roles set in ADF Security
    4. Managed Beans registered in adfc-config.xml
    Help greatly appreciated!

    Without going through all the code:
    the visibility of the links depends on
    logout:
    rendered="#{securityContext.authenticated}"
    login:
    rendered="#{!securityContext.authenticated}"This means, if you see the logout link, but not the loging link, the framework assumes that you are logged in already.
    Investigate in this direction.
    Timo

  • JDeveloper ADF Faces Problem: Expression language

    Error(): Expression Language not supported in compile time attribute test
    I have followed an ADF Faces example from the Oracle Website. Concerning a database + ADF Faces
    http://www.oracle.com/technology/pub/articles/cioroianu_jsfadf_v4.html
    I followed the tutorial correct but everytime i try to run it. I get following error:
    Error(): Expression Language not supported in compile time attribute test
    It has something to do with following line of code
    <c:if test="${subscriber == null || !subscriber.loggedIn}">
    The error appears on every page where "<c:" appears.
    I have imported the right class library
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
    Does anybody have any idea what i can do?

    Dear Tim,
    What a chance!!! I've got the same problem as you?!
    I've tried almost everything, but still haven't succeeded to solve it!
    Hopefully someone can help us.
    Greetings

  • ADF/JClient problem

    Hi @all,
    I have a problem using bc4j. I have an ADF/JClient application that shows a Master/Detail Log from a database to the user.
    But the connection to the database should by dynamic: With a combo box I select the database to connect to
    and than I want to see the Master/Detail Log.
    Actually, the problem is that the Master/Detail tables (normal JTables with BC4J bindings) do not refresh their views,
    so I ever see the same Matser/Detail Log.
    The connection to the database is established using my own classes MyConnectionStrategy (derived from DefaultConnectionStrategy)
    and MyEnvInfoProvider (derived from DefaultEnvInfoProvider).
    Bootstrap code look like this:
    JUMetaObjectManager.setBaseErrorHandler(new JUErrorHandlerDlg());
    JUMetaObjectManager.getJUMom().setJClientDefFactory(null);
    mCtx = new BindingContext();
    mCtx.put(DataControlFactory.APP_PARAM_ENV_INFO, new MyEnvInfoProvider(mDBConn));
    HashMap map = new HashMap(4);
    map.put(DataControlFactory.APP_PARAMS_BINDING_CONTEXT, mCtx);
    JUMetaObjectManager.loadCpx("DataBindings.cpx", map);
    mDataControl = (DCDataControl)mCtx.get("AppModuleDataControl1");
    mDataControl.setClientApp(DCDataControl.JCLIENT);
    How can I update (refresh, reinitialize, ...) the bindings between my AppMod and the 2 JTables?
    Please help me.
    Thanks in advanced,
    Dorian.

    You may use the 'key' on the row from one VO to find it in another and then set the currency using the found row.

  • ADF Styling Problem,

    Hello everybody ,
    i have a problem styling an ADF Application , i followed this example
    http://technology.amis.nl/blog/5722/using-adf-faces-11g-skinning-for-setting-the-styles-of-specific-component-instances-or-groups-of-instances
    and i created the following Css in my customskin.css
    af|inputText::label
    color:Blue;
    but it doesn't change anything , the labels of the inputtexts are still brown according to blafplus-rich theme of oracle .
    The project doesn't apply the blue color to the labels of the inputText boxes
    Second thing , in the above article the author told that the CSS editor will autocomplete code with you whereas it recognize neither inputText nor Label element . How can i solve this problem too ?
    How can i solve this problem ?
    Please help me urgently !

    Hi,
    Second thing , in the above article the author told that the CSS editor will autocomplete code with you whereas it recognize neither inputText nor Label element . How can i solve this problem too ?
    Tools --> Preferences --> CSS
    Enable ADF CSS
    Frank

  • ADF valuechangeListener Problem

    Hi,
    I am facing problem with ADF selectonechoice valuechangeListener.
    Problem is i have four valuechangeListeners. those are dependent List Boxes. If i perform action on one valuechangeListener all other VC 's also calling. due to this i am facing problems. how to prevent calling other VCs. why it is calling other VCS also. please reply me very urgent
    Thanks
    Jyothi

    Hi,
    a value change listener fires for any value that has been changed in a form (assuming the component has a ValueChangeListener applied). So obviously in your case more than one field has been changed, which shouldn't be the case if autosubmit=true is used
    Frank

  • ADF Table problem !

    hello Oracles;
    i am using the JDev 11 to create an ADF Application, which allows me to display in a ADF table for a Product Table From the DB (using Oracle XE)
    i managed to display the table in the page with a form to make some changes in it.
    BUT the problem is :
    HOW can i save this changes into the DB ?
    and if i want to add or Delete an element too, i want to know how to save the oprations i made into the DB.
    im using a JDBC connection,
    i tried to add the Action attribute in the submit button code, wich is related to a class that manage the DB, but its not working !!!
    thank you in advance;

    okey to make things clear ;
    ive created the application following this Tutorial. but they got the datas from the constructor simply with out DB.
    so i made a JDBC connection with the DB and took the datas and put them in a collection and after that i display them in ADF Table.
    now i want to add some buttons to the form like "add new product"wich gonna add the product in the DB and display it add it too in the ADF table.
    i ve managed to do either adding the product in th DB without displaying it in the adf table or ^displaying it with adding in the DB.
    thank you .

  • ADF cache problem

    Hello,
    I'm developing a web application with an ADF tree accessing to a Content DB repository. When I deploy the application and navigate to the tree everything look fine. The problem occurs, when the content of the repository changed outside of the web application (e.g. a file will be deleted with Oracle drive), the tree doesn't display the changes. The only way to get the right state of the tree, clear the browser cache and reload the page again. In my opinion it looks like a caching problem. Putting the following meta information in the html header also failed!
    <meta http-equiv="pragma" content="no-cache"/>
    <meta http-equiv="expires" content="0"/>
    <meta http-equiv="cache-control" content="no-cache"/>
    Is there a possibility to disable the caching of such ADF components?
    Hope you can help me!
    Thanks,
    Alex

    This will probably help you: http://www.oracle.com/technology/products/ias/web_cache/afc/index.html
    Regards,
    Koen Verhulst

  • ADF CollectionModel problem

    Hi,
    I am using ADF components to build a session object “newRecurringContractAddSessionDTO” from user input, each time the user adds an item the session object will grow by one item.
    I am taking the input from newItemTable RecurringContractLineItemDTO class object
    and adding it to existingItemsTable newRecurringContractAddCollectionModel. recurringContractLineItemDTOModel list.
    the problem is each time I add a new item to the recurringContractLineItemDTOModel list all the items in the recurringContractLineItemDTOModel list change to the same value of the last item I am adding?
    her is the code:
    JSP:
    <cod>
    <af:iterator id="mainIterator" value="#{recurringContractBD.newRecurringContractAddCollectionModel}" var="contracts">
    <af:table id="newItemTable" value="#{contracts.newRecurringContractLineItemDTO}" var="newItem" banding="row">
    </ af:table>
    <af:table id="existingItemsTable" value="#{contracts.recurringContractLineItemDTOModel}" bandingInterval="1" var="items">
    </ af:table>
    </ af:iterator
    </code>
    -- mainIterator is bound to newRecurringContractAddCollectionModel which holds an ArrayList of RecurringContractDTO class object
    -- newItemTable is bound to RecurringContractDTO .RecurringContractLineItemDTO class object
    -- existingItemsTable is bound to newRecurringContractAddCollectionModel. recurringContractLineItemDTOModel which holds an
    ArrayList of RecurringContractDTO .RecurringContractLineItemDTO class object
    <code>
    //==========================================================
    //this method is executed when the user clicks on the add button in the JSP
    //=========================================================
    public String addRecurringContractLineItemToSessionObject() throws Exception
    String addResult = "";
    int updateRecurringContractCollectionModelSelectedRowIndex = -1;
    RecurringContractDTO recurringContractSessionDTO = (RecurringContractDTO) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("newRecurringContractAddSessionDTO");
    //get all contracts listed on the page
    ArrayList recurringContractUpdatedDTOList = (ArrayList) newRecurringContractAddCollectionModel.getWrappedData();
    RecurringContractDTO recurringContractUpdatedDTO = (RecurringContractDTO) recurringContractUpdatedDTOList.get(0);
    //get all line items for selected contract
    ArrayList recurringContractLineItemDTOList = new ArrayList();
    if(recurringContractSessionDTO.getRecurringContractLineItemDTOModel() != null && recurringContractSessionDTO.getRecurringContractLineItemDTOModel().getRowCount() != 0)
    recurringContractLineItemDTOList = (ArrayList) recurringContractSessionDTO.getRecurringContractLineItemDTOModel().getWrappedData();
    //add the new line item to the line item model
    recurringContractLineItemDTOList.add(recurringContractUpdatedDTO.getNewRecurringContractLineItemDTO());
    CollectionModel recurringContractExistingLineItemModel = new SortableModel();
    recurringContractExistingLineItemModel.setWrappedData((Object) recurringContractLineItemDTOList);
    //update the line items of the selected contract
    recurringContractSessionDTO.setRecurringContractLineItemDTOModel(recurringContractExistingLineItemModel);
    recurringContractSessionDTO.setHasLineItems(true);
    FacesContext fc = FacesContext.getCurrentInstance();
    HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
    session.removeAttribute("newRecurringContractAddSessionDTO");
    session.setAttribute("newRecurringContractAddSessionDTO", recurringContractSessionDTO);
    return addResult;
    //=====================================================
    // collection model value is set to the return value of
    // searchRecurringContractSessionObject() which returns
    // the value of the Session variable in an ArrayList
    //====================================================
    public CollectionModel getNewRecurringContractAddCollectionModel()
    try
    if (newRecurringContractAddCollectionModel == null)
    newRecurringContractAddCollectionModel = new SortableModel();
    newRecurringContractAddCollectionModel.setWrappedData((Object) searchRecurringContractSessionObject());
    catch (Exception ex)
    ex.printStackTrace();
    return newRecurringContractAddCollectionModel;
    //=====================================================
    // returns the value of the Session variable in an ArrayList
    //====================================================
    public ArrayList searchRecurringContractSessionObject() throws Exception
    ArrayList recurringContractDTOList = new ArrayList();
    RecurringContractDTO recurringContractDTO = new RecurringContractDTO();
    FacesContext fc = FacesContext.getCurrentInstance();
    HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
    if(session.getAttribute("newRecurringContractAddSessionDTO") != null)
    recurringContractDTO = (RecurringContractDTO) session.getAttribute("newRecurringContractAddSessionDTO");
    recurringContractDTOList.add(recurringContractDTO);
    return recurringContractDTOList;
    </code>
    Thank you
    Message was edited by:
    user600790

    Hi,
    I am using ADF components to build a session object “newRecurringContractAddSessionDTO” from user input, each time the user adds an item the session object will grow by one item.
    I am taking the input from newItemTable RecurringContractLineItemDTO class object
    and adding it to existingItemsTable newRecurringContractAddCollectionModel. recurringContractLineItemDTOModel list.
    the problem is each time I add a new item to the recurringContractLineItemDTOModel list all the items in the recurringContractLineItemDTOModel list change to the same value of the last item I am adding?
    her is the code:
    JSP:
    <cod>
    <af:iterator id="mainIterator" value="#{recurringContractBD.newRecurringContractAddCollectionModel}" var="contracts">
    <af:table id="newItemTable" value="#{contracts.newRecurringContractLineItemDTO}" var="newItem" banding="row">
    </ af:table>
    <af:table id="existingItemsTable" value="#{contracts.recurringContractLineItemDTOModel}" bandingInterval="1" var="items">
    </ af:table>
    </ af:iterator
    </code>
    -- mainIterator is bound to newRecurringContractAddCollectionModel which holds an ArrayList of RecurringContractDTO class object
    -- newItemTable is bound to RecurringContractDTO .RecurringContractLineItemDTO class object
    -- existingItemsTable is bound to newRecurringContractAddCollectionModel. recurringContractLineItemDTOModel which holds an
    ArrayList of RecurringContractDTO .RecurringContractLineItemDTO class object
    <code>
    //==========================================================
    //this method is executed when the user clicks on the add button in the JSP
    //=========================================================
    public String addRecurringContractLineItemToSessionObject() throws Exception
    String addResult = "";
    int updateRecurringContractCollectionModelSelectedRowIndex = -1;
    RecurringContractDTO recurringContractSessionDTO = (RecurringContractDTO) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("newRecurringContractAddSessionDTO");
    //get all contracts listed on the page
    ArrayList recurringContractUpdatedDTOList = (ArrayList) newRecurringContractAddCollectionModel.getWrappedData();
    RecurringContractDTO recurringContractUpdatedDTO = (RecurringContractDTO) recurringContractUpdatedDTOList.get(0);
    //get all line items for selected contract
    ArrayList recurringContractLineItemDTOList = new ArrayList();
    if(recurringContractSessionDTO.getRecurringContractLineItemDTOModel() != null && recurringContractSessionDTO.getRecurringContractLineItemDTOModel().getRowCount() != 0)
    recurringContractLineItemDTOList = (ArrayList) recurringContractSessionDTO.getRecurringContractLineItemDTOModel().getWrappedData();
    //add the new line item to the line item model
    recurringContractLineItemDTOList.add(recurringContractUpdatedDTO.getNewRecurringContractLineItemDTO());
    CollectionModel recurringContractExistingLineItemModel = new SortableModel();
    recurringContractExistingLineItemModel.setWrappedData((Object) recurringContractLineItemDTOList);
    //update the line items of the selected contract
    recurringContractSessionDTO.setRecurringContractLineItemDTOModel(recurringContractExistingLineItemModel);
    recurringContractSessionDTO.setHasLineItems(true);
    FacesContext fc = FacesContext.getCurrentInstance();
    HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
    session.removeAttribute("newRecurringContractAddSessionDTO");
    session.setAttribute("newRecurringContractAddSessionDTO", recurringContractSessionDTO);
    return addResult;
    //=====================================================
    // collection model value is set to the return value of
    // searchRecurringContractSessionObject() which returns
    // the value of the Session variable in an ArrayList
    //====================================================
    public CollectionModel getNewRecurringContractAddCollectionModel()
    try
    if (newRecurringContractAddCollectionModel == null)
    newRecurringContractAddCollectionModel = new SortableModel();
    newRecurringContractAddCollectionModel.setWrappedData((Object) searchRecurringContractSessionObject());
    catch (Exception ex)
    ex.printStackTrace();
    return newRecurringContractAddCollectionModel;
    //=====================================================
    // returns the value of the Session variable in an ArrayList
    //====================================================
    public ArrayList searchRecurringContractSessionObject() throws Exception
    ArrayList recurringContractDTOList = new ArrayList();
    RecurringContractDTO recurringContractDTO = new RecurringContractDTO();
    FacesContext fc = FacesContext.getCurrentInstance();
    HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
    if(session.getAttribute("newRecurringContractAddSessionDTO") != null)
    recurringContractDTO = (RecurringContractDTO) session.getAttribute("newRecurringContractAddSessionDTO");
    recurringContractDTOList.add(recurringContractDTO);
    return recurringContractDTOList;
    </code>
    Thank you
    Message was edited by:
    user600790

  • ADF Swing problem

    Hi,
    We have some ADF Swing projects converted into libraries.
    and these Library files are going to be used in another project.(it's done already)
    problem :
    this is an event that is supposed to call a form from a library :
    private void jButton1_actionPerformed(ActionEvent e) {
    LocationListForm lf = new LocationListForm();
    Lf.main(null);
    "LocationListForm " has a JPanel named "locationListPanel1"
    when the "Lf.main(null)" is called we have a problem with this line (in main method) :
    locationListPanel1.bindNestedContainer(panelBinding.findNestedPanelBinding("view_LocationListPanelPageDef1"));
    "panelBinding" is returned null and on the Bold line we get an exception.
    public void bindNestedContainer(JUPanelBinding ctr) {
    //Exception on this line
    *if (panelBinding.getPanel() == null) {*
    ctr.setPanel(this);
    panelBinding.release(DCDataControl.REL_VIEW_REFS);
    panelBinding = ctr;
    registerProjectGlobalVariables(panelBinding.getBindingContext());
    try {
    jbInit();
    } catch (Exception ex) {
    ex.printStackTrace();
    ctr.reportException(ex);
    Please Advise,
    Thank you

    Hi,
    We have some ADF Swing projects converted into libraries.
    and these Library files are going to be used in another project.(it's done already)
    problem :
    this is an event that is supposed to call a form from a library :
    private void jButton1_actionPerformed(ActionEvent e) {
    LocationListForm lf = new LocationListForm();
    Lf.main(null);
    "LocationListForm " has a JPanel named "locationListPanel1"
    when the "Lf.main(null)" is called we have a problem with this line (in main method) :
    locationListPanel1.bindNestedContainer(panelBinding.findNestedPanelBinding("view_LocationListPanelPageDef1"));
    "panelBinding" is returned null and on the Bold line we get an exception.
    public void bindNestedContainer(JUPanelBinding ctr) {
    //Exception on this line
    *if (panelBinding.getPanel() == null) {*
    ctr.setPanel(this);
    panelBinding.release(DCDataControl.REL_VIEW_REFS);
    panelBinding = ctr;
    registerProjectGlobalVariables(panelBinding.getBindingContext());
    try {
    jbInit();
    } catch (Exception ex) {
    ex.printStackTrace();
    ctr.reportException(ex);
    Please Advise,
    Thank you

  • ADF convertColor problem

    Hi,
    I am trying to use adf color and I am facing some problem. Basically, I am just trying to display color code string as color and below is my code.
    <af:inputColor label="#color" id="ic2" compact="true" simple="true" readOnly="true"  value="#{row.DeptColorcode}">
    <af:convertColor patterns="#RRGGBBAA" transparentAllowed="true"/>Color code strings are like #ff0000ff so I guess the color pattern that I specified is correct. But it doesn't work. Can anyone help me verify the code? Thanks.
    Regards,
    K.Hein
    Edited by: K Hein on Apr 18, 2011 11:04 AM

    Timo Hahn wrote:
    Just tried it and it works foe me.
    Which jdev version do you use? What exactly is your problem?
    Here is my code:
                  <af:inputColor label="Label 1" id="ic1" value="#ffdd33ff" readOnly="true">
    <af:convertColor transparentAllowed="true" patterns="RRGGBBAA #RRGGBBAA r,g,b,a"/>
    </af:inputColor>TimoHi Timo,
    I am using JDeveloper 11.1.1.4.0 and the problem the page doesn't show the color. It shows empty square boxes only. Thanks for the reply.
    Regards,
    Kyi Hein

  • ADF BC : Problem in Inserting a Master - Detail Record

    Hi,
    I am new to ADF Business Components. I am into a project where i use only the ADF BC as ORM/DB Operations and for the front end I use some other framework. The Problem is.
    I have two entity objects and a ViewLink between them. [Relation between "Order" to "Item" is (1 to many relation)].
    [I saw many examples in forums where its explained with View Objects But here I DID NOT create any View Object. I have only Entity Objects]
    (1) OrderEO [Entity Object for Order Table]
    (2) ItemEO [Entity Object for Items Table]
    (3) OrderItemsViewLink [A Viewlink where OrderEO.OrderId = ItemEO.OrderId]
    All The Primary keys (for the "Order" and "Items" table ) are handled by Trigger+Sequence at the time of insert in DB side.
    I created custom method to insert "Order" individually it worked fine.
    I created custom method to insert the "Item" individually it worked fine.
    But...
    When I created and "Order" with some "Items" It failing to insert and throws an
    Error : oracle.jbo.InvalidOwnerException: JBO-25030: Failed to find or invalidate owning entity: detail entity ItemEO, row key oracle.jbo.Key[0 ].
    My Custom Method in the AppModuleImpl is like below :
    public void createNewOrderWithNewItems() {
    String entityName = "com.proj.entities.OrderEO";
    EntityDefImpl orderDef = EntityDefImpl.findDefObject(entityName);
    OrderEOImpl newOrder = (OrderEOImpl)orderDef .createInstance2(getDBTransaction(),null);
    try {
    // 3. Set attribute values
    newOrder .setOrderStatusCode("CREATED");
    RowIterator items = newOrder .getItemEO();
    Row newItemRow = items .createAndInitRow(null);
    items .insertRow(newItemRow );
    newItemRow .setAttribute("itemDate", new Date());
    newItemRow .setAttribute("itemQty", new Number(10));
    // 4. Commit the transaction
    getDBTransaction().commit();
    } catch (SQLException e) {
    e.printStackTrace();
    } catch (JboException ex) {
    getDBTransaction().rollback();
    throw ex;
    Here the "Order" is also new and related Items is also new. What I expect is to save the Order with Items in one transaction. How to achieve this. Please suggest.
    Thanks
    Narayan
    Edited by: 817942 on Dec 3, 2010 8:16 AM

    Read through the blog posts which describes
    why this issue occurs and how it should be resolved.
    http://radio-weblogs.com/0118231/stories/2003/01/17/whyDoIGetTheInvalidownerexception.html
    http://one-size-doesnt-fit-all.blogspot.com/2008/05/jbo-25030-failed-to-find-or-invalidate.html
    Thanks,
    Navaneeth

  • ADF logging problems

    Hi,
    I think that there are some serious problems with ADF logging. Setting its logging level to finest may change the behaviour of the application fundamentally by throwing exceptions which wouldn't be thrown otherwise.
    For example:
    Logging level of ADF is default. Given an EL expression for an NDValue attribute of a methodAction in some pageDef file - the page is working fine and you see the desired data on the page.
    Then you set the logging level of oracle.adfinternal to finest and re-run the page, and you can see a not too informative "JBO-29000: null; java.lang.NullPointerException" error message on the page, which of course does not show your data, as the methodAction was not executed due to the JBO error. The trace stack shows that the cause of the oracle.jbo.JboException thrown at oracle.adf.model.binding.DCBindingContainer.reportException was a java.lang.NullPointerException thrown at oracle.adfinternal.view.faces.model.FacesExpressionEvaluator.evaluate. Cheking the log files you can see that this method has logged a message with level of TRACE:1 saying "Error evaluating expression: #{your expression}". This is beyond understanding, as the expression is correct (e.g. it is syntactically correct and referencing only existing bean values or an attribute binding input value).
    Does anybody have any experiences like this or know the cause of this problem?
    (I'll try to reproduce the problem in a simple testcase if my time permits.)
    Regards,
    Patrik

    Patrik,
    my guess is that this is basically a bug in the application code. When you increase the log level, you're making the application execute more code to debug data that's not executed otherwise when the log level is the default.
    This happened to me some time ago with another application and I found out that there was a bug in the code which was executed with FINEST level.
    As you say, if there is a "null" value then when the code is executed, you get the NullPointerException. I don't know who would be the one to solve this issue though.
    Good luck

Maybe you are looking for

  • Hidden field in form returns null value

    Hi all - I searched for this but found nothing that fit my problem although various other problems came up. I have a Login jsp, with a simple form for username and password: <form name="login" method="post" action="servlet/ControlServlet" onSubmit="r

  • Mac Mini to new iMac via FireWire (9-pin to 6-pin cable necessary?)

    I can't seem to find a straight answer on this. Am I correct in assuming that the only FireWire cable that can be used to connect a Mac Mini to a new iMac is a 9-pin to 6-pin cable such as http://store.apple.com/us/product/TP320LL/A?mco=MzE2OTkyOA ?

  • Want to upload company logo into ICON table

    hi i want to upload my company logo into ICON table how i can upload it . thanks in advanced.

  • How to remove existing keywords during import?

    I have tried to find a way to NOT import existing keywords present in files that are already on my system, when I am importing those files into my library. They mess up my existing keyword structure and I just want to ignore them during import. I tri

  • Java app is writing question marks instead of extended characters

    People, since I've installed an Sun E3000 with Solaris9 I'm having problems with accents (extended characters) in my java application: - it writes question marks instead of accents. This machine used to be Solaris 2.6 and we formatted/installed Solar