Spring Portlets in Webcenter
Hi,
I have been trying to create a simple spring portlet using WebCenter PS3. When i try to run the portlet i'm getting the below exception.
I have been using spring 3 and have included the JSTL 1.2 library in classpath from JDeveloper. The application is not able to load the Config class at runtime which is there in the JSTL libray. Did anybody faced a similar problem. Any help on this is appreciated.
javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Configjavax.portlet.PortletException: javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
at com.bea.portlet.container.PortletRequestDispatcherImpl.internalInclude(PortletRequestDispatcherImpl.java:214)
at com.bea.portlet.container.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:140)
at org.springframework.web.portlet.DispatcherPortlet.doRender(DispatcherPortlet.java:1140)
at org.springframework.web.portlet.DispatcherPortlet.render(DispatcherPortlet.java:1094)
at org.springframework.web.portlet.DispatcherPortlet.doRenderService(DispatcherPortlet.java:832)
at org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:483)
at org.springframework.web.portlet.FrameworkPortlet.doDispatch(FrameworkPortlet.java:453)
at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
at com.bea.portlet.container.PortletStub.doRender(PortletStub.java:1003)
at com.bea.portlet.container.FilterChainGenerator.runFilterChain(FilterChainGenerator.java:127)
at com.bea.portlet.container.PortletStub.render(PortletStub.java:438)
at com.bea.portlet.container.AppContainer.renderStub(AppContainer.java:1144)
at com.bea.portlet.container.AppContainer.invokeRender(AppContainer.java:1076)
at com.bea.wsrp.producer.adapter.javaportlet.JavaPortletAdapter.doGetMarkup(JavaPortletAdapter.java:294)
at com.bea.wsrp.producer.handlers.markup.MarkupServiceHandler.doGetMarkup(MarkupServiceHandler.java:449)
at com.bea.wsrp.producer.handlers.markup.MarkupServiceHandler.doService(MarkupServiceHandler.java:264)
at com.bea.wsrp.producer.handlers.AbstractServiceHandler.service(AbstractServiceHandler.java:71)
at com.bea.wsrp.producer.container.ProducerEndPoint.processNow(ProducerEndPoint.java:349)
at com.bea.wsrp.producer.container.ProducerEndPoint.processNow(ProducerEndPoint.java:250)
at com.bea.wsrp.producer.container.ProducerEndPoint.processNow(ProducerEndPoint.java:208)
at oracle.portlet.server.adapter.web.WSRP_v2_Markup_PortTypeSoapToEndpoint.getMarkup(WSRP_v2_Markup_PortTypeSoapToEndpoint.java:74)
at oasis.names.tc.wsrp.v2.bind.runtime.WSRP_v2_Markup_Binding_SOAP_Tie.invoke_getMarkup(WSRP_v2_Markup_Binding_SOAP_Tie.java:66)
at oasis.names.tc.wsrp.v2.bind.runtime.WSRP_v2_Markup_Binding_SOAP_Tie.processingHook(WSRP_v2_Markup_Binding_SOAP_Tie.java:1445)
at oracle.j2ee.ws.server.StreamingHandler.handle(StreamingHandler.java:299)
at oracle.j2ee.ws.server.JAXRPCProcessor.doEndpointProcessing(JAXRPCProcessor.java:442)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:1081)
at oracle.j2ee.ws.server.JAXRPCProcessor.doRequestProcessing(JAXRPCProcessor.java:333)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:232)
at oracle.j2ee.ws.server.JAXRPCProcessor.doService(JAXRPCProcessor.java:185)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:459)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.portlet.producer.container.endpoint.ProducerEndpointFilter.doFilter(ProducerEndpointFilter.java:34)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
Caused by: javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:341)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183)
at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:523)
at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:444)
at com.bea.portlet.container.PortletRequestDispatcherImpl.internalInclude(PortletRequestDispatcherImpl.java:204)
... 65 more
Caused by: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
at org.springframework.web.servlet.support.JstlUtils.exposeLocalizationContext(JstlUtils.java:97)
at com.cts.portlet.helloworld.JstlView.exposeHelpers(JstlView.java:45)
at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:209)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:257)
at org.springframework.web.servlet.ViewRendererServlet.renderView(ViewRendererServlet.java:111)
at org.springframework.web.servlet.ViewRendererServlet.processRequest(ViewRendererServlet.java:84)
at org.springframework.web.servlet.ViewRendererServlet.doGet(ViewRendererServlet.java:65)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
... 69 more
Hi All, Fixed the issue. Its was due to the duplicate Spring jar, which the Integrated server was loading from the modules directory.
Similar Messages
-
JasperServer Portlet on Webcenter
Has anyone attempted embedding the JasperServer portlet into Spaces? I managed to get the portlet deployed to Weblogic and register it as a WSRP Producer but it doesn't render on Spaces. I get errors relating to Spring framework (Jasper uses the spring web framework) when I add the portlet to Spaces.
<Nov 26, 2010 11:56:12 AM EST> <Error> <oracle.portlet.client.connection.wsrp.HTTPClientTransport> <WCS-40152> <A request to the producer URL "http://10.0.3.26:8889/jasper_portlet/portlets/WSRP_v2_Markup_Service" resulted in a status 500 response with fault string "oracle.portlet.wsrp.v2.OperationFailedException: oracle.portlet.server.container.OperationFailedException: javax.portlet.PortletException: Request processing failed". The fault code given was "ns0:OperationFailed". The producer generated a timestamp of 2010-11-26T11:56:12+1100 and associated the following stack trace with the fault message: oracle.portlet.wsrp.v2.OperationFailedException: oracle.portlet.server.container.OperationFailedException: javax.portlet.PortletException: Request processing failed
at oracle.portlet.wsrp.v2.WSRPv2ToServer.getMarkup(WSRPv2ToServer.java:15310)
at oracle.portlet.wsrp.v2.WSRP_v2_Markup_PortTypeSoapToJaxb.getMarkup(WSRP_v2_Markup_PortTypeSoapToJaxb.java:81)
Caused by: java.lang.IllegalStateException: Invalid portlet request phase: null
at org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:531)
I know this is Spring related but I ask here to see if anyone has succeeded in getting Jasper to work with webcenter spaces or if there are any recommendations on the best way to achieve my requirement. Is WSRP the only way way to consume pre-developed portlets in Webcenter Spaces?
-- Bijesh
Edited by: Bijesh Krishnadas on Nov 25, 2010 8:14 PM - Where did all my text go??Atul,
On Webcenter framework - JSF task flow vs Portlet you can find a complete study on the (dis)advantages of both.
The guideline I use myself is: Do we require the functionality in multiple portals of which one or more is not a WebCenter Portal?
If so, use portlets (e.g. if you want to use the functionality in your WebCenter application and e.g. an Oracle Portal)
Also, exposing the functionality to 'the world' could make you decide to implement a portlet.
If you only need the functionality internally, in one or more applications that can consume task flows, implement it as task flow.
That taskflow can be deployed as a library. If you attach that library to your application, you can use the task flow.
Good luck,
Rob -
Webclipping Portlet in Webcenter portal application
When creating a web-clipping port-let in Webcenter portal application, we register the url for the webclipping portlet (http://localhost:7101/portalTools/webClipping/providers/webClipping) as Oracle PDK Producer connection as mentioned in Web center portal developer's guide http://docs.oracle.com/cd/E25178_01/webcenter.1111/e10148/jpsdg_pages.htm#CHDJDGIF.
The content for the web-clipping portlet is to be specified at runtime only.
Is it possible to define the contents for the web clipping portlet in design time/JDeveloper itself.
Thanks,
NavaneethYou mean you have exposed the taskflow and consumed it as a portlet in Webcenter ?
You may want to check it on the Webcenter Portal forum too - WebCenter Portal -
Dvt:map, JSR-168 portlets, and WebCenter Spaces
Please click here [http://fusion.appshosting.com:8788/coxcustomportlets/faces/callcenterportlet.jspx]
When I attempt to view this portlet in WebCenter Spaces, the map will not render.
The rest of the portlet renders fine.
The connections.xml file is included in the portlet ear.
I am supposing I have to upload connections.xml to the Spaces server as well.. but where do I upload to, and how to I "register" it??
Can anyone help? Thank you very kindly.
JoshHello,
JSR168 is a fairly simplistic standard, but there are ways of doing most things.
For example, to get the portlet's ID (I'm assuming you want a unique portlet instance ID, and not an ID for that "type" of portlet), you can use the PortletRequest.getWindowID() to return an ID for the portlet unique to the user's session.
For storing URLs that need to be re-configured depending on deployment, that is usually done with portlet preferences in JSR168 portlets-- the portlet can read its preference value, which can be set by a developer or an administrator (or the portlet itself, if you wish). Java property files deployed with the portlets can also contain this configuration information.
Kevin -
Consuming a Liferay portlet from WebCenter
Hi all,
I'm trying to consume the default Liferay "Hello World" portlet from WebCenter but keep on getting a null portlet instance when trying to drop the portlet on a jspx page.
Any help would be greatly appreciated.
Regards
AntonisHi Yannick,
Exactly, i'm using WSRP to register the portlet. It registers successfully, it's only when you try to add the portlet to the page that you get a NPE.
I have a customer requirement of integrating or even better migrating their portlets to WebCenter. Their Liferay portlets use Liferay APIs and custom security. How would you tackle this requirements?
Thanks
Antonis -
Portlet inside Webcenter Framework Application
Hi,
I need to implement portlet functionality of editing and moving around components in my webcenterframework application. i went through the cue cards, and all possible oracle documents. i am not able to figure it out. Able to follow till registering portlet in the webcenter framework application. But where to write the logic/code of what content we want inside portlet.?
For example say i have testFramework webcenter framework application and portletproducer application testPortlet. Inside the myPage.jspx present in testFramework application after importing the portlets i created, Where to write in the code. and i need to cal/invoke webservices from myPage.jspx to display the response in the Portlets. so Where Should i have to create the pages? In which application? How to Go about it.. Can i Please get some links or blogs to go about this or sample application?
Thank YouIf you are using WebCenter, then instead of creating a portlet you can just create regular ADF Taskflows, and then dynamically add them to your pages with the webcenter runtime customization functionality.
See for example the lab here: http://www.oracle.com/technetwork/community/developer-day/vdd-oracle-fusion-dev-day-1725597.html
If you are creating a portlet in WebCenter then you need to write the code behind it. Again you can create a regular ADF page that consumes a Web service for example and then expose it as a portlet - if you need to use it outside of WebCenter. -
How to migrate plumtree portlet to webcenter portlet
Hi,
I want to know how to migrate Plumtree portlet to webcenter portlet.
Is there any tool for the migration or need to configure manually.
Please let me know in detail.
Thanks in advanceDepends on what you have configured for the cache... Take a look at your portlet.xml and see if there is any cache defined. If so, remove it.
Normally when you redeploy a portlet, WebLogic will have to restart the portlet application which will result in a refresh so your behaviour is very strange... -
How to cosume BPEL worklist as a portlet in webcenter application
Hi,
Can someone guide me how to consume a BPEL worklist application as portlet in webcenter application. I have a BPEL process and have deployed it on BPEL Integration server installed on oracle apllication server. But how to proceed from here? The portlet should show all the tasks exactly as it appears in the worklist applction.
Thanks
AnandThanks a lot Cappa. Those links were really helpful and I have completed the POC successfully by integrating my existing ADF application with WebCenter by following the steps mentioned in http://www.oracle.com/technetwork/developer-tools/jdev/ccset62-all-100884.html.
Apart from the links you mentioned, Andrejus pointed to one of his blog entry on the same topic. Please find the same at http://andrejusb.blogspot.com/2009/12/producing-jsr-168-portlets-directly.html
Now, the issue is it's very very slow and it's getting timeout most of the time. I'm getting concurrent modification exception also some times. Both the applications are running on the embedded server that comes with JDev. Have you ever come across it?
Regards,
Antony. -
Hi:
I m implementing a locale change page, on which I have 2 portlets. On clicking on the link on one of the portlet, the locale of the page changes to the new locale as specified by the user.
I added following to the portlet.xml
Code:
<supported-locale>en</supported-locale>
<supported-locale>es</supported-locale>
And as the portlet container decides on the locale, I added the
Code:
HttpServletResponse res = (HttpServletResponse) request.getAttribute("javax.servlet.response");
res.setHeader("Accept-Language", "es_US");
to the handleRenderRequestInternal method of the class extending AbstractController<u>(Spring Portlet Framework)</u> used by the locale changing portlet.
On reload or on form GET method, the page does not change the locale.
Am I missing something.
Thanks,
Shiva<pre></pre><pre></pre>Hi:
I m implementing a locale change page, on which I have 2 portlets. On clicking on the link on one of the portlet, the locale of the page changes to the new locale as specified by the user.
I added following to the portlet.xml
Code:
<supported-locale>en</supported-locale>
<supported-locale>es</supported-locale>
And as the portlet container decides on the locale, I added the
Code:
HttpServletResponse res = (HttpServletResponse) request.getAttribute("javax.servlet.response");
res.setHeader("Accept-Language", "es_US");
to the handleRenderRequestInternal method of the class extending AbstractController<u>(Spring Portlet Framework)</u> used by the locale changing portlet.
On reload or on form GET method, the page does not change the locale.
Am I missing something.
Thanks,
Shiva<pre></pre><pre></pre> -
Error at runtime while consuming a portlet in webcenter application
Hi,
I am also facing the same issue.
oracle.portlet.client.persistence.PersistenceNotFoundException: mdsId=/oracle/adf/portlet/WsrpPortletProducer0/ap/PortalContentBIReportsjspx_3715283e_0134_1000_8001_ac1801a53f3d.pxml not found
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.getInternal(MDSPersistenceContext.java:649)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:604)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanFactory.getExisting(PersistenceBeanFactory.java:249)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanContext.getExisting(PersistenceBeanContext.java:110)
at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:300)
at oracle.portlet.client.containerimpl.PublicFactoryImpl.get(PublicFactoryImpl.java:310)
at oracle.portlet.client.containerimpl.PortletContainerImpl.getById(PortletContainerImpl.java:345)
at oracle.portlet.client.containerimpl.PortletContainerImpl.getPortlet(PortletContainerImpl.java:267)
at oracle.adfinternal.model.portlet.binding.PortletModelImpl.init(PortletModelImpl.java:380)
at oracle.adf.model.portlet.binding.PortletBinding$InnerPortletModel.init(PortletBinding.java:1101)
at oracle.adfinternal.model.portlet.binding.ActivityPortletModelWrapper.init(ActivityPortletModelWrapper.java:112)
at oracle.adf.model.portlet.binding.PortletBinding._initModel(PortletBinding.java:471)
at oracle.adf.model.portlet.binding.PortletBinding.initModel(PortletBinding.java:913)
at oracle.adf.model.portlet.binding.PortletBinding.getPortletModel(PortletBinding.java:541)
at oracle.adf.model.portlet.binding.PortletBinding.prepareRenderPhase(PortletBinding.java:394)
at oracle.adf.model.portlet.binding.PortletBinding._refresh(PortletBinding.java:330)
at oracle.adf.model.portlet.binding.PortletBinding.refresh(PortletBinding.java:922)
at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:3271)
at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2874)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareRender(PageLifecycleImpl.java:561)
at oracle.adf.controller.faces.lifecycle.FacesPageLifecycle.prepareRender(FacesPageLifecycle.java:81)
at oracle.adf.controller.v2.lifecycle.Lifecycle$9.execute(Lifecycle.java:224)
at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:197)
at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.access$1000(ADFPhaseListener.java:23)
at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$5.before(ADFPhaseListener.java:402)
at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.beforePhase(ADFPhaseListener.java:64)
at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.beforePhase(ADFLifecyclePhaseListener.java:44)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:279)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:214)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.bi.presentation.runtime.binding.BIRegionBindingFilter.doFilter(BIRegionBindingFilter.java:40)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.bi.nanserver.adf.servlet.BIADFServletFilter.doFilter(BIADFServletFilter.java:64)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.portlet.client.adapter.adf.ADFPortletFilter.doFilter(ADFPortletFilter.java:32)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.framework.events.dispatcher.EventDispatcherFilter.doFilter(EventDispatcherFilter.java:44)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.wcps.client.PersonalizationFilter.doFilter(PersonalizationFilter.java:75)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.content.integration.servlets.ContentServletFilter.doFilter(ContentServletFilter.java:168)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.lifecycle.filter.LifecycleLockFilter.doFilter(LifecycleLockFilter.java:151)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused By: oracle.mds.core.MetadataNotFoundException: MDS-00013: no metadata found for metadata object "/oracle/adf/portlet/WsrpPortletProducer0/ap/PortalContentBIReportsjspx_3715283e_0134_1000_8001_ac1801a53f3d.pxml"
at oracle.mds.core.MetadataObject.getBaseMO(MetadataObject.java:1279)
at oracle.mds.core.MDSSession.getBaseMO(MDSSession.java:3040)
at oracle.mds.core.MDSSession.getMetadataObject(MDSSession.java:1341)
at oracle.portlet.client.persistenceimpl.mds.MDSSessionWrapper.getBaseReadOnlyMO(MDSSessionWrapper.java:256)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.getInternal(MDSPersistenceContext.java:634)
at oracle.portlet.client.persistenceimpl.mds.MDSPersistenceContext.get(MDSPersistenceContext.java:604)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanFactory.getExisting(PersistenceBeanFactory.java:249)
at oracle.portlet.client.beanimpl.persistence.PersistenceBeanContext.getExisting(PersistenceBeanContext.java:110
But this file - /PortalContentBIReportsjspx_3715283e_0134_1000_8001_ac1801a53f3d.pxml exists in my local machine from where i am deploying. I have done the following things.
1) there are no spaces between my project names
2) I have also removed all unused producers from the mds folder in jdev.
I feel that the MDS folder is not getting included while deploying , not sure.
I am deploying the webcenter to a standalone WLS
Can any one help me in thisHi Yannick,
Thanks!!
I was able to resolve it, actually there was a datasource mds-owsm which was being referred in my webcenter application and it was not targeted to the managed server where I was deploying the app, So once I added the target to include this managed server, the portlet was getting identified and getting consumed in my application.
Quick question here I need to integrated BI presentation service in my webcenter, what will be the best way to do it and go about it?I had found an artcile in oracle docs but it is not working for me.Please suggest some better ways of doing this integration.
Thanks for your help!!! -
Page definition is not found while running JSR286 portlet in WebCenter app
Hi All,
I have ADF application which has 3 different task flows 1. my service 2. my car 3. my bike.
which I have placed into a single bounded task flow called repairTaskflow.
I have created a JSR286 portlet out of a repairTaskflow. I am trying to consume it in an Webcenter application. When I place the portlet on to the page in Web center application
and run the page. I see the following error in the console.
oracle.jbo.NoDefException: JBO-25002: Definition ***.xxxx.view.pageDefs.applications_task_flow_applications_task_flow_CreateEmptyApplicationPageDef of type Form Binding Definition is not found.
at oracle.jbo.mom.DefinitionManager.findDefObjectUsingMetadataObject(DefinitionManager.java:2703)
at oracle.jbo.mom.DefinitionManager.findDefObjectUsingMetadataObject(DefinitionManager.java:2715)
at oracle.adf.model.binding.DCBindingContainerDef.findDefObject(DCBindingContainerDef.java:292)
at oracle.adf.model.binding.DCBindingContainerReference.getDef(DCBindingContainerReference.java:107)
at oracle.adf.model.BindingContext.findBindingContainerDefByPath(BindingContext.java:1624)
at oracle.adf.controller.internal.binding.RegionUtils.findOrCreateBindingContainer(RegionUtils.java:246)
at oracle.adfinternal.controller.util.model.DataBindingActivityImpl.getActivityBindingContainer(DataBindingActivityImpl.java:233)
at oracle.adfinternal.controller.util.model.DataBindingActivityImpl.beforeExecute(DataBindingActivityImpl.java:77)
at oracle.adfinternal.controller.engine.ControlFlowEngine.executeActivity(ControlFlowEngine.java:969)
at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:878)
at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:777)
at oracle.adfinternal.controller.engine.ControlFlowEngine.routeFromActivity(ControlFlowEngine.java:551)
at oracle.adfinternal.controller.engine.ControlFlowEngine.performControlFlow(ControlFlowEngine.java:147)
at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleAdfcNavigation(NavigationHandlerImpl.java:109)
at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:78)
at org.apache.myfaces.trinidadinternal.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:43)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:879)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:312)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:185)
at org.apache.myfaces.portlet.faces.bridge.BridgeImpl.doFacesRender(BridgeImpl.java:1002)
Please find below the portlet.xml file
<portlet-app version="2.0" xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<portlet id="adf_taskflow_WEB_INF_test_task_flow_xml">
<description>test-task-flow</description>
<portlet-name>test-task-flow</portlet-name>
<display-name>test-task-flow</display-name>
<portlet-class>oracle.portlet.bridge.adf.application.ADFBridgePortlet</portlet-class>
<init-param>
<name>javax.portlet.faces.defaultViewId.view</name>
<value>/adf.task-flow?adf.tfDoc=/WEB-INF/adfp-portlet-bridge-container.xml&adf.tfId=adfp-portlet-bridge-container&_fragmentTaskFlowDoc=/WEB-INF/test-task-flow.xml&_fragmentTaskFlowId=test-task-flow</value>
</init-param>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>test-task-flow</title>
<short-title>test-task-flow</short-title>
</portlet-info>
<security-role-ref>
<role-name>valid-users</role-name>
</security-role-ref>
<container-runtime-option>
<name>com.oracle.portlet.requireIFrame</name>
<value>true</value>
</container-runtime-option>
<container-runtime-option>
<name>com.oracle.portlet.minimumWsrpVersion</name>
<value>2</value>
</container-runtime-option>
</portlet>
<portlet id="adf_taskflow_WEB_INF_single_task_flow_definition_xml">
<description>single-task-flow-definition</description>
<portlet-name>single-task-flow-definition</portlet-name>
<display-name>single-task-flow-definition</display-name>
<portlet-class>oracle.portlet.bridge.adf.application.ADFBridgePortlet</portlet-class>
<init-param>
<name>javax.portlet.faces.defaultViewId.view</name>
<value>/adf.task-flow?adf.tfDoc=/WEB-INF/adfp-portlet-bridge-container.xml&adf.tfId=adfp-portlet-bridge-container&_fragmentTaskFlowDoc=/WEB-INF/single-task-flow-definition.xml&_fragmentTaskFlowId=single-task-flow-definition</value>
</init-param>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>single-task-flow-definition</title>
<short-title>single-task-flow-definition</short-title>
</portlet-info>
<container-runtime-option>
<name>com.oracle.portlet.requireIFrame</name>
<value>true</value>
</container-runtime-option>
<container-runtime-option>
<name>com.oracle.portlet.minimumWsrpVersion</name>
<value>2</value>
</container-runtime-option>
</portlet>
<portlet id="adf_taskflow_WEB_INF_applications_task_flow_xml">
<description>applications-task-flow</description>
<portlet-name>applications-task-flow</portlet-name>
<display-name>applications-task-flow</display-name>
<portlet-class>oracle.portlet.bridge.adf.application.ADFBridgePortlet</portlet-class>
<init-param>
<name>javax.portlet.faces.defaultViewId.view</name>
<value>/adf.task-flow?adf.tfDoc=/WEB-INF/adfp-portlet-bridge-container.xml&adf.tfId=adfp-portlet-bridge-container&_fragmentTaskFlowDoc=/WEB-INF/applications-task-flow.xml&_fragmentTaskFlowId=applications-task-flow</value>
</init-param>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>applications-task-flow</title>
<short-title>applications-task-flow</short-title>
</portlet-info>
<container-runtime-option>
<name>com.oracle.portlet.requireIFrame</name>
<value>true</value>
</container-runtime-option>
<container-runtime-option>
<name>com.oracle.portlet.minimumWsrpVersion</name>
<value>2</value>
</container-runtime-option>
</portlet>
<custom-portlet-mode>
<portlet-mode>about</portlet-mode>
</custom-portlet-mode>
<custom-portlet-mode>
<portlet-mode>config</portlet-mode>
</custom-portlet-mode>
<custom-portlet-mode>
<portlet-mode>edit_defaults</portlet-mode>
</custom-portlet-mode>
<custom-portlet-mode>
<portlet-mode>preview</portlet-mode>
</custom-portlet-mode>
<custom-portlet-mode>
<portlet-mode>print</portlet-mode>
</custom-portlet-mode>
</portlet-app> In all the 3 task flow there is at least one method activity placed either as the default activity or part of activities.
In service page taskflow the default activity is a method activity. If I convert the service-task-flow alone as a portlet, it failed. showing the similar error : pagedef not found.
Then I created the portlet out of car task-flow whose default activity is a page. This time I can view the portlet, the car list page. Once I click create button on that page which again goes through a method activity, then it failed showing the error mentioned above
It seems where ever there are method activities on the taskflow, the portlet cannot find the pagedef and its throwing error . I have cross checked the deployed war file and all the pagedef's are bundled into it.
Any suggestions are much appreciated.
Thanks,
Morgan.
Edited by: Morgan Freeman on Aug 19, 2011 3:27 AM
Edited by: Morgan Freeman on Aug 19, 2011 3:30 AM
Edited by: Morgan Freeman on Aug 19, 2011 6:02 AMHi All,
I solved this issue. The path of pagedef files was not recognized when I publish the taskflows as portlets. Though it runs when I place it as a region on jspx file.
The folder structure where I placed pagedefs earlier was some thing like this in ViewController -> Application Resources
com.mycomp.view.pagedefs
When I wanted to consume the portlet in the portal application, all the pagedefs under this path were not visible to the portlet.
Once I change the pagedef folder to the immediate folder after the Application Resources, it found all the pagedefs
Now my folder structure in ViewController -> Application Resources
view.pagedefs
Is this a bug? or Am I missing some thing.
Thanks,
Morgan. -
Issues Consuming ADF portlet in Webcenter
Hi,
We created an ADF page in the portlet producer and created a portlet entry. We used a webcenter consumer to consume the ADF portlet from the portlet producer.
On running the webcenter consumer the page is displayed as desired but on performing any action on the page, a blank JS popup message is displayed. Once this popup message displays nothing else can be performed on the screen and the browser tab has to be closed.
There are no logs at the server level.
The jdeveloper version is :11.1.1.6.0.
Can you please help us with this issue
Thanks and regardsHi.
See into Oracle My Support. Remember (don't know exactly) that exists a Portlets problems with version 11.1.1.6 similar to your problem.
Probably you'll need to patch your WebCenter installation to 11.1.1.6.2
Regards. -
Hi All,
We have a ADF task flow in our webcenter application.
1) Can we expose this taskflow as a portlet?
2) Can we use the portlet in the same application?
Thanks
AtulAtul,
On Webcenter framework - JSF task flow vs Portlet you can find a complete study on the (dis)advantages of both.
The guideline I use myself is: Do we require the functionality in multiple portals of which one or more is not a WebCenter Portal?
If so, use portlets (e.g. if you want to use the functionality in your WebCenter application and e.g. an Oracle Portal)
Also, exposing the functionality to 'the world' could make you decide to implement a portlet.
If you only need the functionality internally, in one or more applications that can consume task flows, implement it as task flow.
That taskflow can be deployed as a library. If you attach that library to your application, you can use the task flow.
Good luck,
Rob -
How to use external application, webclipping portlet in webcenter ?
I'm just following this [http://biemond.blogspot.com/2008/01/external-application-in-webcenter-11g.html|http://biemond.blogspot.com/2008/01/external-application-in-webcenter-11g.html]
to integrate an application into webcenter application as a external application. But I can't get the login work, always get the "User authentication failed".
I'm using JDeveloper 11.1.1.2.0 and Webcenter 11.1.1.2.0.You can view a demo-
How to Build a Portlet from an existing authentication web application
from:
http://portalstudio.oracle.com/servlet/page?_pageid=350&_dad=ops&_schema=OPSTUDIO&9054_PDKHOME_39847486.p_subid=176584&9054_PDKHOME_39847486.p_sub_siteid=73&9054_PDKHOME_39847486.p_edit=0#PDKURLDEMO
There are PDK articles that explain how to builld ASP portlets and how to set up a URL based portlet for external authentication:
http://portalstudio.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/articles/build.asp.portlet.url.services.html
http://portalstudio.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/ARTICLES/how.to.build.urlbased.portlet.with.SSO.to.external.app.html
There is also an ASP sample under the PDK-URL services samples.
Please use these to build your application.
Thanks,
Mohana -
How To Deploy/Run a pure Java Portlet into Webcenter
Hello Gurus,
I am new to the portal technologies. So maybe I am asking a very basic question.
Here it what I would like to achieve.
1) Create a sample "HelloWorld" portlet (A java class which implements a portlet interface or some standard portlet impl class) and I use doView() method to show "Hello World" content on the screen.
I need to deploy and test this portlet class into Webcenter. I have JDeveloper as IDE.
2) Create a sample JSP page which prints "Hello World" content. Convert this into JSR-168 and then deploy and run into Webcenter.
Please can anyone provide the easiest steps to achive this? Step-by-step instructions will be highly appreciated as this is bit urgent.
Thanks in advance for any help you can provide on this.
With kind regards-
AshishHello,
Yes, I`m working with 10g.
I've used enterprise Manager to deploy the portlet. I`ve selected "create automatic deploy plan"
The portlet was deployed but I can´t see WSRP interface as http://localhost:8888/WSRPMapPortlet/portlets?WSDL
As yo can see, I´m deploying WSRPMapPortlet sample.
I can´t use JDeveloper in my job :(
Maybe I must do any configuration change to deploy correctly the portlet and expose it in WSRP, I don´t know
Best Regards
Miguel Lacosta
Maybe you are looking for
-
Hi, I am using SharePoint 2013 Enterprise with the March CU. I created a project site template with libraries, lists and workflows and saved it as a template with content. When I try to create a new site using this template, I get the error pasted a
-
24" Alum iMac screen resolutions
Is there any way to change the screen resolution to 1600x1000 on the new 24" imacs? There are several other options on the display preferences but not this one. Anything other than the native is too fuzzy and the native 1920x1200 makes everything on
-
Good speakers or Bluetooth speakers to use with GarageBand for iPad?
Hey guys, I got an electric guitar plugged into my iPad to use as an amp. I play it in a church for a music group who perform for the mass. I need speakers as the ones I am currently using don't play loud enough. If they are bluetooth it would be fin
-
When deleting photo's they are not vissible in trash. When I delete a project with photo's I don't have that problem. Is there an answer?
-
With AIR 3.8.0.440, iOS build with "adt -package -target ipa-ad-hoc" fails with a linker error: ld: -pie can only be used when targeting iOS 4.2 or later What's the correct option to suppress this error or does it need a fix for adt? In the app.xml,