As we transition to the new Hyland Community, some post links may be temporarily disrupted as we finalize redirects. We apologize for the inconvenience and are working to resolve this as quickly as possible. Details.
java.lang.IllegalStateException: getWriter() has already been called for this response at org.apache.catalina.connector.Response.getOutputStream(Response.java:568) at org.apache.catalina.connector.ResponseFacade.getOutputStream(ResponseFacade.java:180) at javax.servlet.ServletResponseWrapper.getOutputStream(ServletResponseWrapper.java:101) at org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:786) at org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:354) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.alfresco.filter.CacheControlFilter.doFilter(CacheControlFilter.java:184) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.alfresco.catalina.valve.AVMUrlValve.invoke(AVMUrlValve.java:375) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.alfresco.catalina.valve.AVMUrlValve.invoke(AVMUrlValve.java:718) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595)
INFO: XML validation disabled 20-Jul-2007 01:35:48 org.apache.catalina.core.StandardContext start SEVERE: Error filterStart 20-Jul-2007 01:35:48 org.apache.catalina.core.StandardContext start SEVERE: Context [/manager] startup failed due to previous errors 20-Jul-2007 01:35:50 org.apache.catalina.core.StandardContext start SEVERE: Error filterStart 20-Jul-2007 01:35:50 org.apache.catalina.core.StandardContext start SEVERE: Context [/host-manager] startup failed due to previous errors 20-Jul-2007 01:35:50 org.apache.catalina.core.StandardContext start SEVERE: Error filterStart 20-Jul-2007 01:35:50 org.apache.catalina.core.StandardContext start SEVERE: Context [] startup failed due to previous errors 20-Jul-2007 01:35:51 org.springframework.core.CollectionFactory <clinit> INFO: JDK 1.4+ collections available
20-Jul-2007 01:35:48 org.apache.catalina.core.StandardContext filterStart SEVERE: Exception starting filter alfrecoCacheControlFilter java.lang.NullPointerException at org.alfresco.filter.CacheControlFilter.Init(CacheControlFilter.java:144) at org.alfresco.filter.CacheControlFilter.init(CacheControlFilter.java:110)
20-Jul-2007 03:01:27 org.apache.catalina.core.StandardContext filterStart SEVERE: Exception starting filter alfrecoCacheControlFilter java.lang.NullPointerException at org.alfresco.filter.CacheControlFilter.Init(CacheControlFilter.java:144) at org.alfresco.filter.CacheControlFilter.init(CacheControlFilter.java:110) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:221) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:302) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:78) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3635) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4222) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022) at org.apache.catalina.core.StandardHost.start(StandardHost.java:736) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:448) at org.apache.catalina.core.StandardServer.start(StandardServer.java:700) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:615) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) 20-Jul-2007 03:02:49 org.apache.catalina.core.StandardContext filterStart SEVERE: Exception starting filter alfrecoCacheControlFilter java.lang.NullPointerException at org.alfresco.filter.CacheControlFilter.Init(CacheControlFilter.java:144) at org.alfresco.filter.CacheControlFilter.init(CacheControlFilter.java:110) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:221) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:302) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:78) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3635) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4222) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022) at org.apache.catalina.core.StandardHost.start(StandardHost.java:736) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:448) at org.apache.catalina.core.StandardServer.start(StandardServer.java:700) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:615) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Set<Map.Entry<String,String>> cacheControlRulesEntrySet = FilterInfo_.getCacheControlRulesEntrySet();
$VIRTUAL_TOMCAT_HOME/conf/alfresco-virtserver-context.xml
<bean id="cacheControlInfo" class="org.alfresco.filter.CacheControlFilterInfoBean"> <property name="cacheControlRules"> <map> <entry key="^preview\." value="max-age=${alfresco.virtserver.cache-control.max-age.preview}"/> <entry key="^[^.]+\.[^.]+\.www–sandbox\." value="max-age=${alfresco.virtserver.cache-control.max-age.workarea}"/> <entry key="^[^.]+\.www–sandbox\." value="max-age=${alfresco.virtserver.cache-control.max-age.staging}"/> <!– Default rule (user work areas) –> <entry key="\." value="max-age=${alfresco.virtserver.cache-control.max-age.default}"/> </map> </property> </bean>
I'm guesing you've modified your spring config in some way.
$VIRTUAL_TOMCAT_HOME/conf/alfresco-virtserver-context.xml
NOTE: Cannot use org.alfresco.repo.remote.ReauthenticatingAdvice because that would force spring.jar to live inside common/lib, but we only want it to live in server/lib, so as not to generate classloader problems when virtualizing webapps that use Spring.
9f6387f740577649f914bbb2ccf19b19
alfresco.virtserver.cache-control.max-age.preview=4 alfresco.virtserver.cache-control.max-age.workarea=1800 alfresco.virtserver.cache-control.max-age.staging=1800 alfresco.virtserver.cache-control.max-age.default=1800
cd $VIRTUAL_TOMCAT_HOME find . | grep spring
./server/lib/spring-2.0.2.jar
Sacco,I don't want to assume anything at all at this point,so if I ask stupid/obvious-sounding questions pleasedon't take it the wrong way.
The line-ending theory would be really weird because I'm doingmost of my testing on a Debian Linux distribution myself, and thisissue has never arisen on that box (or my NT or XP box).
However, just to rule it out completely, when you edit this file,how are you doing the edit? Are you winding up with a file thathas mixed line endings?
I edit my file using VIM which is able to conform to either UNIX or DOS endings. The resultantfile is of a uniform ending convention (DOS). Personally, I hatethe DOS convention, but for now we're stuck with it. Some editors(most notably emacs) can actually *hide* the fact that line endingsare of a mixed type, so you'll never even see the ^M chars (depending on your .emacs file's settings).
Therefore, what I'd like you to do is use a pristine never-edited-by-youversion of alfresco-virtserver-context.xml and verify that itsmd5sum is in fact: 9f6387f740577649f914bbb2ccf19b19
Also, I'd like you to verify for me that your virtualization serveris actually Tomcat 5.5.23. Between minor versions, Tomcat'ssemantics for filters changed a bit, so if you're not on *exactly*Tomcat 5.5.23, please correct that now.
As for the tests you ran:[1] What do you mean when you say "every included context has failed"?Is there a log entry? Do you debugging turned on? Again, don'tde-install the filter, or touch alfresco-virtserver-context.xml in any wayafter it has been installed. This is only complicating the task of trouble-shooting what is wrong on your machine.
[2]The typo in the config file is harmless.Incidentally, on 2007-07-23 the typo was fixed on V2.1EThis typo never had any effect on any release because thecut/pasted typo was identical in the section than named the filterand in the section that referred to the filter. For all Tomcat cares thefilter could have been called "moo" in both places. It doesn't matter,as long as the name is the same.
[3] The expiration time is copied directly from your config fileinto the relevant header. If you do an ethereal trace usea tool such as netcat you can see the header values returnedby the filter are correct. If you're seeing a "one minuite off"error between 5-6 min, but correct results at 10 min, you've either discovered a bug in your browser, or you've got clockjitter, or are noticing some sort of quantization effect in theway your browser rounds max-age. One other possibilityis that you're not modifying the max-age value that you thinkyou are. Note that the max-age value can be set independentlyfor the main working layer of a sandbox, the preview layer, andstaging.
Another thing I'd like you to verify is that within $VIRTUAL_TOMCAT_HOME/conf/alfresco-virtserver.properties you have well-defined values for all of the areas (i.e.: none missing!).By default you should have all of the following set:alfresco.virtserver.cache-control.max-age.preview=4 alfresco.virtserver.cache-control.max-age.workarea=1800 alfresco.virtserver.cache-control.max-age.staging=1800 alfresco.virtserver.cache-control.max-age.default=1800
To rule out an installer problem, one thing you could do is this: cd $VIRTUAL_TOMCAT_HOME find . | grep spring The only result you should get back is: ./server/lib/spring-2.0.2.jar