Extracting WSRP (modularization of services and configuration)?
by Christophe Laprun
Hi,
I'm trying to extract as much WSRP code as possible from GateIn so that the WSRP service can be updated without having to update GateIn itself and, ideally, be able to package it in a single (ear?) file so that it can easily be removed without having configuration files all over the place.
In this process, I'm running into several issues:
1. The extension mechanism documentation is rather poor at the moment. Nowhere is it explained what extensions are good for, what can they be used for and, more importantly, what *can't* they used for. For example, it is not clear to me whether I could package the WSRP service as an extension (though I'm pretty sure I can't).
2. WSRP-related configuration is, at the moment, spread among several files located at different spots making it very difficult to extract so that it can be removed (or added to a bare portal install). For example, the main configuration file is located in web/portal/src/main/webapp/WEB-INF/conf/wsrp/wsrp-configuration.xml which is linked to by the main configuration.xml file. It would be good if this file (and the linked ones) could, at the very least, be moved to the component/wsrp module and dynamically picked-up at runtime by the kernel. I don't know if this is possible, it might just be a lack of kernel knowledge on my part. However, even if extracting these files (and avoiding to have to link to them in the main configuration.xml file) was possible, there are still other dependencies left to be extracted. In particular, WSRP needs to create JCR workspaces and at the moment, these need to be defined in repository-configuration.xml. Is it possible to split that file so that services can dynamically add new workspaces to the JCR repository as needed at runtime? On that note, a lot of that configuration is pretty much similar for all the workspaces. Wouldn't it make sense to have reasonable default values that users would override only if needed to avoid having long and error-prone XML configuration?
3. The design of the ApplicationRegistryService makes it difficult to support WSRP because of the assumption it makes on the format of portlet identifiers leading to lots of hardcoded information and if-else cases which makes the code brittle and difficult to evolve. Independently of WSRP support, it would break if the portlet container was ever to change its identifier format. I would like to start a discussion on fixing this issue even though I know this is not the priority at the moment.
TL,DR summary: What would be the best way to extract and package the WSRP-related code so that it could be added/removed dynamically (while the server is stopped at least, though, of course, hot-deploy would be even better ^_^)?
Ideas?
Cordialement / Best,
Chris
==
Principal Software Engineer / JBoss Enterprise Middleware Red Hat, Inc.
Follow GateIn: http://blog.gatein.org / http://twitter.com/gatein
Follow me: http://metacosm.codepuccino.com / http://twitter.com/metacosm
13 years, 10 months
packaging cleanup
by Julien Viet
I would like to discuss about packaging cleanup (before we start to discuss about how to make the maven build better), because now we are using fully maven, there are still previous thing remaining in the packaging directory that we will not support anymore:
- packaging/jboss-as module : it was the prototype of the full maven work, I think it can be removed
- packaging/module packaging/pkg packaging/product : the exobuild zombie , it would make sense to be removed as well or at least disconnected from the its parent pom
Julien
13 years, 10 months
Web Container Integration testing (WCI)
by Thomas Heute
As you may know, WCI has evolved to support Servlet 3.0. It will come in
WCI 2.1
Tomcat 7.0 and Jetty ??? should be now supported by WCI and JBoss 6.0 is
coming.
WCI 2.0 used to be tested before release against:
- JBoss 4.2
- JBoss 5.1
- Tomcat 6
I propose that we drop testing JBoss 4.2 (for simplicity and since we
won't propose GateIn packaged with JBoss 4.2) and "only" test for WCI 2.1:
- JBoss 5.1
- JBoss 6.0
- Tomcat 6.0
- Tomcat 7.0
- Jetty ???
Please let me know if that's an issue. Also since I haven't checked, I
would like to know about the tested Jetty environment.
Thomas.
13 years, 10 months
Duplicate user problem in Gatein + mySQL
by tung do thanh
Hi all,
I tested registry 2 users aaa and Aaa in Gatein-3.1.6-PLF in 2 case:
1) gatein + hsqldb: allow registry both
2) gatein + mysql: not allow registry aaa and Aaa, it throw exceptions
org.picketlink.idm.common.exception.IdentityException: IdentityObject
already present in this IdentityStore:name=AAA; type=USER;
realm=HibernateRealm{name='idm_realm'}
at
org.picketlink.idm.impl.store.hibernate.HibernateIdentityStoreImpl.createIdentityObject(HibernateIdentityStoreImpl.java:528)
at
org.picketlink.idm.impl.store.hibernate.HibernateIdentityStoreImpl.createIdentityObject(HibernateIdentityStoreImpl.java:494)
at
org.picketlink.idm.impl.repository.WrapperIdentityStoreRepository.createIdentityObject(WrapperIdentityStoreRepository.java:128)
at
org.picketlink.idm.impl.api.session.managers.PersistenceManagerImpl.createUser(PersistenceManagerImpl.java:132)
at
org.exoplatform.services.organization.idm.UserDAOImpl.createUser(UserDAOImpl.java:133)
at
org.exoplatform.webui.organization.UIAccountInputSet.save(UIAccountInputSet.java:129)
at
org.exoplatform.webui.organization.UIAccountForm$SaveActionListener.execute(UIAccountForm.java:103)
at org.exoplatform.webui.event.Event.broadcast(Event.java:89)
at
org.exoplatform.webui.core.lifecycle.UIFormLifecycle.processAction(UIFormLifecycle.java:123)
at
org.exoplatform.webui.core.lifecycle.UIFormLifecycle.processAction(UIFormLifecycle.java:40)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.webui.core.lifecycle.UIApplicationLifecycle.processAction(UIApplicationLifecycle.java:58)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.webui.core.UIApplication.processAction(UIApplication.java:115)
at
org.exoplatform.webui.application.portlet.PortletApplication.processAction(PortletApplication.java:169)
at
org.exoplatform.webui.application.portlet.PortletApplicationController.processAction(PortletApplicationController.java:80)
at
org.gatein.pc.portlet.impl.jsr168.PortletContainerImpl$Invoker.doFilter(PortletContainerImpl.java:558)
at
org.gatein.pc.portlet.impl.jsr168.api.FilterChainImpl.doFilter(FilterChainImpl.java:109)
at
org.gatein.pc.portlet.impl.jsr168.api.FilterChainImpl.doFilter(FilterChainImpl.java:72)
at
org.gatein.pc.portlet.impl.jsr168.PortletContainerImpl.dispatch(PortletContainerImpl.java:506)
at
org.gatein.pc.portlet.container.ContainerPortletDispatcher.invoke(ContainerPortletDispatcher.java:42)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.EventPayloadInterceptor.invoke(EventPayloadInterceptor.java:197)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.RequestAttributeConversationInterceptor.invoke(RequestAttributeConversationInterceptor.java:119)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.CCPPInterceptor.invoke(CCPPInterceptor.java:65)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.bridge.BridgeInterceptor.invoke(BridgeInterceptor.java:49)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.ContextDispatcherInterceptor.access$001(ContextDispatcherInterceptor.java:49)
at
org.gatein.pc.portlet.aspects.ContextDispatcherInterceptor$1.doCallback(ContextDispatcherInterceptor.java:123)
at
org.gatein.wci.command.CommandDispatcher$CallbackCommand.execute(CommandDispatcher.java:82)
at sun.reflect.GeneratedMethodAccessor138.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.gatein.wci.command.CommandServlet.doGet(CommandServlet.java:135)
at org.gatein.wci.command.CommandServlet.doPost(CommandServlet.java:166)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at org.gatein.wci.command.CommandServlet.include(CommandServlet.java:84)
at
org.gatein.wci.command.CommandDispatcher.include(CommandDispatcher.java:58)
at
org.gatein.wci.tomcat.TC6ServletContainerContext.include(TC6ServletContainerContext.java:87)
at
org.gatein.wci.impl.DefaultServletContainer.include(DefaultServletContainer.java:198)
at
org.gatein.pc.portlet.impl.spi.AbstractServerContext.dispatch(AbstractServerContext.java:69)
at
org.gatein.pc.portlet.aspects.ContextDispatcherInterceptor.invoke(ContextDispatcherInterceptor.java:77)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.SecureTransportInterceptor.invoke(SecureTransportInterceptor.java:69)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.ValveInterceptor.invoke(ValveInterceptor.java:75)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.container.ContainerPortletInvoker.invoke(ContainerPortletInvoker.java:117)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.state.producer.ProducerPortletInvoker.invoke(ProducerPortletInvoker.java:231)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.PortletCustomizationInterceptor.invoke(PortletCustomizationInterceptor.java:76)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.ConsumerCacheInterceptor.invoke(ConsumerCacheInterceptor.java:229)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.federation.impl.FederatedPortletInvokerService.invoke(FederatedPortletInvokerService.java:152)
at
org.gatein.pc.federation.impl.FederatingPortletInvokerService.invoke(FederatingPortletInvokerService.java:177)
at
org.exoplatform.portal.webui.application.UIPortlet.invoke(UIPortlet.java:896)
at
org.exoplatform.portal.webui.application.UIPortletActionListener$ProcessActionActionListener.execute(UIPortletActionListener.java:105)
at org.exoplatform.webui.event.Event.broadcast(Event.java:89)
at
org.exoplatform.portal.webui.application.UIPortletLifecycle.processAction(UIPortletLifecycle.java:127)
at
org.exoplatform.portal.webui.application.UIPortletLifecycle.processAction(UIPortletLifecycle.java:62)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processAction(UIPortalApplicationLifecycle.java:73)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processAction(UIPortalApplicationLifecycle.java:37)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.webui.core.UIApplication.processAction(UIApplication.java:115)
at
org.exoplatform.portal.application.PortalRequestHandler.execute(PortalRequestHandler.java:107)
at
org.exoplatform.web.WebAppController.service(WebAppController.java:161)
at
org.exoplatform.portal.application.PortalController.onService(PortalController.java:127)
at
org.exoplatform.container.web.AbstractHttpServlet.service(AbstractHttpServlet.java:132)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.web.filter.ExtensibleFilter$ExtensibleFilterChain.doFilter(ExtensibleFilter.java:114)
at
org.exoplatform.web.filter.ExtensibleFilter.doFilter(ExtensibleFilter.java:84)
at
org.exoplatform.web.filter.GenericFilter.doFilter(GenericFilter.java:78)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.web.CacheUserProfileFilter.doFilter(CacheUserProfileFilter.java:72)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.frameworks.jcr.web.ThreadLocalSessionProviderInitializedFilter.doFilter(ThreadLocalSessionProviderInitializedFilter.java:116)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.services.security.web.SetCurrentIdentityFilter.doFilter(SetCurrentIdentityFilter.java:90)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.web.login.ClusteredSSOFilter.doFilter(ClusteredSSOFilter.java:73)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.container.web.PortalContainerFilter.doFilter(PortalContainerFilter.java:69)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:421)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
Dec 20, 2010 3:54:34 PM org.exoplatform.webui.core.UIApplication
processAction
SEVERE: Error during the processAction phase
java.lang.IllegalArgumentException: User cannot be null
at
org.picketlink.idm.impl.api.session.managers.AbstractManager.checkNotNullArgument(AbstractManager.java:271)
at
org.picketlink.idm.impl.api.session.managers.AttributesManagerImpl.updatePassword(AttributesManagerImpl.java:558)
at
org.exoplatform.services.organization.idm.UserDAOImpl.persistUserInfo(UserDAOImpl.java:449)
at
org.exoplatform.services.organization.idm.UserDAOImpl.createUser(UserDAOImpl.java:141)
at
org.exoplatform.webui.organization.UIAccountInputSet.save(UIAccountInputSet.java:129)
at
org.exoplatform.webui.organization.UIAccountForm$SaveActionListener.execute(UIAccountForm.java:103)
at org.exoplatform.webui.event.Event.broadcast(Event.java:89)
at
org.exoplatform.webui.core.lifecycle.UIFormLifecycle.processAction(UIFormLifecycle.java:123)
at
org.exoplatform.webui.core.lifecycle.UIFormLifecycle.processAction(UIFormLifecycle.java:40)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.webui.core.lifecycle.UIApplicationLifecycle.processAction(UIApplicationLifecycle.java:58)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.webui.core.UIApplication.processAction(UIApplication.java:115)
at
org.exoplatform.webui.application.portlet.PortletApplication.processAction(PortletApplication.java:169)
at
org.exoplatform.webui.application.portlet.PortletApplicationController.processAction(PortletApplicationController.java:80)
at
org.gatein.pc.portlet.impl.jsr168.PortletContainerImpl$Invoker.doFilter(PortletContainerImpl.java:558)
at
org.gatein.pc.portlet.impl.jsr168.api.FilterChainImpl.doFilter(FilterChainImpl.java:109)
at
org.gatein.pc.portlet.impl.jsr168.api.FilterChainImpl.doFilter(FilterChainImpl.java:72)
at
org.gatein.pc.portlet.impl.jsr168.PortletContainerImpl.dispatch(PortletContainerImpl.java:506)
at
org.gatein.pc.portlet.container.ContainerPortletDispatcher.invoke(ContainerPortletDispatcher.java:42)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.EventPayloadInterceptor.invoke(EventPayloadInterceptor.java:197)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.RequestAttributeConversationInterceptor.invoke(RequestAttributeConversationInterceptor.java:119)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.CCPPInterceptor.invoke(CCPPInterceptor.java:65)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.bridge.BridgeInterceptor.invoke(BridgeInterceptor.java:49)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.ContextDispatcherInterceptor.access$001(ContextDispatcherInterceptor.java:49)
at
org.gatein.pc.portlet.aspects.ContextDispatcherInterceptor$1.doCallback(ContextDispatcherInterceptor.java:123)
at
org.gatein.wci.command.CommandDispatcher$CallbackCommand.execute(CommandDispatcher.java:82)
at sun.reflect.GeneratedMethodAccessor138.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.gatein.wci.command.CommandServlet.doGet(CommandServlet.java:135)
at org.gatein.wci.command.CommandServlet.doPost(CommandServlet.java:166)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at org.gatein.wci.command.CommandServlet.include(CommandServlet.java:84)
at
org.gatein.wci.command.CommandDispatcher.include(CommandDispatcher.java:58)
at
org.gatein.wci.tomcat.TC6ServletContainerContext.include(TC6ServletContainerContext.java:87)
at
org.gatein.wci.impl.DefaultServletContainer.include(DefaultServletContainer.java:198)
at
org.gatein.pc.portlet.impl.spi.AbstractServerContext.dispatch(AbstractServerContext.java:69)
at
org.gatein.pc.portlet.aspects.ContextDispatcherInterceptor.invoke(ContextDispatcherInterceptor.java:77)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.SecureTransportInterceptor.invoke(SecureTransportInterceptor.java:69)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.ValveInterceptor.invoke(ValveInterceptor.java:75)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.container.ContainerPortletInvoker.invoke(ContainerPortletInvoker.java:117)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.state.producer.ProducerPortletInvoker.invoke(ProducerPortletInvoker.java:231)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.PortletCustomizationInterceptor.invoke(PortletCustomizationInterceptor.java:76)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.portlet.aspects.ConsumerCacheInterceptor.invoke(ConsumerCacheInterceptor.java:229)
at
org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:87)
at
org.gatein.pc.federation.impl.FederatedPortletInvokerService.invoke(FederatedPortletInvokerService.java:152)
at
org.gatein.pc.federation.impl.FederatingPortletInvokerService.invoke(FederatingPortletInvokerService.java:177)
at
org.exoplatform.portal.webui.application.UIPortlet.invoke(UIPortlet.java:896)
at
org.exoplatform.portal.webui.application.UIPortletActionListener$ProcessActionActionListener.execute(UIPortletActionListener.java:105)
at org.exoplatform.webui.event.Event.broadcast(Event.java:89)
at
org.exoplatform.portal.webui.application.UIPortletLifecycle.processAction(UIPortletLifecycle.java:127)
at
org.exoplatform.portal.webui.application.UIPortletLifecycle.processAction(UIPortletLifecycle.java:62)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processAction(UIPortalApplicationLifecycle.java:73)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processAction(UIPortalApplicationLifecycle.java:37)
at
org.exoplatform.webui.core.UIComponent.processAction(UIComponent.java:137)
at
org.exoplatform.webui.core.UIApplication.processAction(UIApplication.java:115)
at
org.exoplatform.portal.application.PortalRequestHandler.execute(PortalRequestHandler.java:107)
at
org.exoplatform.web.WebAppController.service(WebAppController.java:161)
at
org.exoplatform.portal.application.PortalController.onService(PortalController.java:127)
at
org.exoplatform.container.web.AbstractHttpServlet.service(AbstractHttpServlet.java:132)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.web.filter.ExtensibleFilter$ExtensibleFilterChain.doFilter(ExtensibleFilter.java:114)
at
org.exoplatform.web.filter.ExtensibleFilter.doFilter(ExtensibleFilter.java:84)
at
org.exoplatform.web.filter.GenericFilter.doFilter(GenericFilter.java:78)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.web.CacheUserProfileFilter.doFilter(CacheUserProfileFilter.java:72)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.frameworks.jcr.web.ThreadLocalSessionProviderInitializedFilter.doFilter(ThreadLocalSessionProviderInitializedFilter.java:116)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.services.security.web.SetCurrentIdentityFilter.doFilter(SetCurrentIdentityFilter.java:90)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.web.login.ClusteredSSOFilter.doFilter(ClusteredSSOFilter.java:73)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.container.web.PortalContainerFilter.doFilter(PortalContainerFilter.java:69)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:421)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
Pls discus about this problem, how to fix it?
Thanks for your advise.
--
*Thanh Tung Do
Software engineer - eXo Platform SEA.
Add: Floor 7&8 - Thai Ha Building, 18/11 Thai Ha Str., Hanoi
Email: tungdt.dtt(a)gmail.com
Company website: www.exoplatform.org <http://www.exoplatform.vn>*
13 years, 10 months