Re: Barracuda and Jivan
Arno Schatz <[email protected]>
| Newsgroups | gmane.comp.java.enhydra.barracuda.general |
|---|---|
| Message-ID | <[email protected]> |
Hi Jake, Jancsi
Actually this was just a guess from my side.Sorry It was misleading. May be I am seeing
too many problems based on changing APIs. Jancsi, did you try upgrading your system as
Jake described earlier?
Arno
Jacob Kjome wrote:
>
> 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
>
>
> _______________________________________________
> Barracuda mailing list
> [email protected]
> http://barracudamvc.org/lists/listinfo/barracuda
>
>