创建代理时发生java.lang.NoClassDefFoundError

创建代理时发生java.lang.NoClassDefFoundError,java,web-services,Java,Web Services,当我尝试用java创建web服务代理时,我总是得到一个好消息。我期待web服务,但它可以工作,我可以调用它。为什么我不能创建代理 java.lang.NoClassDefFoundError: xxx/GetBibliografijeXml (名称错误: xxx/GetBibliografijeXML) 在 java.lang.ClassLoader.defineClass1(本机) 方法)在 java.lang.ClassLoader.defineClass(ClassLoader.java:

当我尝试用java创建web服务代理时,我总是得到一个好消息。我期待web服务,但它可以工作,我可以调用它。为什么我不能创建代理

java.lang.NoClassDefFoundError: xxx/GetBibliografijeXml (名称错误: xxx/GetBibliografijeXML) 在 java.lang.ClassLoader.defineClass1(本机) 方法)在 java.lang.ClassLoader.defineClass(ClassLoader.java:620) 在 security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 在 java.net.URLClassLoader.defineClass(URLClassLoader.java:260) 在 java.net.URLClassLoader.access$100(URLClassLoader.java:56) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:195) 在 java.security.AccessController.doPrivileged(本机) 方法)在 java.net.URLClassLoader.findClass(URLClassLoader.java:188) 在 loadClass(ClassLoader.java:306) 在 loadClass(ClassLoader.java:251) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.SchemaAnalyzer.getValueClassBeanInfo(SchemaAnalyzer.java:465) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.ComplexTypeBindingModeler.structuredType(ComplexTypeBindingModeler.java:142) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.ComplexTypeBindingModeler.complexType(ComplexTypeBindingModeler.java:442) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.LiteralSchemaTypeModeler.complexType(LiteralSchemaTypeModeler.java:495) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.LiteralSchemaTypeModeler.schemaType(LiteralSchemaTypeModeler.java:373) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.LiteralSchemaTypeModeler.globalElement(LiteralSchemaTypeModeler.java:446) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.SchemaAnalyzer.schemaElementTypeToLiteralType(SchemaAnalyzer.java:403) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.OperationModeler.getElementTypeToLiteralType(OperationModeler.java:588) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.DocLiteralOperationModeler.buildInput(DocLiteralOperationModeler.java:527) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.DocLiteralOperationModeler.buildOperation(DocLiteralOperationModeler.java:256) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.OperationModeler.process(OperationModeler.java:93) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.processSOAPOperation(WSDLModeler.java:1086) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.processBindingOperation(WSDLModeler.java:1020) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.createNewPort(WSDLModeler.java:884) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.processPort(WSDLModeler.java:757) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.processService(WSDLModeler.java:671) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.internalBuildModel(WSDLModeler.java:396) 在 oracle.j2ee.ws.common.processor.modeler.wsdl.WSDLModeler.buildModel(WSDLModeler.java:215) 在 oracle.j2ee.ws.common.processor.config.ModelInfo.buildModel(ModelInfo.java:173) 在 oracle.j2ee.ws.common.processor.processor.runModeler(processor.java:72) 在 oracle.j2ee.ws.tools.wsa.AssemblerTool.run(AssemblerTool.java:95) 在 oracle.j2ee.ws.tools.wsa.WsdlToJavaTool.createProxy(WsdlToJavaTool.java:356) 在 oracle.j2ee.ws.tools.wsa.Util.createProxy(Util.java:838) 在 oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.doGeneration(ProxyGenerator.java:553) 在 oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.generateImpl(ProxyGenerator.java:365) 在 oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.mav$generateImpl(ProxyGenerator.java:77) 在 oracle.jdeveloper.webservices.model.proxy.ProxyGenerator$1ThrowingRunnable.run(ProxyGenerator.java:206) 在 oracle.jdeveloper.webservices.model.GeneratorUI$GeneratorAction.run(GeneratorUI.java:446) 在 oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:551) 在 run(Thread.java:595)


好吧,看起来有些东西用错了格:

java.lang.NoClassDefFoundError: xxx/GetBibliografijeXml
    (wrong name: xxx/GetBibliografijeXML) 
注意“XML”的大小写

检查所有使用名称的地方,并确保每个地方的大小写都一致。这个类是自动生成的还是您自己编写的

还要记住,如果您使用的是不区分大小写的操作系统,并且类是直接从磁盘加载的(而不是从jar文件等),那么可能会找到一个旧的类文件——在这样的文件系统上,您将无法拥有两个名称仅在大小写上不同的类,因为类文件将发生冲突。如果您的WSDL同时使用这两种情况,那么它可能生成了两个类,但最终您的磁盘上只有一个文件:(