IdP 2.4.5 does not work on recent Tomcat 7 and its workaround

Takeshi NISHIMURA takeshi at
Fri May 20 13:56:58 EDT 2016

Hi all,

I have an error when running Shibboleth IdP 2.4.5 on recent Tomcat 7.

CentOS 5.11
Shibboleth IdP 2.4.5
Tomcat 7.0.69 - NG
Tomcat 7.0.68 - NG
Tomcat 7.0.67 - NG
Tomcat 7.0.65 - OK

The error log is attached at the end of this mail.
It also produces a similar error with OpenJDK 7.

If you delete the first slash character in the classpath: URI, it will work as expected.
e.g. "classpath:/schema/shibboleth-2.0-services.xsd" to "classpath:schema/shibboleth-2.0-services.xsd"

There are many classpath: URIs in the following files so you should modify all the URIs.

I think this behavior may be affected by this fix:

15:02:38.760 - WARN [org.springframework.beans.factory.xml.XmlBeanDefinitionRead
er:47] - Ignored XML validation warning
org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'classpath:/schema/shibboleth-2.0-services.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 ~[na:1.6.0_39]
15:02:38.764 - ERROR [org.springframework.web.context.ContextLoader:215] - Context initialization failed
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 12 in XML document from URL [file:/opt/shibboleth-idp//conf/service.xml] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 116; cvc-elt.1: Cannot find the declaration of element 'srv:Services'.
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions( ~[spring-beans-2.5.6.SEC03.jar:2.5.6.SEC03]
Caused by: org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'srv:Services'.
        at ~[na:1.6.0_39]


More information about the users mailing list