portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vitaly Baranovsky (JIRA)" <jetspeed-...@portals.apache.org>
Subject [jira] Commented: (JS2-777) NullPointerException in PortletEntityImpl.backupValues() under high load
Date Fri, 29 Aug 2008 09:18:44 GMT

    [ https://issues.apache.org/jira/browse/JS2-777?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12626912#action_12626912
] 

Vitaly Baranovsky commented on JS2-777:
---------------------------------------

Abby, problem is because of bad synchronization.
There is some object in this class. As far as I remember, originalValues. So, backupValues
works with this object is not thread safely. So, someone should to synchronize work with this
object.

> NullPointerException in PortletEntityImpl.backupValues() under high load
> ------------------------------------------------------------------------
>
>                 Key: JS2-777
>                 URL: https://issues.apache.org/jira/browse/JS2-777
>             Project: Jetspeed 2
>          Issue Type: Bug
>          Components: Portlet Entities and Preferences
>    Affects Versions: 2.1.2
>         Environment: apache tomcat 5.5.20, SuSe Linux
>            Reporter: Vitaly Baranovsky
>
> There is NullPointerException in log when portal is running under high load.
> I've finded  in all portal src places when using data, filled in backupValues(). Only
PortletEntityImpl.reset() uses this data. But no one method in all portal src doesn't uses
PortletEntityImpl.reset().
> It's looks like there is a sence to remove calls to backupValues() everywhere in portal
src. Isn't it?
> Stackdump of this error:
> java.lang.NullPointerException
> org.apache.jetspeed.components.portletentity.PortletEntityImpl.backupValues(PortletEntityImpl.java:207)
> org.apache.jetspeed.components.portletentity.PortletEntityImpl.getPreferenceSet(PortletEntityImpl.java:153)
> org.apache.jetspeed.components.portletentity.PortletEntityImpl.getPreferenceSet(PortletEntityImpl.java:125)
> org.apache.pluto.core.impl.PortletPreferencesImpl.<init>(PortletPreferencesImpl.java:72)
> org.apache.pluto.factory.impl.PortletPreferencesFactoryImpl.getPortletPreferences(PortletPreferencesFactoryImpl.java:39)
> org.apache.pluto.factory.PortletObjectAccess.getPortletPreferences(PortletObjectAccess.java:127)
> org.apache.pluto.core.impl.RenderRequestImpl.getPreferences(RenderRequestImpl.java:74)
> $PortletRequest_114a8173c0d.getPreferences($PortletRequest_114a8173c0d.java)
> $PortletRequest_114a8173c0b.getPreferences($PortletRequest_114a8173c0b.java)
> net.liga.commons.tapestry.GeneralPortletPage.pageBeginRender(GeneralPortletPage.java:106)
> net.liga.commons.tapestry.GeneralPortletViewPage.pageBeginRender(GeneralPortletViewPage.java:8)
> net.liga.portal.news.newslist.NewsListPage.pageBeginRender(NewsListPage.java:940)
> org.apache.tapestry.AbstractPage.firePageBeginRender(AbstractPage.java:478)
> org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:268)
> org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:366)
> org.apache.tapestry.portlet.PortletRendererImpl.renderPage(PortletRendererImpl.java:76)
> $PortletRenderer_114a8173c02.renderPage($PortletRenderer_114a8173c02.java)
> org.apache.tapestry.portlet.PortletHomeService.service(PortletHomeService.java:80)
> $IEngineService_114a8173bec.service($IEngineService_114a8173bec.java)
> org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:66)
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248)
> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
> $WebRequestServicer_114a8173bba.service($WebRequestServicer_114a8173bba.java)
> $WebRequestServicer_114a8173bb8.service($WebRequestServicer_114a8173bb8.java)
> org.apache.tapestry.portlet.RenderRequestServicerToWebRequestServicerBridge.service(RenderRequestServicerToWebRequestServicerBridge.java:49)
> $RenderRequestServicer_114a8173bb2.service($RenderRequestServicer_114a8173bb2.java)
> $RenderRequestServicer_114a8173a36.service($RenderRequestServicer_114a8173a36.java)
> org.apache.tapestry.portlet.ApplicationPortlet.render(ApplicationPortlet.java:161)
> org.apache.jetspeed.factory.JetspeedPortletInstance.render(JetspeedPortletInstance.java:103)
> org.apache.jetspeed.container.JetspeedContainerServlet.doGet(JetspeedContainerServlet.java:265)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
> org.apache.jetspeed.container.invoker.ServletPortletInvoker.invoke(ServletPortletInvoker.java:245)
> org.apache.jetspeed.container.invoker.ServletPortletInvoker.render(ServletPortletInvoker.java:128)
> org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:119)
> org.apache.jetspeed.container.JetspeedPortletContainerWrapper.renderPortlet(JetspeedPortletContainerWrapper.java:121)
> org.apache.jetspeed.aggregator.impl.RenderingJobImpl.execute(RenderingJobImpl.java:242)
> org.apache.jetspeed.aggregator.impl.PortletRendererImpl.renderNow(PortletRendererImpl.java:226)
> org.apache.jetspeed.aggregator.impl.PageAggregatorImpl.aggregateAndRender(PageAggregatorImpl.java:147)
> org.apache.jetspeed.aggregator.impl.PageAggregatorImpl.aggregateAndRender(PageAggregatorImpl.java:143)
> org.apache.jetspeed.aggregator.impl.PageAggregatorImpl.build(PageAggregatorImpl.java:78)
> org.apache.jetspeed.aggregator.AggregatorValve.invoke(AggregatorValve.java:46)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.aggregator.HeaderAggregatorValve.invoke(HeaderAggregatorValve.java:53)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.decoration.DecorationValve.invoke(DecorationValve.java:130)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.resource.ResourceValveImpl.invoke(ResourceValveImpl.java:130)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.pipeline.valve.impl.ActionValveImpl.invoke(ActionValveImpl.java:184)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.container.ContainerValve.invoke(ContainerValve.java:104)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.profiler.impl.ProfilerValveImpl.invoke(ProfilerValveImpl.java:248)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.security.impl.LoginValidationValveImpl.invoke(LoginValidationValveImpl.java:159)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.security.impl.PasswordCredentialValveImpl.invoke(PasswordCredentialValveImpl.java:150)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.localization.impl.LocalizationValveImpl.invoke(LocalizationValveImpl.java:170)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.security.impl.AbstractSecurityValve$1.run(AbstractSecurityValve.java:138)
> java.security.AccessController.doPrivileged(Native Method)
> javax.security.auth.Subject.doAsPrivileged(Subject.java:454)
> org.apache.jetspeed.security.JSSubject.doAsPrivileged(JSSubject.java:179)
> org.apache.jetspeed.security.impl.AbstractSecurityValve.invoke(AbstractSecurityValve.java:132)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.container.url.impl.PortalURLValveImpl.invoke(PortalURLValveImpl.java:66)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.capabilities.impl.CapabilityValveImpl.invoke(CapabilityValveImpl.java:126)
> org.apache.jetspeed.pipeline.JetspeedPipeline$Invocation.invokeNext(JetspeedPipeline.java:167)
> org.apache.jetspeed.pipeline.JetspeedPipeline.invoke(JetspeedPipeline.java:146)
> org.apache.jetspeed.engine.JetspeedEngine.service(JetspeedEngine.java:227)
> org.apache.jetspeed.engine.JetspeedServlet.doGet(JetspeedServlet.java:242)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> org.apache.jetspeed.engine.servlet.XXSUrlAttackFilter.doFilter(XXSUrlAttackFilter.java:52)
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> net.sf.ehcache.constructs.web.filter.CachingFilter.buildPage(CachingFilter.java:208)
> net.sf.ehcache.constructs.web.filter.CachingFilter.buildPageInfo(CachingFilter.java:161)
> net.sf.ehcache.constructs.web.filter.CachingFilter.doFilter(CachingFilter.java:127)
> net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:89)
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> java.lang.Thread.run(Thread.java:595)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org


Mime
View raw message