scala - Application crashes after upgrading to play 2.2 -


after upgrading play 2.2, following error:

org.xml.sax.saxnotrecognizedexception: feature 'http://javax.xml.xmlconstants/feature/secure-processing' not recognized. @ org.apache.xerces.parsers.abstractsaxparser.setfeature(unknown source) @ org.apache.xerces.jaxp.saxparserimpl.setfeatures(unknown source) @ org.apache.xerces.jaxp.saxparserimpl.<init>(unknown source) @ org.apache.xerces.jaxp.saxparserfactoryimpl.newsaxparserimpl(unknown source) @ org.apache.xerces.jaxp.saxparserfactoryimpl.setfeature(unknown source) @ play.api.play$.<init>(play.scala:45) @ play.api.play$.<clinit>(play.scala) @ play.core.server.nettyserver$$anonfun$12.apply(nettyserver.scala:152) @ play.core.server.nettyserver$$anonfun$12.apply(nettyserver.scala:151) @ scala.option.foreach(option.scala:236) @ play.core.server.nettyserver.<init>(nettyserver.scala:151) @ play.core.server.nettyserver$$anonfun$maindev$1.apply(nettyserver.scala:310) @ play.core.server.nettyserver$$anonfun$maindev$1.apply(nettyserver.scala:308) @ play.utils.threads$.withcontextclassloader(threads.scala:18) @ play.core.server.nettyserver$.maindev(nettyserver.scala:307) @ play.core.server.nettyserver$.maindevhttpmode(nettyserver.scala:303) @ play.core.server.nettyserver.maindevhttpmode(nettyserver.scala) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ play.playrun$$anonfun$playruntask$1$$anonfun$apply$1.apply(playrun.scala:233) @ play.playrun$$anonfun$playruntask$1$$anonfun$apply$1.apply(playrun.scala:91) @ scala.function7$$anonfun$tupled$1.apply(function7.scala:35) @ scala.function7$$anonfun$tupled$1.apply(function7.scala:34) @ scala.function1$$anonfun$compose$1.apply(function1.scala:47) 

i running on os x, latest jdk oracle, upgrade plugins play 2.2.0 , sbt 0.13, vis-a-vis:

"play 2.2.0 built scala 2.10.2 (running java 1.7.0_40), http://www.playframework.com" 

on startup.

can't figure out how resolve this, appreciated.

ok found problem , it's problem linked dependencies of project. play 2.2.0 delivered dep on xercesimpl 2.11.0.

in play.scala line 45, there these lines:

    saxparserfactory.newinstance("org.apache.xerces.jaxp.saxparserfactoryimpl", play.getclass.getclassloader)  ...  // new line in play2.2.0 xercessaxparserfactory.setfeature(xmlconstants.feature_secure_processing, true) 

so if have library in project depends on older version of xercesimpl (as in case), classloader may use older "org.apache.xerces.jaxp.saxparserfactoryimpl" doesn't support "xmlconstants.feature_secure_processing".

you should analyze deps , try find dependency responsible of problem. in case, it's tricky because old, no more supported library , requires old xerces... not easy solution :(


Comments

Popular posts from this blog

c# - How Configure Devart dotConnect for SQLite Code First? -

c++ - Clear the memory after returning a vector in a function -

erlang - Saving a digraph to mnesia is hindered because of its side-effects -