Java tomcat 7.0.62中ResourceLink上的NPE到全局JNDI资源

Java tomcat 7.0.62中ResourceLink上的NPE到全局JNDI资源,java,tomcat,tomcat7,jndi,Java,Tomcat,Tomcat7,Jndi,我在tomcat-7.0.62\conf\server.xml中有一个GlobalNamingResource: <GlobalNamingResources> <Resource name="jdbc/postgresDB" auth="Container" type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"

我在tomcat-7.0.62\conf\server.xml中有一个GlobalNamingResource:

<GlobalNamingResources>
    <Resource
        name="jdbc/postgresDB"
        auth="Container"
        type="javax.sql.DataSource"
        driverClassName="org.postgresql.Driver"
        url="jdbc:postgresql://localhost/someDB"
        username="someUser"
        password="somePassword"
        factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" />
</GlobalNamingResources>
行号:25;栏目号:69直接位于context.xml中ResourceLink标记的末尾

通过从server.xml主机标记中删除deployXML=“false”属性,我成功地解决了配置问题。相同的设置以前在tomcat 7.0.42上工作过

我不明白的是,为什么它在7.0.62中不起作用,如果我希望deployXML属性为false,那么在7.0.62中我应该如何做到这一点。
我应该如何定义ResourceLink(如本例中的数据库连接)以在同一tomcat实例中跨多个Web应用共享资源。

在我的配置中,我没有在server.xml中指定工厂,但我的ResourceLink看起来与您的完全相同。@ChrisM工厂对这个问题无关紧要。它实际上是默认值,所以是的,我可以完全忽略它。正如我提到的,主机的
deployXML
属性似乎是罪魁祸首。
<Host name="localhost" deployXML="false">
<ResourceLink global="jdbc/postgresDB" name="jdbc/postgresDB" type="javax.sql.DataSource"/>
jaan 04, 2017 2:35:20 PM org.apache.tomcat.util.digester.Digester endElement
SEVERE: End event threw exception
java.lang.NullPointerException
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:847)
    at org.apache.catalina.startup.SetNextNamingRule.end(SetNextNamingRule.java:104)
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1060)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1343)
    ...
jaan 04, 2017 2:35:20 PM org.apache.catalina.startup.ContextConfig processContextConfig
SEVERE: Parse error in context.xml for /host-manager
org.xml.sax.SAXParseException; systemId: .../apache-tomcat-7.0.62/conf/context.xml; lineNumber: 25; columnNumber: 69; Error at (25, 69) : null
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2705)
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2737)
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1063)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
    ...