cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lars Huttar <lars_hut...@sil.org>
Subject c3: null pointer exception in ResponseHeaderCollector.isModifiedResponse
Date Fri, 23 Mar 2012 20:08:40 GMT
Hello,

I'm attempting to port our Cocoon 2.1.11 sitemap to C3, little by little.
So far I have gotten a very simple pipeline to work:
<map:match pattern="test.html">
<map:read src="test.html" />
</map:match>
Hooray!

However when I get a little more complicated, I get an exception:
<!-- {map:1} = generator name, {map:2} = param, {map:3} = value -->
<map:match pattern="generator/*/*/*/source">
<map:generate src="generators/{map:1}.xml" />
<map:serialize type="xml"/>
</map:match>

The "{map:1}" used to be just "{1}", but from the c3 samples it looks 
like we now should use "{map:1}". Fine.
But when I try to call this pipeline, using "" in the browser, I get an 
empty response (status 200 OK, but zero bytes of content). And the 
cocoon.log has the following error (shown with preceding context):

2012-03-23 14:33:30,598 DEBUG 11202659@qtp-14536088-0 
org.apache.cocoon.sitemap.node.MatchNode$MatcherContext - Matching: 
expression=generator/*/*/*/source, 
testValue=generator/languages-in-country/country_id/77/source, 
result={3=77, 2=country_id, 1=languages-in-country, 
0=generator/languages-in-country/country_id/77/source}
2012-03-23 14:33:30,598 DEBUG 11202659@qtp-14536088-0 
org.apache.cocoon.sitemap.node.AbstractSitemapNode - 
GenerateNode(src=generators/{map:1}.xml, 
type=url).invoke(/generator/languages-in-country/country_id/77/source)
2012-03-23 14:33:30,598 DEBUG 11202659@qtp-14536088-0 
org.apache.cocoon.pipeline.AbstractPipeline - Adding component 
XMLGenerator(hashCode=29969233 
internalGenerator=URLGenerator(hashCode=19145797 
source=file:/C:/Users/HuttarL/Documents/work/c3/theParent/ethnologue-17-pub/src/main/resources/COB-INF/generators/languages-in-country.xml))

to pipeline [CachingPipeline(hashCode=7335482 components=[])].
2012-03-23 14:33:30,598 DEBUG 11202659@qtp-14536088-0 
org.apache.cocoon.sitemap.node.AbstractSitemapNode - 
SerializeNode(type=xml).invoke(/generator/languages-in-country/country_id/77/source)
2012-03-23 14:33:30,598 DEBUG 11202659@qtp-14536088-0 
org.apache.cocoon.pipeline.AbstractPipeline - Adding component 
XMLSerializer(hashCode=8467590) to pipeline 
[CachingPipeline(hashCode=7335482 
components=[XMLGenerator(hashCode=29969233 
internalGenerator=URLGenerator(hashCode=19145797 
source=file:/C:/Users/HuttarL/Documents/work/c3/theParent/ethnologue-17-pub/src/main/resources/COB-INF/generators/languages-in-country.xml))])].
2012-03-23 14:33:30,599 INFO  11202659@qtp-14536088-0 
org.apache.cocoon.servlet.RequestProcessor - Sitemap execution for 
/generator/languages-in-country/country_id/77/source took 2.818942 ms.
2012-03-23 14:33:30,600 ERROR 11202659@qtp-14536088-0 
org.apache.cocoon.servlet.XMLSitemapServlet - Cocoon can't process the 
request.
java.lang.NullPointerException: null
     at 
org.apache.cocoon.servlet.collector.ResponseHeaderCollector.isModifiedResponse(ResponseHeaderCollector.java:176)

~[cocoon-servlet-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
     at 
org.apache.cocoon.servlet.RequestProcessor.sendSitemapResponse(RequestProcessor.java:354)

~[cocoon-servlet-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
     at 
org.apache.cocoon.servlet.RequestProcessor.service(RequestProcessor.java:92) 
~[cocoon-servlet-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
     at 
org.apache.cocoon.servlet.XMLSitemapServlet.service(XMLSitemapServlet.java:54) 
~[cocoon-servlet-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 
[servlet-api-2.5-20081211.jar:na]

Up to the error, everything seems to be going great: the source is 
expanded to "file:/C:/.../generators/languages-in-country.xml", which is 
a file that does exist, I double-checked.


I also tried using named parameters, following the samples' example:
<map:match pattern="generator/{genName}/{paramName}/{value}/source">
<map:generate src="generators/{map:genName}.xml" />

But the result was the same.

So my questions are, (1) How to fix this NPE? but also (2) why do I see 
an empty HTTP response (status 200 OK) in the browser for certain errors 
(like this one), instead of an error message in the browser? Some errors 
do show up in the browser, but not this one.

Thanks for any help.

Lars


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Mime
View raw message