You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Paul Beckett <pa...@outlook.com> on 2014/02/25 16:13:15 UTC

RE: Tomcat 7.0.50 tldValidation

> Date: Wed, 22 Jan 2014 15:15:53 +0000
> From: markt@apache.org
> To: users@tomcat.apache.org
> Subject: Re: Tomcat 7.0.50 tldValidation
> 
> On 22/01/2014 14:12, Paul Beckett wrote:
> > Does anyone know:
> - Why this occurs only since 7.0.50
> Changes to XML validation introduced in 7.0.48->7.0.50
> 
> - Where the root issue is likely to be / how to fix it
> Psi probe ships with an implementation of the standard tag library that
> includes the following:
> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> web-jsptaglibrary_2_0.xsd"
> 
> in a tag library descriptor.
> The "web-jsptaglibrary_2_0.xsd" is a hint to the location but that is
> not enough for Tomcat to identify it. Later versions of the standard tag
> library use:
> 
> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
> 
> which is unique so Tomcat is able to identify it.
> 
> One could argue that web-jsptaglibrary_2_0.xsd should be sufficient to
> identify location of the intended schema.


I've updated psi-probe's WEB-INF/tld/probe.tld so it now contains:
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"                xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"                version="2.0">
I'm not sure if I've misunderstood something, from Mark's email I thought I just needed to update the xsi:schemaLocation as above (and restart tomcat). But I'm still getting the same error messages at startup:
WARNING: Parse Warning Error at line 6 column 19: schema_reference.4: Failed to read schema document 'web-jsptaglibrary_2_0.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 19; schema_reference.4: Failed to read schema document 'web-jsptaglibrary_2_0.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.warning(ErrorHandlerWrapper.java:99)        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:433)        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325)        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2457)        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1772)        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:746)        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:378)        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:604)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3122)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:880)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)        at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1561)        at org.apache.catalina.startup.TldConfig.tldScanStream(TldConfig.java:537)        at org.apache.catalina.startup.TldConfig.tldScanJar(TldConfig.java:492)        at org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:61)        at org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java:293)        at org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:259)        at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:178)        at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:266)        at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:562)        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1229)        at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)        at java.util.concurrent.FutureTask.run(FutureTask.java:262)        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)        at java.lang.Thread.run(Thread.java:744)
Feb 25, 2014 1:33:02 PM org.apache.tomcat.util.digester.Digester errorSEVERE: Parse Error at line 6 column 19: cvc-elt.1: Cannot find the declaration of element 'taglib'.org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 19; cvc-elt.1: Cannot find the declaration of element 'taglib'.        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437)        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325)        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1906)        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:746)        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:378)        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:604)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3122)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:880)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117)        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)        at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1561)        at org.apache.catalina.startup.TldConfig.tldScanStream(TldConfig.java:537)        at org.apache.catalina.startup.TldConfig.tldScanJar(TldConfig.java:492)        at org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:61)        at org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java:293)        at org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:259)        at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:178)        at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:266)        at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:562)        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1229)        at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)        at java.util.concurrent.FutureTask.run(FutureTask.java:262)        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)        at java.lang.Thread.run(Thread.java:744)
Any further help / advice would be gratefully received.Thanks,Paul