java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null"
at javax.xml.parsers.DocumentBuilderFactory.setSchema(DocumentBuilderFactory.java:561)
at org.opensaml.xml.parse.BasicParserPool.initializePool(BasicParserPool.java:521)
at org.opensaml.xml.parse.BasicParserPool.<init>(BasicParserPool.java:139)
at org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:87)
at org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:73)
at org.opensaml.DefaultBootstrap.initializeXMLTooling(DefaultBootstrap.java:144)
at org.opensaml.DefaultBootstrap.bootstrap(DefaultBootstrap.java:88)
at org.coacd.AdvSAMLUtil.verify(AdvSAMLUtil.java:48)
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:597)
at coldfusion.runtime.java.JavaProxy.invoke(JavaProxy.java:87)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2272)
at cflogin2ecfm1048361855.runPage(D:\websites\www\dev\sso\login.cfm:13)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:196)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:370)
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:279)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:86)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
at coldfusion.filter.BrowserDebugFilter.invoke(BrowserDebugFilter.java:74)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.filter.RequestThrottleFilter.invoke(RequestThrottleFilter.java:126)
at coldfusion.CfmServlet.service(CfmServlet.java:175)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
at jrun.servlet.FilterChain.service(FilterChain.java:101)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
I’m calling the java class from a simple Coldfusion app that basically just calls a java class that returns a Boolean as to whether or not the user has been validated. It looks like to me the DocumentBuilderFactory.setSchema should be using the DocumentBuilderFactoryImpl.setSchema, but I’m not sure how to change the behavior.
I’m not sure what else you need to know and thanks for the help.
On 1/14/10 4:04 PM, mark.c...@ci.austin.tx.us wrote:
> Hello I’m a newbie to SAML and I’m currently stumped on this error.
>
> java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null"
> at javax.xml.parsers.DocumentBuilderFactory.setSchema(DocumentBuilderFactory.java:561)
>
>
The underlying reason for the error is that your JAXP impl is too old to
support the DBF setSchema method. Someone else had a similar issue here:
https://mail.internet2.edu/wws/arc/mace-opensaml-users/2007-10/msg00051.html
>
> I’m calling the java class from a simple Coldfusion app that basically just calls a java class that returns a Boolean as to whether or not the user has been validated. It looks like to me the DocumentBuilderFactory.setSchema should be using the DocumentBuilderFactoryImpl.setSchema, but I’m not sure how to change the behavior.
>
You need to configure your JRE's XML parsing environment to use a newer,
supported version of a JAXP implementation (e.g. Xerces). You mentioned
Coldfusion, but didn't mention what container/app server you are using
(JRun vs. Tomcat, JBoss, etc). You most likely just need to use your
container's defined method of endorsing classes and endorse a newer
version of the Xerces and Xalan jars. We ship known, good versions of
those in the OpenSAML distribution.
I believe I am now properly endorsing the endorsed jars, but am still
unable to bootstrap the environment. I'm not sure why it is telling me
that the RMI does not implement the RM. It appears to me that it is
finding the correct classes so I'm not sure what I'm missing.
org.opensaml.xml.ConfigurationException: Unable to initialize Velocity
template engine
at
org.opensaml.DefaultBootstrap.initializeVelocity(DefaultBootstrap.java:1
31)
at
org.opensaml.DefaultBootstrap.bootstrap(DefaultBootstrap.java:86)
at org.coacd.COA_Vend.<init>(COA_Vend.java:14)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA
ccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons
tructorAccessorImpl.java:27)
at
java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at
coldfusion.runtime.java.JavaProxy.createObjectWithDefaultConstructor(Jav
aProxy.java:191)
at coldfusion.runtime.java.JavaProxy.invoke(JavaProxy.java:75)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2272)
at
cflogin2ecfm1048361855.runPage(D:\websites\www\dev\sso\login.cfm:12)
Caused by: java.lang.Exception: The specified class for ResourceManager
(org.apache.velocity.runtime.resource.ResourceManagerImpl) does not
implement org.apache.velocity.runtime.resource.ResourceManager; Velocity
is not initialized correctly.
at
org.apache.velocity.runtime.RuntimeInstance.initializeResourceManager(Ru
ntimeInstance.java:589)
at
org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:24
1)
at
org.apache.velocity.runtime.RuntimeSingleton.init(RuntimeSingleton.java:
113)
at org.apache.velocity.app.Velocity.init(Velocity.java:83)
at
org.opensaml.DefaultBootstrap.initializeVelocity(DefaultBootstrap.java:1
29)
... 41 more
Any help is appreciated and thanks,
Mark
On 1/25/10 5:15 PM, Caraway, Mark wrote:
> Sorry for the mix up in my prior reply.
>
> I believe I am now properly endorsing the endorsed jars,
Not sure if you can conclude that yet, see below...
> but am still
> unable to bootstrap the environment. I'm not sure why it is telling me
> that the RMI does not implement the RM. It appears to me that it is
> finding the correct classes so I'm not sure what I'm missing.
>
> org.opensaml.xml.ConfigurationException: Unable to initialize Velocity
> template engine
> at
> org.opensaml.DefaultBootstrap.initializeVelocity(DefaultBootstrap.java:1
> 31)
>
Hmm, well now it's failing in DefaultBootstrap at initializeVelocity,
which actually runs *before* initializeXMLTooling where is was failing
before:
> java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null"
> at javax.xml.parsers.DocumentBuilderFactory.setSchema(DocumentBuilderFactory.java:561)
> at org.opensaml.xml.parse.BasicParserPool.initializePool(BasicParserPool.java:521)
> at org.opensaml.xml.parse.BasicParserPool.<init>(BasicParserPool.java:139)
> at org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:87)
> at org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:73)
> at org.opensaml.DefaultBootstrap.initializeXMLTooling(DefaultBootstrap.java:144)
> at org.opensaml.DefaultBootstrap.bootstrap(DefaultBootstrap.java:88)
>
So basically it's failing earlier now, not even getting to the JAXP
failure point (so not clear whether you are endorsing the XML libs
correctly or now). Did you change anything else about the environment,
such as where you were locating all the OpenSAML dependency jars? Do
you possibly have multiple conflicting versions of Velocity jars
somewhere in the environment?
My guess would be you have multiple versions of
org.apache.velocity.runtime.resource.ResourceManager on your classpath.
Arnout
Thanks for the assistance.
M
-----Original Message-----
From: Brent Putman [mailto:put...@georgetown.edu]
Sent: Monday, January 25, 2010 4:52 PM
To: mace-open...@internet2.edu
Cc: Caraway, Mark