Partially solved: The problem is if you define adf core render kit as the default default render kit, some of the tomahawk/myfaces/facelets components have no rendering context (not sure which component, cos the exception helpfully does not tell me), hence the null pointer.
<application> <default-render-kit-id> oracle.adf.core </default-render-kit-id> </application> However, if I don't define oracle.adf.core as the default render kit, I get real ADF components in the component tree but they don't render: eg. component is: oracle.adf.view.faces.component.core.input.CoreChooseDate, renderer=oracle.adf.Date toString=CoreChooseDate[UINodeFacesBean, id=idp1] The error is: Mar 23, 2006 11:36:12 PM oracle.adf.view.faces.component.UIXComponentBase _getRendererImpl WARNING: Could not find renderer for CoreChooseDate[UINodeFacesBean, id=idp1], rendererType = oracle.adf.Date I commented out the facelets view handler in faces-config.xml and added the following to web.xml (I can't seem to see the url http://tinyurl.com/dac6y for the example web.xml) <context-param> <param-name>oracle.adf.view.faces.ALTERNATE_VIEW_HANDLER</param-name> <param-value>com.sun.facelets.FaceletViewHandler</param-value> </context-param> Can I define the ADF render kit just for the ADF components I want to use? I presume the alternative is to define a render kit for the MyFaces components I want to use? I tried adding some code below to faces-config.xml but it made no difference to the render. <render-kit> <render-kit-id>oracle.adf.core</render-kit-id> <renderer> <component-family>oracle.adf.Output</component-family> <renderer-type>oracle.adf.Formatted</renderer-type> <renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.Outpu tFormattedRenderer</renderer-class> </renderer> <renderer> <component-family>oracle.adf.Choose</component-family> <renderer-type>oracle.adf.Date</renderer-type> <renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.Choos eDateRenderer</renderer-class> </renderer> <renderer> <component-family>oracle.adf.Input</component-family> <renderer-type>oracle.adf.Text</renderer-type> <renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.Input TextRenderer</renderer-class> </renderer> <renderer> <component-family>oracle.adf.SelectInput</component-family> <renderer-type>oracle.adf.Date</renderer-type> <renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.Selec tInputDateRenderer</renderer-class> </renderer> <renderer> <component-family>oracle.adf.Object</component-family> <renderer-type>oracle.adf.Separator</renderer-type> <renderer-class>oracle.adfinternal.view.faces.uinode.UINodeRendererBase< /renderer-class> </renderer> <renderer> <component-family>oracle.adf.Command</component-family> <renderer-type>oracle.adf.Link</renderer-type> <renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.Comma ndLinkRenderer</renderer-class> </renderer> <renderer> <component-family>oracle.adf.Panel</component-family> <renderer-type>oracle.adf.Group</renderer-type> <renderer-class>oracle.adfinternal.view.faces.renderkit.core.xhtml.Panel GroupRenderer</renderer-class> </renderer> </render-kit> Also, if I have the ADF jars in my WEB-INF/lib folder in the tree, I get: java.lang.IllegalStateException: Duplicate id : _id0. Child could not be added. The ADF jars are below: adf-faces-api-ea20-SNAPSHOT.jar adf-faces-api-ea20-SNAPSHOT-mock.jar adf-faces-build-ea20-SNAPSHOT.jar adf-faces-impl-ea20-SNAPSHOT.jar Not exactly sure what the mock and build ones are for, but I left them in the .war anyway. ===============< phase RENDER_RESPONSE(6)>=========== Mar 24, 2006 2:14:34 AM com.sun.facelets.FaceletViewHandler renderView FINE: Rendering View: /main.xhtml Mar 24, 2006 2:14:34 AM com.sun.facelets.FaceletViewHandler getRenderedViewId FINE: ActionId -> ViewId: /main.xhtml -> /main.xhtml Mar 24, 2006 2:14:34 AM com.sun.facelets.FaceletViewHandler buildView FINE: Building View: /main.xhtml Mar 24, 2006 2:14:34 AM com.sun.facelets.tag.jsf.ComponentHandler apply FINE: /main.xhtml @12,23 <a:scopeTracker> Component[/main.xhtml#0] Found, marking children for cleanup Mar 24, 2006 2:14:34 AM com.sun.facelets.tag.jsf.ComponentHandler apply FINE: /main.xhtml @23,47 <ui:debug> Component[/main.xhtml#1] Created: com.sun.facelets.tag.ui.UIDebug Mar 24, 2006 2:14:34 AM com.sun.facelets.FaceletViewHandler handleRenderException SEVERE: Error Rendering View[/main.xhtml] java.lang.IllegalStateException: Duplicate id : _id0. Child could not be added. at javax.faces.component._ComponentChildrenList.checkAddAllowed(_ComponentC hildrenList.java:95) at javax.faces.component._ComponentChildrenList.add(_ComponentChildrenList. java:76) at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:17 5) at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandl er.java:47) at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:4 9) at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandl er.java:47) at com.sun.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:95) at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:40 8) at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:4 42) at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(Vie wHandlerImpl.java:159) at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:367 ) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter( AdfFacesFilterImpl.java:279) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(Ad fFacesFilterImpl.java:248) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFace sFilterImpl.java:172) at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java :80) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFil ter.java:93) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFil ter.java:130) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter( AdfFacesFilterImpl.java:279) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(Ad fFacesFilterImpl.java:248) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFace sFilterImpl.java:172) at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java :80) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv e.java:178) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator Base.java:432) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1 48) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:86 9) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.proc essConnection(Http11BaseProtocol.java:667) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint .java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow erWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:684) at java.lang.Thread.run(Thread.java:595) Any help appreciated as this is driving me up the wall. Sorry to spam both groups but I really don't know if my issue is Facelet related or MyFaces related. Regards, Murray