Hi Scott, Hi Adam, Thanks so much for your input. It has been very valuable.
Scott, would it be possible to get more information on the Proof of concept you setup with Trinidad & JDeveloper 11? I have downloaded the technology preview and there appears to be much better integration with the Trinidad component library. Happy to take this conversation offline and discuss with you directly. Regards, Chris. -----Original Message----- From: Scott O'Bryan [mailto:[EMAIL PROTECTED] Sent: Tuesday, 22 May 2007 6:28 AM To: MyFaces Discussion Subject: Re: [Trinidad] Portlet Bridge: MyFaces Trinidad as a Portlet within JDeveloper / Webcenter preconfigured OC4J Chris, Actually Adam is totally correct. I reviewed the packaging for ADFFaces 10.l.3.2. I thought the ADFFacesDatabindingFilter was seperate from ADFFaces, but it's not. Sorry. To use Trinidad with ADFm, you'll need to use JDEV 11, the ADFFaces Richclient, and the ADFFaces Databinding. Scott Adam Winer wrote: > Chris, > > I can tell you that Trinidad and ADF Faces 10.1.3 cannot > be used in the same application (mostly because their > heritage is so shared that they step on each other). > > However, your stack trace doesn't appear to have a any > org.apache code on it, and the configuration files > you list can't possibly match up to the stack trace here. > For example, the stack trace has ADFBindingFilter > and AdfFacesFilter, but the web.xml you list > has TrinidadFilter only (with ADFBindingFilter commented > out). > > To the extent that you're getting problems in > oracle.adf.model.portlet.binding.PortletBindingException, > I think that OTN or Oracle support would be better > resources than this list... For Trinidad portlet deployment, > Scott O'Bryan could probably help out here on this list. > > -- Adam > > > On 5/20/07, Innes, Chris <[EMAIL PROTECTED]> wrote: > >> Greetings, >> >> I was wondering if I could leverage some knowledge / experiences out >> there >> regarding exposing a Trinidad JSF app as a Portlet within JDeveloper >> 10.1.3.2 & the pre-configured Webcenter OC4J. >> >> I was easily able to expose a Sun Reference Implementation JSF >> application >> as a Portlet, using the Faces Portlet Bridge, and then consume using a >> Webcenter page and Portlet producer. However, when I try this with the >> Trinidad App (no matter how trivial), I experience the exception >> listed at >> the bottom of this e-mail when attempting to consume it. >> >> For both the Sun RI & Trinidad JSF apps I followed the same process to >> expose (as documented on the Oracle Web Center site): >> >> - Add the Portlet Faces Bridge library to each of the apps >> >> - Create the Portlet.xml deployment descriptor and make the >> necessary >> modifications >> >> - Modify the web.xml file >> >> - Deploy apps to the WebCenter preconfigured OC4J >> >> - Create a WebCenter application, register the Portlet >> producers and >> consume >> >> >> >> For both apps, I can view the wsrp WSDL and all Portlet registrations >> test >> successfully. I can run them as straight JSF apps without any problems. >> So, I'm not sure where to go from here. I have read a couple of forum >> entries for this particular exception, and they suggest increasing the >> Portlet producer timeout durations, but this has not seemed to help. >> >> Interestingly, after some experimentation I can trigger the error on >> a Sun >> RI app by just adding the Trinidad libraries to the project (not >> using any >> of the components) which makes me think there is some kind of >> incompatibility. >> >> >> >> Does anybody have any thoughts as to where the issue might lay? Is it >> likely on the consumption side or something to do with the Portlet >> deployment? Does the preconfigured WebCenter OC4J support Trinidad? I >> remember reading somewhere that Trinidad and ADF Faces don't mix very >> well >> and to consume the Portlets I think you need to use an ADF Portlet >> library. >> I am planning to stand up a complete Oracle Portal stack to test the >> producers also, but haven't got that far yet. >> >> Thanks in advance, >> >> Here is the exception received when trying to consume the portlet: >> >> >> >> SEVERE: >> oracle.adf.model.portlet.binding.PortletBindingException: >> Unable to get portlet response (Internal Error) for portlet binding >> ReallyEasyDemoPortlet1_1 >> >> at >> oracle.adf.model.portlet.binding.PortletBinding.getPortletRendition(Port letBinding.java:514) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.html.portlet.PortletRenderer.pre Render(PortletRenderer.java:417) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.html.customizable.ShowDetailFram eRenderer.encodeBegin(ShowDetailFrameRenderer.java:227) >> >> >> at >> oracle.adf.view.faces.component.UIXComponentBase.encodeBegin(UIXComponen tBase.java:593) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.RenderUtils.encodeRecursive(Rend erUtils.java:39) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeChild(Co reRenderer.java:242) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeAllChild ren(CoreRenderer.java:265) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRende rer.renderContent(PanelPartialRootRenderer.java:65) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.renderCo ntent(BodyRenderer.java:117) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRende rer.encodeAll(PanelPartialRootRenderer.java:147) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.xhtml.BodyRenderer.encodeAl l(BodyRenderer.java:60) >> >> >> at >> oracle.adfinternal.view.faces.renderkit.core.CoreRenderer.encodeEnd(Core Renderer.java:169) >> >> >> at >> oracle.adf.view.faces.component.UIXComponentBase.encodeEnd(UIXComponentB ase.java:624) >> >> >> at >> javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:645) >> >> at >> javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:568) >> >> at >> oracle.adf.view.faces.webapp.UIXComponentTag.doEndTag(UIXComponentTag.ja va:100) >> >> >> at >> _mdssys._viewcontroller._public__html._untitled1_jspx._jspService(_untit led1_jspx.java:103) >> >> >> at >> com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59) >> >> at >> oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:724) >> >> at >> oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:414) >> >> at >> oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:598) >> >> at >> oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:522) >> >> at >> javax.servlet.http.HttpServlet.service(HttpServlet.java:856) >> >> at >> com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChai n.java:64) >> >> >> at oracle.mds.jsp.MDSJSPFilter.doFilter(Unknown >> Source) >> >> at >> com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestD ispatcher.java:622) >> >> >> at >> com.evermind.server.http.ServletRequestDispatcher.forwardInternal(Servle tRequestDispatcher.java:369) >> >> >> at >> com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(S ervletRequestDispatcher.java:286) >> >> >> at >> com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequ estDispatcher.java:50) >> >> >> at >> com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletReque stDispatcher.java:192) >> >> >> at >> oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283) >> >> at >> com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequest Dispatcher.java:197) >> >> >> at >> com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.j ava:346) >> >> >> at >> com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.jav a:152) >> >> >> at >> oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(Vie wHandlerImpl.java:157) >> >> >> at >> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase. java:107) >> >> >> at >> com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245) >> >> at >> com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137) >> >> at >> javax.faces.webapp.FacesServlet.service(FacesServlet.java:214) >> >> at >> com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChai n.java:64) >> >> >> at >> oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter( AdfFacesFilterImpl.java:228) >> >> >> at >> oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(Ad fFacesFilterImpl.java:197) >> >> >> at >> oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFace sFilterImpl.java:123) >> >> >> at >> oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java :103) >> >> >> at >> com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChai n.java:15) >> >> >> at >> oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java :162) >> >> >> at >> com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestD ispatcher.java:620) >> >> >> at >> com.evermind.server.http.ServletRequestDispatcher.forwardInternal(Servle tRequestDispatcher.java:369) >> >> >> at >> com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequest Handler.java:865) >> >> >> at >> com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHa ndler.java:447) >> >> >> at >> com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestH andler.java:215) >> >> >> at >> com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java: 117) >> >> >> at >> com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java: 110) >> >> >> at >> oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocke tReadHandler.java:260) >> >> >> at >> oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSoc ketAcceptHandler.java:239) >> >> >> at >> oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcc eptHandler.java:34) >> >> >> at >> oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(Ser verSocketAcceptHandler.java:880) >> >> >> at >> com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(Releasab leResourcePooledExecutor.java:298) >> >> >> at java.lang.Thread.run(Thread.java:595) >> >> Caused by: >> oracle.portlet.client.container.PortletRemoteException: >> oracle.portlet.server.container.OperationFailedException: >> oracle.portlet.wsrp.v1.OperationFailedException: >> oracle.portlet.wsrp.v1.soap.OperationFailed >> >> at >> oracle.portlet.client.techimpl.wsrp.WSRPBaseTerminalPipe.processExceptio n(WSRPBaseTerminalPipe.java:37) >> >> >> at >> oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMar kupPipe.java:185) >> >> >> at >> oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.pre(WSRPGetMarkupP ipe.java:52) >> >> >> at >> oracle.portlet.client.service.pipeline.PipeContext.internalExecute2(Pipe Context.java:516) >> >> >> at >> oracle.portlet.client.service.pipeline.PipeContext.internalExecute(PipeC ontext.java:403) >> >> >> at >> oracle.portlet.client.service.pipeline.PipeContextRunnable.run(PipeConte xtRunnable.java:24) >> >> >> at >> edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter .call(Executors.java:431) >> >> >> at >> edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask .java:176) >> >> >> at >> oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker .runTask(ModifiedThreadPoolExecutor.java:398) >> >> >> at >> oracle.portlet.client.service.pipeline.ModifiedThreadPoolExecutor$Worker .run(ModifiedThreadPoolExecutor.java:423) >> >> >> ... 1 more >> >> Caused by: >> oracle.portlet.server.container.OperationFailedException: >> oracle.portlet.wsrp.v1.OperationFailedException: >> oracle.portlet.wsrp.v1.soap.OperationFailed >> >> at >> oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:1093 ) >> >> >> at >> oracle.portlet.client.connection.wsrp.ActivityServerWrapper.getMarkup(Ac tivityServerWrapper.java:1330) >> >> >> at >> oracle.portlet.client.techimpl.wsrp.WSRPGetMarkupPipe.execute(WSRPGetMar kupPipe.java:116) >> >> >> ... 9 more >> >> Caused by: oracle.portlet.wsrp.v1.OperationFailedException: >> oracle.portlet.wsrp.v1.soap.OperationFailed >> >> at >> oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_ v1_Markup_PortTypeJaxbToSoap.java:101) >> >> >> at >> oracle.portlet.wsrp.v1.ServerToWSRPv1.getMarkup(ServerToWSRPv1.java:977) >> >> ... 11 more >> >> Caused by: oracle.portlet.wsrp.v1.soap.OperationFailed >> >> at >> oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_PortType_getMarkup_Fa ult_SOAPSerializer.deserializeDetail(WSRP_v1_Markup_PortType_getMarkup_F ault_SOAPSerializer.java:269) >> >> >> at >> oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserializeSOAP 11(SOAPFaultInfoSerializer.java:132) >> >> >> at >> oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserialize(SOA PFaultInfoSerializer.java:94) >> >> >> at >> oracle.j2ee.ws.common.encoding.ObjectSerializerBase.deserialize(ObjectSe rializerBase.java:180) >> >> >> at >> oracle.j2ee.ws.common.encoding.ReferenceableSerializerImpl.deserialize(R eferenceableSerializerImpl.java:147) >> >> >> at >> oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub._re adBodyFaultElement(WSRP_v1_Markup_Binding_SOAP_Stub.java:456) >> >> >> at >> oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:321 ) >> >> >> at >> oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112) >> >> at >> oracle.portlet.wsrp.v1.soap.runtime.WSRP_v1_Markup_Binding_SOAP_Stub.get Markup(WSRP_v1_Markup_Binding_SOAP_Stub.java:76) >> >> >> at >> oracle.portlet.wsrp.v1.WSRP_v1_Markup_PortTypeJaxbToSoap.getMarkup(WSRP_ v1_Markup_PortTypeJaxbToSoap.java:78) >> >> >> ... 12 more >> >> Portlet.xml >> >> >> >> <?xml version="1.0" encoding="ISO-8859-1"?> >> >> <portlet-app >> xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd" >> >> version="1.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> >> >> xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.x sd >> >> >> >> http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"> >> >> <portlet> >> >> <description>Really Easy Demo Portlet</description> >> >> <portlet-name>ReallyEasyDemo</portlet-name> >> >> <display-name>Really Easy Demo portlet</display-name> >> >> >> <portlet-class>oracle.portlet.server.bridges.jsf.FacesPortlet >> >> </portlet-class> >> >> <init-param> >> >> <name>DefaultPage.view</name> >> >> <value>/hello.jspx</value> >> >> </init-param> >> >> <init-param> >> >> <name>BridgeLifecycleListeners</name> >> >> <value> >> >> >> oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener >> >> </value> >> >> </init-param> >> >> <supports> >> >> <mime-type>text/html</mime-type> >> >> <portlet-mode>VIEW</portlet-mode> >> >> </supports> >> >> <supported-locale>en</supported-locale> >> >> <portlet-info> >> >> <title>Really Easy Demo Portlet</title> >> >> <short-title>ReallyEasyDemo</short-title> >> >> </portlet-info> >> >> </portlet> >> >> </portlet-app> >> >> Web.xml >> >> <?xml version = '1.0' encoding = 'ISO-8859-1'?> >> >> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> >> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee >> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >> version="2.4"> >> >> <context-param> >> >> <param-name>javax.faces.STATE_SAVING_METHOD</param-name> >> >> <param-value>server</param-value> >> >> <!--param-value>server</param-value--> >> >> </context-param> >> >> <context-param> >> >> >> <param-name>org.apache.myfaces.trinidad.USE_APPLICATION_VIEW_CACHE</para m-name> >> >> >> <param-value>false</param-value> >> >> </context-param> >> >> <!--<filter> >> >> <filter-name>adfBindings</filter-name> >> >> <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class> >> >> </filter> >> >> --> >> >> <context-param> >> >> >> <param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-n ame> >> >> >> <param-value>true</param-value> >> >> </context-param> >> >> <context-param> >> >> >> <param-name>org.apache.myfaces.trinidad.CHANGE_PERSISTENCE</param-name> >> >> <param-value>session</param-value> >> >> </context-param> >> >> <filter> >> >> <filter-name>trinidad</filter-name> >> >> >> <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter- class> >> >> >> </filter> >> >> <filter-mapping> >> >> <filter-name>trinidad</filter-name> >> >> <servlet-name>faces</servlet-name> >> >> </filter-mapping> >> >> <servlet> >> >> <servlet-name>faces</servlet-name> >> >> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> >> >> </servlet> >> >> <servlet> >> >> <servlet-name>resources</servlet-name> >> >> >> <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servl et-class> >> >> >> </servlet> >> >> <servlet-mapping> >> >> <servlet-name>faces</servlet-name> >> >> <url-pattern>/faces/*</url-pattern> >> >> </servlet-mapping> >> >> <servlet-mapping> >> >> <servlet-name>resources</servlet-name> >> >> <url-pattern>/adf/*</url-pattern> >> >> </servlet-mapping> >> >> </web-app> >> >> >> >> Faces-config.xml >> >> <?xml version="1.0"?> >> >> <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer >> Faces Config 1.0//EN" >> >> "http://java.sun.com/dtd/web-facesconfig_1_0.dtd" > >> >> <faces-config> >> >> <application> >> >> <default-render-kit-id> >> >> org.apache.myfaces.trinidad.core >> >> </default-render-kit-id> >> >> </application> >> >> </faces-config> >> >> >> >> Chris. >> >> >

