Hmm, it looks like this is a regression of a bug which was found in 3.0
and fixed. It looks like the fix may have been committed only the to
3.0 branch instead of the trunk, so now it's resurfaced in 3.1.
The problem is that the weblog last modified time is null for all
weblogs when upgrading from 2.x and there is a missing check for null.
So that's why the problem goes away when you update the settings for all
weblogs, it sets that last modified date.
-- Allen
Oscar del Rio wrote:
Upgrading from 2.2-rc1 to 3.1-rc1 (since there was no 2.2 release, I
took care of the 2.1 to 2.3 dbscript manually, making a
220-to-230-migration.sql and applying the others to 310).
Installation went OK, I can login as admin, etc, but accessing old
weblog entries result in the errors below. If I go to the respective
weblog settings and re-save the configuration (without any changes), the
weblog works again fine. I have to do that for every weblog (not a prob
here since we only have a handful of users but it would be a pain if we
had hundreds of weblogs)
I don't know if there was anything I missed. I installed the optional
themes and editors, set the property "rendering.legacyModels.enabled=true"
Unfortunately I never tried the 2.3 or later official releases, so I
don't know if the problem might be something to do with the 2.2-rc1
upgrade. I wonder if anyone upgrading from 2.1 or 2.3 is having similar
problems.
---- Web page error
type Exception report
message
description The server encountered an internal error () that prevented
it from fulfilling this request.
exception
Error message:
java.lang.NullPointerException
org.apache.roller.ui.rendering.servlets.PageServlet.doGet(PageServlet.java:171)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.roller.ui.core.filters.CompressionFilter.doFilter(CompressionFilter.java:80)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:97)
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.securechannel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:138)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:217)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:129)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)
org.apache.roller.ui.core.filters.StrutsCharEncodingFilter.doFilter(StrutsCharEncodingFilter.java:90)
org.apache.roller.ui.core.filters.CharEncodingFilter.doFilter(CharEncodingFilter.java:81)
org.apache.roller.ui.rendering.WeblogRequestMapper.handleRequest(WeblogRequestMapper.java:216)
org.apache.roller.ui.rendering.filters.RequestMappingFilter.doFilter(RequestMappingFilter.java:128)
org.apache.roller.ui.core.filters.InitFilter.doFilter(InitFilter.java:71)
org.apache.roller.ui.core.filters.PersistenceSessionFilter.doFilter(PersistenceSessionFilter.java:60)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.securechannel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:138)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:217)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)
org.apache.roller.ui.core.filters.SchemeEnforcementFilter.doFilter(SchemeEnforcementFilter.java:121)
org.apache.roller.ui.core.filters.CharEncodingFilter.doFilter(CharEncodingFilter.java:81)
---- roller.log
ERROR 2006-11-22 16:48:53,865 ApplicationDispatcher:invoke -
Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: getOutputStream() has already been
called for this response
at org.apache.catalina.connector.Response.getWriter(Response.java:596)
org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:186)
org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:124)
org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:117)
org.apache.jasper.runtime.JspWriterImpl.flush(JspWriterImpl.java:172)
org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(InsertTag.java:887)
org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:460)
org.apache.jsp.WEB_002dINF.jsps.error_jsp._jspx_meth_tiles_insert_0(org.apache.jsp.WEB_002dINF.jsps.error_jsp:268)
org.apache.jsp.WEB_002dINF.jsps.error_jsp._jspService(org.apache.jsp.WEB_002dINF.jsps.error_jsp:161)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
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.processRequest(ApplicationDispatcher.java:465)
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:362)
org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:211)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:134)
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:856)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
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)