Voor mijn web application heb ik het standaard gzip compression filter gebruikt zoals dat bij tomcat in de examples directory voorkomt:
Namelijk diegene die in TOMCAT_HOME/webapps/examples/WEB-INF/classes/compressionFilters (TOMCAT_HOME/webapps/servlets-examples/WEB-INF/classes/compressionFilters) voorkomt.
Echter, nu gebeurd het dat ik in firefox allemaal rommel op mijn scherm kreeg, terwijl Konqueror de pagina wel goed weergeeft. Na een klein beetje zoeken komt dit omdat ik in sommige servlets (waarvan de content geinclude wordt op een jsp pagina) een response.setContentType("text/html"); hebt gezet. De contentype van de gehele pagina wordt dan klaarblijkelijk op deze gezet. Ik kan dit wel weghalen, maar het feit blijft de content die de servlet genereerd wel degelijk text/html is.
Los van de problemen met firefox geeft wget altijd een Unsupported scheme, zelfs op de pagina's waar geen response.setContentType("text/html"); in voorkomt.
Zijn er andere mensen hier die ervaring hebben met dit filter van tomcat? Of die kunnen zeggen waarom wget altijd faalt en mijn servlet niet mogen zeggen dat ze html genereren?
edit:
response.setContentType("text/html"); weghalen in pagina's die geheel door servlets gegenereerd worden werkt natuurlijk niet, dan denkt de browser dat het een bin resource is.
Het compressie filter kan dus niet tegen dit statement, maar zonder werkt het ook niet.
edit2:
response.setHeader("Content-Encoding", "gzip"); in een toplevel filter zetten helpt ook niet. Sterker nog, dit maakt het alleen maar erger: alle pagina's gaan dan fout (geven junk in firefox).
Namelijk diegene die in TOMCAT_HOME/webapps/examples/WEB-INF/classes/compressionFilters (TOMCAT_HOME/webapps/servlets-examples/WEB-INF/classes/compressionFilters) voorkomt.
Echter, nu gebeurd het dat ik in firefox allemaal rommel op mijn scherm kreeg, terwijl Konqueror de pagina wel goed weergeeft. Na een klein beetje zoeken komt dit omdat ik in sommige servlets (waarvan de content geinclude wordt op een jsp pagina) een response.setContentType("text/html"); hebt gezet. De contentype van de gehele pagina wordt dan klaarblijkelijk op deze gezet. Ik kan dit wel weghalen, maar het feit blijft de content die de servlet genereerd wel degelijk text/html is.
Los van de problemen met firefox geeft wget altijd een Unsupported scheme, zelfs op de pagina's waar geen response.setContentType("text/html"); in voorkomt.
Zijn er andere mensen hier die ervaring hebben met dit filter van tomcat? Of die kunnen zeggen waarom wget altijd faalt en mijn servlet niet mogen zeggen dat ze html genereren?
edit:
response.setContentType("text/html"); weghalen in pagina's die geheel door servlets gegenereerd worden werkt natuurlijk niet, dan denkt de browser dat het een bin resource is.
Het compressie filter kan dus niet tegen dit statement, maar zonder werkt het ook niet.
edit2:
response.setHeader("Content-Encoding", "gzip"); in een toplevel filter zetten helpt ook niet. Sterker nog, dit maakt het alleen maar erger: alle pagina's gaan dan fout (geven junk in firefox).
[ Voor 22% gewijzigd door Verwijderd op 04-05-2005 18:30 . Reden: wat geprobeerd en werkt natuurlijk niet... ]