According to documentation, to change the default XML Parser to user Xerces
(as opposed to JAXP), the following two steps must be taken:
1) Add
"-Dorg.apache.cocoon.components.parser.Parser=org.apache.cocoon.components.p
arser.XercesParser" to the JVM Startup args for your servlet engine.
2) Place the following line in the cocoon.xconf: <parser
class="org.apache.cocoon.components.parser.XercesParser"
logger="core.parser"/>
This worked for me in Cocoon 2.0. However now that I moved to 2.0.1, this
causes an exception and fails to initialize Cocoon. If I remove the above
steps, Cocoon runs. However I am getting other exceptions that may be
caused by my change in parsers. What is the appropriate way to override the
default parser now?
Here is the exception (notice the [CONFLICT] line):
ERROR (2002-02-12) 11:27.37:686 [core] (Unknown-URI)
Unknown-thread/Cocoon: Could not load parser, Cocoon object not created.
org.apache.avalon.framework.component.ComponentException: Could not set up
Component for role: org.apache.cocoon.components.parser.Parser
at
org.apache.avalon.excalibur.component.ExcaliburComponentManager.addComponent
(ExcaliburComponentManager.java:546)
at org.apache.cocoon.Cocoon.initialize(Cocoon.java:242)
at
org.apache.cocoon.servlet.CocoonServlet.createCocoon(CocoonServlet.java:991)
at
org.apache.cocoon.servlet.CocoonServlet.init(CocoonServlet.java:308)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:203)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:161)
at
allaire.jrun.servlet.JRunServletLoader.loadServlet(../servlet/JRunServletLoa
der.java:149)
at
allaire.jrun.servlet.JRunSE.getServletReference(../servlet/JRunSE.java:1705)
at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1231)
at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
java.lang.Exception: [CONFLICT] lifestyle interfaces:
org.apache.cocoon.components.parser.XercesParser
at
org.apache.avalon.excalibur.component.ComponentHandler.getComponentHandler(C
omponentHandler.java:61)
at
org.apache.avalon.excalibur.component.ExcaliburComponentManager.addComponent
(ExcaliburComponentManager.java:528)
at org.apache.cocoon.Cocoon.initialize(Cocoon.java:242)
at
org.apache.cocoon.servlet.CocoonServlet.createCocoon(CocoonServlet.java:991)
at
org.apache.cocoon.servlet.CocoonServlet.init(CocoonServlet.java:308)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:203)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:161)
at
allaire.jrun.servlet.JRunServletLoader.loadServlet(../servlet/JRunServletLoa
der.java:149)
at
allaire.jrun.servlet.JRunSE.getServletReference(../servlet/JRunSE.java:1705)
at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1231)
at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
ERROR (2002-02-12) 11:27.37:696 [access] (Unknown-URI)
Unknown-thread/CocoonServlet: Exception reloading
org.apache.avalon.framework.configuration.ConfigurationException: Could not
load parser org.apache.cocoon.components.parser.XercesParser
at org.apache.cocoon.Cocoon.initialize(Cocoon.java:245)
at
org.apache.cocoon.servlet.CocoonServlet.createCocoon(CocoonServlet.java:991)
at
org.apache.cocoon.servlet.CocoonServlet.init(CocoonServlet.java:308)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:203)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:161)
at
allaire.jrun.servlet.JRunServletLoader.loadServlet(../servlet/JRunServletLoa
der.java:149)
at
allaire.jrun.servlet.JRunSE.getServletReference(../servlet/JRunSE.java:1705)
at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1231)
at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
org.apache.avalon.framework.component.ComponentException: Could not set up
Component for role: org.apache.cocoon.components.parser.Parser
at
org.apache.avalon.excalibur.component.ExcaliburComponentManager.addComponent
(ExcaliburComponentManager.java:546)
at org.apache.cocoon.Cocoon.initialize(Cocoon.java:242)
at
org.apache.cocoon.servlet.CocoonServlet.createCocoon(CocoonServlet.java:991)
at
org.apache.cocoon.servlet.CocoonServlet.init(CocoonServlet.java:308)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:203)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:161)
at
allaire.jrun.servlet.JRunServletLoader.loadServlet(../servlet/JRunServletLoa
der.java:149)
at
allaire.jrun.servlet.JRunSE.getServletReference(../servlet/JRunSE.java:1705)
at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1231)
at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
java.lang.Exception: [CONFLICT] lifestyle interfaces:
org.apache.cocoon.components.parser.XercesParser
at
org.apache.avalon.excalibur.component.ComponentHandler.getComponentHandler(C
omponentHandler.java:61)
at
org.apache.avalon.excalibur.component.ExcaliburComponentManager.addComponent
(ExcaliburComponentManager.java:528)
at org.apache.cocoon.Cocoon.initialize(Cocoon.java:242)
at
org.apache.cocoon.servlet.CocoonServlet.createCocoon(CocoonServlet.java:991)
at
org.apache.cocoon.servlet.CocoonServlet.init(CocoonServlet.java:308)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:203)
at
allaire.jrun.servlet.JRunServletLoader.loadServletInstance(../servlet/JRunSe
rvletLoader.java:161)
at
allaire.jrun.servlet.JRunServletLoader.loadServlet(../servlet/JRunServletLoa
der.java:149)
at
allaire.jrun.servlet.JRunSE.getServletReference(../servlet/JRunSE.java:1705)
at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1231)
at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
Thanks,
Aaron
---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>