时髦的网络服务 [英] groovy web services

查看:1550
本文介绍了时髦的网络服务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试使用 http://groovy.codehaus.org/GroovyWS



在我的BuildConfig.groovy中,我添加了:compile'org.codehaus.groovy.modules:groovyws:0.5.2'



然后我去刷新依赖关系,并在下载了一堆东西后,我最终得到:

 执行脚本时出错编译:加载器约束违反接口可用初始化:解析方法时org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg / w3c / dom / NodeList; org / apache / xerces / dom / NodeImpl的类加载器(org / codehaus / groovy / grails / cli / support / GrailsRootLoader的实例)以及接口org的类加载器(< bootloader>的实例) / w3c / dom / Node为签名中使用的org / w3c / dom / NodeList类型提供了不同的Class对象
java.lang.LinkageError:接口中的加载器约束违规初始化:解析方法org.apache。 xerces.dom.NodeImpl.getChildNodes()Lorg / W3C / DOM /节点列表; org / apache / xerces / dom / NodeImpl的类加载器(org / codehaus / groovy / grails / cli / support / GrailsRootLoader的实例)以及接口org的类加载器(< bootloader>的实例) / w3c / dom / Node对org.apache.xerces.parsers.AbstractDOMParser.startDocument(未知源)签名
中使用的类型org / w3c / dom / NodeList具有不同的Class对象$ or $ b $ org .apache.xerces.impl.dtd.XMLDTDValidator.startDocument(未知来源)
在org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(未知来源)
在org.apache.xerces.impl.XMLVersionDetector .startDocumentParsing(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.Document BuilderImpl.parse(未知源)
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at org.apache.ivy.util.XMLHelper.parseToDom(XMLHelper.java:196)
at org.apache.ivy.plugins.parser.m2.PomReader。< init>(PomReader.java:95)
at org.apache.ivy.plugins.parser.m2.PomModuleDescriptorParser.parseDescriptor(PomModuleDescriptorParser .java:118)
at org.apache.ivy.plugins.parser.m2.PomModuleDescriptorParser.parseDescriptor(PomModuleDescriptorParser.java:108)
at org.apache.ivy.core.cache.DefaultRepositoryCacheManager $ MyModuleDescriptorProvider .provideModule(DefaultRepositoryCacheManager.java:659)
at org.apache.ivy.core.cache.ModuleDescriptorMemoryCache.getStale(ModuleDescriptorMemoryCache.java:68)
at org.apache.ivy.core.cache.DefaultRepositoryCacheManager .getStaledMd(DefaultRepositoryCacheManager.java:676)
at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.cacheModuleDescriptor(DefaultRepositoryCach eManager.java:993)
at org.apache.ivy.plugins.resolver.BasicResolver.parse(BasicResolver.java:546)
at org.apache.ivy.plugins.resolver.BasicResolver.getDependency( BasicResolver.java:266)
at org.apache.ivy.plugins.resolver.IBiblioResolver.getDependency(IBiblioResolver.java:503)
at org.apache.ivy.plugins.resolver.ChainResolver.getDependency( ChainResolver.java:104)
在org.apache.ivy.core.resolve.IvyNode.loadData(IvyNode.java:169)
在org.apache.ivy.core.resolve.VisitNode.loadData( VisitNode.java:287)
at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:696)
at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies( ResolveEngine.java:781)
at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:704)
at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies( ResolveEngine.java:781)
在org.apache.ivy.core.resolve.ResolveEngine.fetch依赖项(ResolveEngine.java:704)
在org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:769)
在org.apache.ivy.core.resolve.ResolveEngine。 fetchDependencies(ResolveEngine.java:704)
位于org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:769)
位于org.apache.ivy.core.resolve.ResolveEngine。 fetchDependencies(ResolveEngine.java:704)
在org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:781)
在org.apache.ivy.core.resolve.ResolveEngine。 fetchDependencies(ResolveEngine.java:704)
at org.apache.ivy.core.resolve.ResolveEngine.getDependencies(ResolveEngine.java:576)
at org.apache.ivy.core.resolve.ResolveEngine。解决(ResolveEngine.java:237)
在org.apache.ivy.core.resolve.ResolveEngine $ resolve.call(未知源代码)
在grails.util.BuildSettings $ _getDefaultCompileDependencies_closure9.doCall(BuildSettings.groovy :293)
在grails.util.BuildSettings $ _getDefaultCompileDependencies_closure9.doCall(BuildSettings.groovy)
在grails.util.BuildSettings.getDefaultCompileDependencies(BuildSettings.groovy:293)
在grails.util.BuildSettings.getCompileDependencies(BuildSettings.groovy (_GrailsClasspath_groovy:190)
at _GrailsClasspath_groovy $ _run_closure8.doCall(_GrailsClasspath_groovy:130)
at _GrailsClasspath_groovy $ _run_closure8.doCall(_GrailsClasspath_groovy)
at _GrailsClasspath_groovy.setClasspath(_GrailsClasspath_groovy:190)
at _GrailsClasspath_groovy $ _run_closure1.doCall(_GrailsClasspath_groovy:39)_GrailsEvents_groovy.run(_GrailsEvents_groovy:50)
_GrailsEvents_groovy
$ _GrailsArgParsing_groovy $ run.call(未知源) $ _ $ _ at _GrailsArgParsing_groovy.run(_GrailsArgParsing_groovy:29)
at _GrailsArgParsing_groovy $ run.call(未知来源)
at _GrailsInit_groovy $ run.call(未知来源)
at _Grail在_GrailsInit_groovy.run(_GrailsCompile_groovy:28)
在_GrailsInit_groovy $ run.call(未知源) b $ b at _GrailsCompile_groovy $ run.call(未知源)
at Compile.run(Compile.groovy:25)
编译$ run.call(未知源)
at gant.Gant .prepareTargets(Gant.groovy:606)
执行脚本时出错编译:接口中的加载器约束冲突itable初始化:解析方法时org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg / w3c / dom / NodeList ; org / apache / xerces / dom / NodeImpl的类加载器(org / codehaus / groovy / grails / cli / support / GrailsRootLoader的实例)以及接口org的类加载器(< bootloader>的实例) / w3c / dom / Node拥有不同的Class对象,用于签名中使用的org / w3c / dom / NodeList类型



任何人都可以帮我做什么?为什么我得到这个异常以及如何解决它?



谢谢

- MB

解决方案

好像你正在进入依赖性疯狂。查看此 <$ c $的错误消息c> LinkageError (我加了一些重点):
$ b


执行脚本时出错编译:加载器约束违反接口可用初始化:当解析方法 org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg / w3c / dom / NodeList; class loader ( org / codehaus / groovy / grails / cli / support / GrailsRootLoader )的实例, org / apache / xerces / dom / NodeImpl ,而接口 org / w3c / dom / Node 的类加载器(实例)具有不同的Class对象,类型为 org / w3c / dom / NodeList 在签名中使用

使事情变得更加清晰如果还不是这样的话),你的两个依赖之间会有冲突。由于您似乎使用Grails,我倾向于告诉您,您使用的GroovyWS版本与您当前安装的Grails不兼容。你有没有尝试使用Grails命令行安装groovyWS?我的意思是,调用 安装依赖关系 ?如果没有,我建议你用 $ b

  install-dependency org.codehaus.groovy.modules调用来取代你的依赖关系:groovyws 

通过这种方式,Grails可以使用自己的兼容性机制。



如果这还不够,请尝试查看该指南如何排除违规依赖关系。



编辑您也可以按照此博客条目


I have tried to use http://groovy.codehaus.org/GroovyWS

In my BuildConfig.groovy I have added: compile 'org.codehaus.groovy.modules:groovyws:0.5.2'

I then go to Refresh Dependencies and after downloading bunch of stuff, I end up with:

Error executing script Compile: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg/w3c/dom/NodeList;" the class loader (instance of org/codehaus/groovy/grails/cli/support/GrailsRootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) for interface org/w3c/dom/Node have different Class objects for the type org/w3c/dom/NodeList used in the signature
java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg/w3c/dom/NodeList;" the class loader (instance of org/codehaus/groovy/grails/cli/support/GrailsRootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) for interface org/w3c/dom/Node have different Class objects for the type org/w3c/dom/NodeList used in the signature
    at org.apache.xerces.parsers.AbstractDOMParser.startDocument(Unknown Source)
    at org.apache.xerces.impl.dtd.XMLDTDValidator.startDocument(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(Unknown Source)
    at org.apache.xerces.impl.XMLVersionDetector.startDocumentParsing(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
    at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
    at org.apache.ivy.util.XMLHelper.parseToDom(XMLHelper.java:196)
    at org.apache.ivy.plugins.parser.m2.PomReader.<init>(PomReader.java:95)
    at org.apache.ivy.plugins.parser.m2.PomModuleDescriptorParser.parseDescriptor(PomModuleDescriptorParser.java:118)
    at org.apache.ivy.plugins.parser.m2.PomModuleDescriptorParser.parseDescriptor(PomModuleDescriptorParser.java:108)
    at org.apache.ivy.core.cache.DefaultRepositoryCacheManager$MyModuleDescriptorProvider.provideModule(DefaultRepositoryCacheManager.java:659)
    at org.apache.ivy.core.cache.ModuleDescriptorMemoryCache.getStale(ModuleDescriptorMemoryCache.java:68)
    at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.getStaledMd(DefaultRepositoryCacheManager.java:676)
    at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.cacheModuleDescriptor(DefaultRepositoryCacheManager.java:993)
    at org.apache.ivy.plugins.resolver.BasicResolver.parse(BasicResolver.java:546)
    at org.apache.ivy.plugins.resolver.BasicResolver.getDependency(BasicResolver.java:266)
    at org.apache.ivy.plugins.resolver.IBiblioResolver.getDependency(IBiblioResolver.java:503)
    at org.apache.ivy.plugins.resolver.ChainResolver.getDependency(ChainResolver.java:104)
    at org.apache.ivy.core.resolve.IvyNode.loadData(IvyNode.java:169)
    at org.apache.ivy.core.resolve.VisitNode.loadData(VisitNode.java:287)
    at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:696)
    at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:781)
    at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:704)
    at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:781)
    at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:704)
    at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:769)
    at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:704)
    at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:769)
    at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:704)
    at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:781)
    at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:704)
    at org.apache.ivy.core.resolve.ResolveEngine.getDependencies(ResolveEngine.java:576)
    at org.apache.ivy.core.resolve.ResolveEngine.resolve(ResolveEngine.java:237)
    at org.apache.ivy.core.resolve.ResolveEngine$resolve.call(Unknown Source)
    at grails.util.BuildSettings$_getDefaultCompileDependencies_closure9.doCall(BuildSettings.groovy:293)
    at grails.util.BuildSettings$_getDefaultCompileDependencies_closure9.doCall(BuildSettings.groovy)
    at grails.util.BuildSettings.getDefaultCompileDependencies(BuildSettings.groovy:293)
    at grails.util.BuildSettings.getCompileDependencies(BuildSettings.groovy:278)
    at _GrailsClasspath_groovy$_run_closure8.doCall(_GrailsClasspath_groovy:130)
    at _GrailsClasspath_groovy$_run_closure8.doCall(_GrailsClasspath_groovy)
    at _GrailsClasspath_groovy.setClasspath(_GrailsClasspath_groovy:190)
    at _GrailsClasspath_groovy$_run_closure1.doCall(_GrailsClasspath_groovy:39)
    at _GrailsEvents_groovy.run(_GrailsEvents_groovy:50)
    at _GrailsEvents_groovy$run.call(Unknown Source)
    at _GrailsArgParsing_groovy$run.call(Unknown Source)
    at _GrailsArgParsing_groovy.run(_GrailsArgParsing_groovy:29)
    at _GrailsArgParsing_groovy$run.call(Unknown Source)
    at _GrailsInit_groovy$run.call(Unknown Source)
    at _GrailsInit_groovy.run(_GrailsInit_groovy:37)
    at _GrailsInit_groovy$run.call(Unknown Source)
    at _GrailsCompile_groovy$run.call(Unknown Source)
    at _GrailsCompile_groovy.run(_GrailsCompile_groovy:28)
    at _GrailsCompile_groovy$run.call(Unknown Source)
    at Compile.run(Compile.groovy:25)
    at Compile$run.call(Unknown Source)
    at gant.Gant.prepareTargets(Gant.groovy:606)
Error executing script Compile: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg/w3c/dom/NodeList;" the class loader (instance of org/codehaus/groovy/grails/cli/support/GrailsRootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) for interface org/w3c/dom/Node have different Class objects for the type org/w3c/dom/NodeList used in the signature

Anyone can help me with what's gonig on? Why do I get this exception and how to fix it?

Thanks

--MB

解决方案

Seems like you're entering a dependency madness. Look at your error message for this LinkageError (I've added some emphasis):

Error executing script Compile: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.getChildNodes()Lorg/w3c/dom/NodeList;" the class loader (instance of org/codehaus/groovy/grails/cli/support/GrailsRootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of ) for interface org/w3c/dom/Node have different Class objects for the type org/w3c/dom/NodeList used in the signature

To make things a little more clear (if that's not already the case), there is a conflict between two of your dependencies. As you appear to use Grails, I would tend to say to you that the version of GroovyWS you use is not compatible with your current installation of Grails. Have you tried to install groovyWS using Grails command-line ? I mean, calling install-dependency ? If not, I would suggest you replace your dependecy with a call to

install-dependency org.codehaus.groovy.modules:groovyws

This way, Grails would use its own compatibility mechanism.

If that's not enough, try to see in that guide how to exclude offending dependencies.

EDIT You could also follow some advices from this blog entry.

这篇关于时髦的网络服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆