Re: Barracuda and Jivan
Jacob Kjome <[email protected]>
| Newsgroups | gmane.comp.java.enhydra.barracuda.general |
|---|---|
| Message-ID | <[email protected]> |
Hmm... Arno, I'm not sure that what you are saying here is true. I've
just tested this under Tomcat-5.0.16 and I replaced the existing
xercesImpl.jar and xmlParserAPIs.jar with those from Xerces-2.6.0. These
are in the common/endorsed directory. I ran Tomcat and loaded up a
document in Jivan in almost exactly the same way Jancsi is doing it and it
worked just fine. No errors. The document loaded perfectly. Not sure how
you are seeing something different???
Jake
At 06:10 PM 12/25/2003 +0100, you wrote:
>Hi Jancsi,
>
>I am still looking into that problem. However, I know that the
>org.w3c.dom.ls package has changed recently. Yes, the W3C has changed the
>the interface classes within this package. Xerces 2.4.0 used the old
>interfaces, where Xerces 2.5.0+ uses the never ones. Jivan is based on the
>older interfaces. Well if I change Jivan to use the never interface, Jivan
>applications will break when they are deployed on older system.
>
>On Tomcat the problem is that the Xerces parser from the
>CATALINA_HOME/common/endorsed even if the classes are provided by the
>jivan.jar. So I need to change Jivan so it can work with 2 different sets
>of interfaces. Other application server have similar 'endorsed'
>techniques, causing the same problem.
>
>Tomcat 5 uses Xerces 2.5.0, but Tomcat 4 uses versions pre Xerces 2.5.0. I
>will work on a fix to be released as soon as possible. But that will be
>after Xmas, sorry. If you are really working over Xmas, you could try to
>downgrade your version of Xerces to 2.4.0.
>
>-Arno
>
>
>
>
>
>
>Jancsi Farkas wrote:
>>Hello
>>First, I take this opportunity to wish everybody a Merry Christmas and a
>>Happy New Year :)
>>Now on my problem:
>>I'm trying to integrate barracuda with jivan, until now unsuccessfully. I
>>keep getting this exception, and I don't know from where to start looking
>>for a solution. Anybody has a clue about this?
>>org.jivan.html.JivanHTMLException:
>>java.lang.reflect.InvocationTargetException
>> at org.jivan.html.parser.LocationRecorder.invoke(Unknown Source)
>> at $Proxy0.startElement(Unknown Source)
>> at org.jivan.html.parser.HTMLTagCloser.startElement(Unknown Source)
>> at
>> org.jivan.cyberneko.html.HTMLScanner$ContentScanner.scanStartElement(Unknown
>> Source)
>> at org.jivan.cyberneko.html.HTMLScanner$ContentScanner.scan(Unknown
>> Source)
>> at org.jivan.cyberneko.html.HTMLScanner.scanDocument(Unknown Source)
>> at org.jivan.cyberneko.html.HTMLConfiguration.parse(Unknown Source)
>> at org.jivan.cyberneko.html.HTMLConfiguration.parse(Unknown Source)
>> at org.jivan.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>> at org.jivan.html.document.MasterDocument.load(Unknown Source)
>> at org.jivan.html.document.DocumentFactory.docManFor(Unknown Source)
>> at
>> org.enhydra.barracuda.core.util.dom.JivanDOMFactory.getInstance(JivanDOMFactory.java:98)
>>
>> at
>> org.enhydra.barracuda.core.util.dom.DefaultDOMLoader._getDOMFromFile(DefaultDOMLoader.java:192)
>>
>> at
>> org.enhydra.barracuda.core.util.dom.DefaultDOMLoader.getDOM(DefaultDOMLoader.java:105)
>>
>> at
>> org.simple.test.admin.screens.TestScreen$RenderTestHandler.handleViewEvent(TestScreen.java:109)
>>
>> at
>> org.enhydra.barracuda.core.event.DefaultBaseEventListener.handleEvent(DefaultBaseEventListener.java:66)
>>
>> at
>> org.enhydra.barracuda.core.event.DefaultEventDispatcher.notifyListeners(DefaultEventDispatcher.java:415)
>>
>> at
>> org.enhydra.barracuda.core.event.DefaultEventDispatcher.dispatch(DefaultEventDispatcher.java:185)
>>
>> at
>> org.enhydra.barracuda.core.event.DefaultEventDispatcher.dispatchEvent(DefaultEventDispatcher.java:122)
>>
>> at
>> org.enhydra.barracuda.core.event.DefaultEventBroker.dispatchEvent(DefaultEventBroker.java:494)
>>
>> at
>> org.enhydra.barracuda.core.event.ApplicationGateway.handleDefaultExt(ApplicationGateway.java:415)
>>
>> at
>> org.enhydra.barracuda.core.event.ApplicationGateway.handleDefault(ApplicationGateway.java:235)
>>
>> at
>> org.enhydra.barracuda.core.event.ApplicationGateway.doGet(ApplicationGateway.java:728)
>>
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>> at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
>>
>> at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>>
>> at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
>>
>> at
>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>> at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>>
>> at
>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>> at
>> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396)
>> at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>> at
>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>>
>> at
>> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
>>
>> at
>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>>
>> at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
>> at
>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>> at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>>
>> at
>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>> at
>> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
>> at
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
>> at
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:380)
>>
>> at
>> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
>> at
>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:533)
>>
>> at java.lang.Thread.run(Thread.java:536)
>>Caused by: java.lang.reflect.InvocationTargetException
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>
>> at java.lang.reflect.Method.invoke(Method.java:324)
>> ... 54 more
>>Caused by: java.lang.NoSuchMethodError:
>>org.w3c.dom.ls.DOMBuilderFilter.startElement(Lorg/w3c/dom/Element;)S
>> at
>> org.jivan.apache.xerces.parsers.AbstractDOMParser.startElement(Unknown Source)
>> at
>> org.jivan.cyberneko.html.filters.DefaultFilter.startElement(Unknown Source)
>> ... 58 more
>>
>>This is my code in render part:
>> {
>> System.out.println("RenderTest");
>> DefaultDOMLoader loader = DefaultDOMLoader.getGlobalInstance();
>> JivanDOMFactory jfactory = new JivanDOMFactory();
>>
>>jfactory.setServletContext(context.getConfig().getServletContext());
>> loader.setDefaultDOMFactory(jfactory);
>> // the exception is thrown somewehere after this line of code
>> Document page = loader.getDOM("/WEB-INF/admin/Template.html");
>> Node node = page.getElementById("Login");
>> BTemplate templateComp = new BTemplate();
>> templateComp.setView(new DefaultTemplateView(node));
>> ViewContext vc=new DefaultViewContext(context);
>> templateComp.addModel(new TestModel(context));
>> try
>> {
>> templateComp.render(vc);
>> }
>> catch (RenderException re)
>> {
>> logger.warn("Render err:"+re);
>> }
>> new DefaultDOMWriter().write(page, context.getResponse());
>> }
>>
>>Best regards
>> Jancsi
>>_______________________________________________
>>Barracuda mailing list
>>[email protected]
>>http://barracudamvc.org/lists/listinfo/barracuda
>
>_______________________________________________
>Barracuda mailing list
>[email protected]
>http://barracudamvc.org/lists/listinfo/barracuda