Hi,
i've been trying to use the XHTMLSerializer in cocoon 2.1.9 and am getting a

'java.lang.NoClassDefFoundError'

I looked at the contents of the cocoon-serializers-block.jar, jar tf cocoon-serializers-block.jar , and the XHTMLSerializer is there!:

org/apache/cocoon/components/serializers/XHTMLSerializer.class
....
org/apache/cocoon/components/serializers/encoding/XHTMLEncoder.class

What is the issue here?

The stack trace reads as:

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException
: Servlet execution threw an exception
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)

root cause


java.lang.NoClassDefFoundError
org.apache.cocoon.components.serializers.EncodingSerializer.configure(EncodingSerializer.java:167)
org.apache.cocoon.components.serializers.XHTMLSerializer.configure(XHTMLSerializer.java:114)
org.apache.avalon.framework.container.ContainerUtil.configure(ContainerUtil.java:201)
org.apache.avalon.excalibur.component.DefaultComponentFactory.newInstance(DefaultComponentFactory.java:289)
org.apache.avalon.excalibur.pool.InstrumentedResourceLimitingPool.newPoolable (InstrumentedResourceLimitingPool.java:655)
org.apache.avalon.excalibur.pool.InstrumentedResourceLimitingPool.get(InstrumentedResourceLimitingPool.java :371)
org.apache.avalon.excalibur.component.PoolableComponentHandler.doGet(PoolableComponentHandler.java:198)
org.apache.avalon.excalibur.component.ComponentHandler.get(ComponentHandler.java:381)
org.apache.avalon.excalibur.component.ExcaliburComponentSelector.select(ExcaliburComponentSelector.java:215)
org.apache.cocoon.components.ExtendedComponentSelector.select (ExtendedComponentSelector.java:267)
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setSerializer(AbstractProcessingPipeline.java :308)
org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.setSerializer(AbstractCachingProcessingPipeline.java :161)
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:103)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:102)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNode.java:31)
org.apache.cocoon.components.treeprocessor.sitemap.CallNode.invoke(CallNode.java:93)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:46)
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java :142)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:92)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:234)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.handleCocoonRedirect(ConcreteTreeProcessor.java:298)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.access$000 (ConcreteTreeProcessor.java:47)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor$TreeProcessorRedirector.cocoonRedirect (ConcreteTreeProcessor.java:339)
org.apache.cocoon.environment.ForwardRedirector.redirect(ForwardRedirector.java:59)
org.apache.cocoon.components.flow.AbstractInterpreter.forwardTo(AbstractInterpreter.java:209)
org.apache.cocoon.components.flow._javascript_.fom.FOM_JavaScriptInterpreter.forwardTo(FOM_JavaScriptInterpreter.java:905)
org.apache.cocoon.components.flow._javascript_.fom.FOM_Cocoon.forwardTo (FOM_Cocoon.java:698)
org.apache.cocoon.components.flow._javascript_.fom.FOM_Cocoon.jsFunction_sendPage(FOM_Cocoon.java:269)
inv10.invoke()
org.mozilla._javascript_.FunctionObject.doInvoke (FunctionObject.java:523)
org.mozilla._javascript_.FunctionObject.call(FunctionObject.java:438)
org.mozilla._javascript_.ScriptRuntime.call(ScriptRuntime.java:1244)
org.mozilla._javascript_.continuations.ContinuationInterpreter.interpret (ContinuationInterpreter.java:1134)
org.mozilla._javascript_.continuations.ContinuationInterpreter.interpret(ContinuationInterpreter.java :190)
org.mozilla._javascript_.continuations.ContinuationInterpreter.interpret(ContinuationInterpreter.java:138)
org.mozilla._javascript_.continuations.InterpretedFunctionImpl.call(InterpretedFunctionImpl.java:121)
org.mozilla._javascript_.ScriptRuntime.call(ScriptRuntime.java:1244)
org.apache.cocoon.components.flow._javascript_.fom.FOM_JavaScriptInterpreter.callFunction (FOM_JavaScriptInterpreter.java:757)
org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java :138)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:46)
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:142)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java :92)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:234)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:176)
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:252)
org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke (MountNode.java:117)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java :46)
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:142)
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:68)
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java :92)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:234)
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:176)
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:252)
org.apache.cocoon.Cocoon.process(Cocoon.java :686)
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1153)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
regards

Andrew