[英]javax.xml.ws.WebServiceException: Provider com.sun.xml.internal.ws.spi.ProviderImpl not found
I'm trying to run a webservice client on jdk1.5 and gives me the following error: 我正在尝试在jdk1.5上运行webservice客户端并给我以下错误:
javax.xml.ws.WebServiceException: Provider com.sun.xml.internal.ws.spi.ProviderImpl not found
Any suggestion will be appreciated. 任何建议将不胜感激。
Make sure that on your path you can find also the jar containing the class com.sun.xml.internal.ws.spi.ProviderImpl
. 确保在您的路径上还可以找到包含类com.sun.xml.internal.ws.spi.ProviderImpl
的jar。 I checked what jar might be needed and here you can see the jars containing the given class. 我检查了可能需要什么样的罐子, 在这里你可以看到包含给定类的罐子。 Any of them might help you. 他们中的任何一个都可以帮到你
I don't know exact reason why it can not find the right class but I think it is some problem with (or feature of) Java class loader in Oracle database when it looks for resources. 我不知道为什么它找不到合适的类的确切原因,但我认为在查找资源时, Oracle数据库中的 Java类加载器(或其功能)存在一些问题。
I loaded JAX-WS reference implementation from java.net with all its dependencies with the SYS user (with the public access permissions and public synonyms). 我从java.net加载了JAX-WS引用实现,其所有依赖关系都是SYS用户(具有公共访问权限和公共同义词)。 But the classes generated from service WSDL I loaded to user SCOTT schema. 但是从服务WSDL生成的类我加载到用户SCOTT模式。 And for some reason when SCOTT runs procedures that uses service, javax.xml.ws.spi.FactoryFinder
does look up for implementation name in META-INF/services/javax.xml.ws.spi.Provider
resource (which have correct value com.sun.xml.ws.spi.ProviderImpl
) but can not find this resource so tries to load provider from hard-coded class name ( com.sun.xml.internal.ws.spi.ProviderImpl
) and fails. 由于某种原因,当SCOTT运行使用服务的过程时, javax.xml.ws.spi.FactoryFinder
会在META-INF/services/javax.xml.ws.spi.Provider
资源中查找实现名称(具有正确的值com.sun.xml.ws.spi.ProviderImpl
)但无法找到此资源,因此尝试从硬编码的类名( com.sun.xml.internal.ws.spi.ProviderImpl
)加载提供程序并失败。
Solution for me was to load all META-INF/services/*
files from all the JAX-WS RI and dependencies jar's to SCOTT schema. 我的解决方案是将所有JAX-WS RI和依赖jar中的所有META-INF/services/*
文件加载到SCOTT模式。 Alternative way could be to load all JAX-WS RI, dependencies and final program to the same schema. 替代方法可以是将所有JAX-WS RI,依赖项和最终程序加载到同一模式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.