Re: Odd breaking exception in 5.4
Richard Frovarp <[email protected]>
| Newsgroups | gmane.comp.java.tapestry.user |
|---|---|
| Message-ID | <[email protected]> |
I had to hack in some code so that it would actually log the error. I could probably find it and offer it back, but I don't know how often this would come up. I ran into Xerces problems. In this particular Tomcat instance I have a couple of CAS 3.x instances that need to be replaced, and a bunch of Tapestry 5.3 applications using CAS clients. All of them were including Xerces due to the CAS dependencies. This particular application was using public federated authentication as most people logging into it won't be at my institution. Thus it wasn't including a Xerces dependency. If one of those other applications loaded first, the Xerces lib would assert to the JVM that it was the SAX implementation to use. This application would come along, as the JVM for the implementation to use, and be told to use Xerces. It then blows up with a ClassDefNotFound error when Xerces isn't on the classpath. If the 5.4 / non-CAS application loaded first, it could find a SAX parser on the classpath. So my current solution is to just include Xerces in the new 5.4 application until such time as I can better deal with it. On 05/25/2018 01:03 PM, Carlos Montero Canabal wrote: > I have this problem in some situations too. > > I have a tomcat instance with multiple Tapestry5 apps, some with 5.3 versions and anothers with 5.4 versions. To work fine, when I restart the tomcat, I have to start / load first the 5.3 apps, and then the 5.4, it’s the only way to run everyone in the same tomcat. I didn´t find any solution, I think I would have to install 5.3 apps on a dedicated tomcat and 5.4 into another one. > > I hope my experience helps you. > > Regards > > Carlos Montero > >> El 24/5/2018, a las 1:07, Richard Frovarp <[email protected]> escribió: >> >> I'm having some very odd problems with Tapestry 5.4.3. Most of my stuff is on 5.3, so I haven't been able to dig very deep on this, and I'm not quite sure what I'm missing. I'm running Tomcat 8.5.x. Now, it appears that might be from classpath:org/apache/tapestry5/corelib/pages/ExceptionReport.tml. But something else must be generating the error. I've been able to make it go away with a restart of Tomcat, but not of just the app itself. I'm fairly confused. I think that the exception being reported isn't the actual root cause, but rather the exception that is reported due to an error with reporting the actual exception. >> >> 2018-05-23 17:57:10,697 [ERROR] ioc.Registry java.lang.NullPointerException >> 2018-05-23 17:57:10,698 [ERROR] ioc.Registry Operations trace: >> 2018-05-23 17:57:10,698 [ERROR] ioc.Registry [ 1] Handling page render request for page Index >> 2018-05-23 17:57:10,698 [ERROR] ioc.Registry [ 2] Constructing instance of page class edu.ndsu.eci.international_capstone_exchange.pages.Index >> 2018-05-23 17:57:10,698 [ERROR] ioc.Registry [ 3] Creating ComponentAssembler for edu.ndsu.eci.international_capstone_exchange.pages.Index >> 2018-05-23 17:57:10,698 [ERROR] ioc.Registry [ 4] Parsing component template classpath:edu/ndsu/eci/international_capstone_exchange/pages/Index.tml >> 2018-05-23 17:57:10,712 [ERROR] TapestryModule.RequestExceptionHandler Processing of request failed with uncaught exception: org.apache.tapestry5.ioc.internal.OperationException >> org.apache.tapestry5.ioc.internal.OperationException >> at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:186) >> at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:90) >> at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:72) >> at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1260) >> at org.apache.tapestry5.internal.services.TemplateParserImpl.parseTemplate(TemplateParserImpl.java:57) >> at $TemplateParser_95423bef7.parseTemplate(Unknown Source) >> at org.apache.tapestry5.internal.services.ComponentTemplateSourceImpl.parseTemplate(ComponentTemplateSourceImpl.java:190) >> at org.apache.tapestry5.internal.services.ComponentTemplateSourceImpl.getTemplate(ComponentTemplateSourceImpl.java:162) >> at $ComponentTemplateSource_95423bef6.getTemplate(Unknown Source) >> at org.apache.tapestry5.internal.pageload.PageLoaderImpl$4.invoke(PageLoaderImpl.java:258) >> at org.apache.tapestry5.internal.pageload.PageLoaderImpl$4.invoke(PageLoaderImpl.java:251) >> at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:82) >> at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:72) >> at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1260) >> >> snip >> >> Caused by: java.lang.NullPointerException >> at org.apache.tapestry5.internal.services.XMLTokenStream.getLocation(XMLTokenStream.java:487) >> at org.apache.tapestry5.internal.services.SaxTemplateParser.parse(SaxTemplateParser.java:181) >> at org.apache.tapestry5.internal.services.TemplateParserImpl$1.invoke(TemplateParserImpl.java:61) >> at org.apache.tapestry5.internal.services.TemplateParserImpl$1.invoke(TemplateParserImpl.java:58) >> at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:82) >> ... 102 more >> 2018-05-23 17:57:10,804 [ERROR] ioc.Registry java.lang.NullPointerException >> 2018-05-23 17:57:10,804 [ERROR] ioc.Registry Operations trace: >> 2018-05-23 17:57:10,804 [ERROR] ioc.Registry [ 1] Constructing instance of page class org.apache.tapestry5.corelib.pages.ExceptionReport >> 2018-05-23 17:57:10,804 [ERROR] ioc.Registry [ 2] Creating ComponentAssembler for org.apache.tapestry5.corelib.pages.ExceptionReport >> 2018-05-23 17:57:10,804 [ERROR] ioc.Registry [ 3] Parsing component template classpath:org/apache/tapestry5/corelib/pages/ExceptionReport.tml >> >> >> To add to the confusion, I've never had the error trigger when running on my workstation using Tomcat, just as installed on our server. Almost makes me think that it is trying to write somewhere that is causing problems. I just restarted Tomcat, and it now loads. How do I find root cause? I've turned logging all the way up, and then there is too much noise. Since I can't get it to trigger on my workstation, I can't get a debugger connected to figure it out from there. >> >> Thanks, >> >> Richard >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]