问题标签 [wsimport]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - wsimport 生成错误代码
我使用 wsimport 来生成我的 java 存根文件。为此,我在 Eclipse 中使用了一个 ant 构建文件:
任务运行没有任何错误。它创建不同的 java 文件,还有 Knowledgebase.java 和 KnowledgebasePort.java。在 der Knowledgebase.java 中,有以下构造函数:
对于他们,我收到一个错误“构造函数 Service(...) 未定义”。我导入了当前的 jax-ws jar 文件。我的生成过程是否损坏,我是否使用了错误的 jar 或错误在哪里?
wsdl - 具有soap-rpc 样式的WSDL 无法编译
我正在使用这个 wsdl 文件来描述我的网络服务:
GetValueRequest.xsd
每次我运行wsimport
时,我都会收到此错误:
我已经将getValueForKey类型导出到xsd-schemafile,所以我不明白这个错误......我整天都在尝试这个sh*** grml
eclipse - javax.xml.stream.FactoryFinder$ConfigurationError:未找到提供程序 com.ctc.wstx.stax.WstxInputFactory
我正在尝试开发一个调用现有(工作)Web 服务的 GWT 应用程序。我在用:
我已经独立测试了我的 3 个组件应用程序,它们运行良好:
当我合并前 2 段代码以创建从 GWT 服务器端代码中调用 Web 服务的 GWT 应用程序时,我的合并应用程序失败,并出现以下异常。我怀疑标准 GWT 依赖项和标准 JAX-WS 依赖项之间存在类冲突。
我得到以下异常:
javax.servlet.ServletContext 日志:调度传入 RPC 调用 com.google.gwt.user.server.rpc.UnexpectedException 时出现异常:服务方法'public abstract java.lang.String com.mjg.training.client.GreetingService.greetServer(java .lang.String) throws java.lang.IllegalArgumentException' throws an unexpected exception: javax.xml.stream.FactoryFinder$ConfigurationError: Provider com.ctc.wstx.stax.WstxInputFactory not found at com.google.gwt.user.server。 rpc.RPC.encodeResponseForFailure(RPC.java:385) 在 com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:588) 在 com.google.gwt.user.server.rpc.RemoteServiceServlet。 processCall(RemoteServiceServlet.java:208) 在 com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248) 在 com.google.gwt.user.server.rpc。AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mortbay.jetty .servlet.ServletHolder.handle(ServletHolder.java:511) 在 org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) 在 com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter .java:35) 在 org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 在 com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:58) 在org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 在 com.google.apphosting.utils.servlet.TransactionCleanupFilter。doFilter(TransactionCleanupFilter.java:43) 在 org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 在 com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)在 org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 在 com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97) 在 org.mortbay.jetty.servlet .ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 在 org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) 在 org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216 ) 在 org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) 在 org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)在 org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) 在 com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70) 在 org.mortbay.jetty.handler .HandlerWrapper.handle(HandlerWrapper.java:152) 在 com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:351) 在 org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java :152) 在 org.mortbay.jetty.Server.handle(Server.java:326) 在 org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) 在 org.mortbay.jetty.HttpConnection$RequestHandler.content( HttpConnection.java:938) 在 org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755) 在 org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) 在 org.mortbay。jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)原因:javax.xml.stream.FactoryFinder$ConfigurationError: Provider com.ctc.wstx.stax.WstxInputFactory not found at javax.xml.stream.FactoryFinder.newInstance(FactoryFinder.java:154) at javax.xml.stream.FactoryFinder .findJarServiceProvider(FactoryFinder.java:308) 在 javax.xml.stream.XMLInputFactory.newInstance(XMLInputFactory.java:123) 在 com.sun.xml 的 javax.xml.stream.FactoryFinder.find(FactoryFinder.java:233)。 internal.ws.api.streaming.XMLStreamReaderFactory.getXMLInputFactory(XMLStreamReaderFactory.java:98) 在 com.sun.xml.internal.ws.api.streaming.XMLStreamReaderFactory.(XMLStreamReaderFactory.java:67) 在 com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.resolveWSDL(RuntimeWSDLParser.java:794) 在 com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.createReader(RuntimeWSDLParser.java:794) 251) 在 com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:118) 在 com.sun.xml.internal.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:254)在 com.sun.xml.internal.ws.client.WSServiceDelegate.(WSServiceDelegate.java:217) 在 com.sun.xml.internal.ws.client.WSServiceDelegate.(WSServiceDelegate.java:165) 在 com.sun.xml .internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:93) at javax.xml.ws.Service.(Service.java:56) at amx.devenvironment.helloworld1.JavaHelloComponent100201106212354ServiceHelloWorldPTHelloWorldPT。(JavaHelloComponent100201106212354ServiceHelloWorldPTHelloWorldPT.java:46) at sample.HelloWorldGetResponse.getResponse(HelloWorldGetResponse.java:16) at com.mjg.training.server.GreetingServiceImpl.greetServer(GreetingServiceImpl.java:46) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method ) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 com .google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:100) 在 com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)GreetingServiceImpl.greetServer(GreetingServiceImpl.java:46) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) 在 com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:100) 在 com.google.gwt 的 java.lang.reflect.Method.invoke(Method.java:597) .user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)GreetingServiceImpl.greetServer(GreetingServiceImpl.java:46) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) 在 com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:100) 在 com.google.gwt 的 java.lang.reflect.Method.invoke(Method.java:597) .user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)Method.invoke(Method.java:597) 在 com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:100) 在 com.google.gwt.user.server.rpc.RPC。调用和编码响应(RPC.java:569)Method.invoke(Method.java:597) 在 com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:100) 在 com.google.gwt.user.server.rpc.RPC。调用和编码响应(RPC.java:569)
早些时候我得到了这个例外:
我通过将这些行添加到我的代码中解决了这个问题:
对于第一个异常,是否还有其他类似的工作。
谢谢,马特。
netbeans - 无法从 NetBeans 中的 WSDL URL 创建 Web 服务客户端
我正在尝试使用WSDL URL
NetBeans IDE 7.0 中的选项创建 Web 服务客户端。不幸的是,它无法创建一个并且失败并出现以下错误:
除非 saxon9-dom.jar 在类路径中,否则 Saxon 无法写入 DOMResult
看到这个错误信息后,我什至确认是否saxon9-dom.jar
已将其添加到 NetBeans 中的库中。是的,它已经可用。我不知道为什么仍然出现错误。有人可以让我知道出了什么问题吗?
我正在尝试为此 WSDL创建 Web 服务客户端。在 NetBeans 中创建新的 Web 服务客户端时,我选择JAX-WS Style
了客户端样式选项。
更新:
谷歌搜索后,我从以下两个地方读到了一些线索:
1) http://www.mail-archive.com/fop-dev@xmlgraphics.apache.org/msg09659.html
这是由于在 0.95 之后添加了新的事件处理框架。构建过程中为各种消息生成资源文件的步骤似乎需要可写的 DOM 实现。
正如消息所示,Saxon 在单独的 JAR 中提供了这样的实现,在构建 FOP Trunk 时需要将其添加到类路径中。
2) http://xmlbeans.apache.org/sourceAndBinaries/index.html
使用 XPath/XQuery 需要额外下载 saxonb9-0-0-4j.zip 并将其放置在其包含的文件 saxon9.jar 和 saxon9-dom.jar 的类路径中。拉链可在此处获得。由于许可问题,我们无法以二进制分发的形式分发此 zip。
所以,我想在类路径中更改 saxon9-dom.jar。我以前使用的是 saxon9-dom.jar saxonb9-1-0-8j.zip
,但是当我尝试在 中包含 saxon9-dom.jar 时saxonb9-0-0-8j.zip
,现在这个错误已经消失,现在出现了一个不同的错误,如下所示。有什么想法/线索吗?
android - 如何将使用 wsimport (xsd/wsdl) 生成的对象编组到 android 中的 xml?
如何将使用 wsimport (xsd/wsdl) 生成的对象编组到 android 中的 xml?任何帮助将不胜感激。
java - WsImport 蚂蚁任务和 JDK 6
我正在尝试使用 jax-ws 生成 Web 服务代理类,使用 wsimport ant 任务,类似于这个问题,以及以下后续问题:
据我了解,JDK 1.6 的更新版本包括 jax-ws,并且 WsImport ant 任务在 JDK 的 tools.jar 文件中定义。
为什么蚂蚁不自动找到这个?
为什么eclipse也不会自动找到这个?
我发现了一些关于在 JDK 6 中使用 jax-ws 的参考,但这些似乎是基于复制单独下载的 jax-ws 库并将其放入 JDK ext 文件夹(我认为不再需要它,因为它实际上是现在与 JDK 捆绑在一起)。
在已经包含 jax-ws 的 JDK 1.6 版本中使用 wsimport 任务的正确方法是什么?
我的构建 XML:
java - 为具有通用类型的多个 WSDL 优化 WSImport
我正在从事一个相当大的 WS 项目,涉及 20 多个不同的 WebServices。这些 Web 服务虽然彼此独立,但共享一组相当大的通用类型。我们在构建脚本中使用wsimport作为 ant 目标来生成代理类。
问题:随着我们的 WS(和相应的 WSDL)数量的增加,我们注意到我们的代理类的构建时间一直在攀升。经过进一步调查(和分析),我们发现 wsimport 花费了很大一部分构建时间来重复生成常见类型。已经到了生成、编译和打包这些代理类及其常见类型大约需要 15-20 分钟的时间。这对我们来说是个问题,我们正在寻找减少构建时间的方法。
问题:有没有办法只生成一次常用类型?我研究了通过谷歌搜索找到的一些解决方案。其中一个涉及编写一个WSDL 累加器,它解析 WSDL 并将它们组合成一个 WSDL,因此 wsimport 只被调用一次。另一个人暗示使用剧集文件,但进一步调查发现使用这种方法存在问题。
注意:我看过一些较早的类似问题,但没有一个有任何答案。
binding - ws jaxb 自定义外部映射
我必须做自定义 JAXB 外部映射文件。已经有关于这个的红色教程并且找不到任何合适的 JAXB 自定义示例。我的场景是我有两个 WSDL 文件,主 WSDL 和辅助 WSDL,它们包含在主文件中。在辅助 WSDL 文件中是一个complexType
定义,它有一个我想要自定义的名称。顺便说一句,该 complexType 的名称是objectFactory
. 所以现在你知道我真正需要的外部定制是什么了。
我已经走了这么远,当我运行 wsimport path-to-my-main-wsdl -b customBindings.jaxb
输出就像
文件customBindings.jaxb
看起来像
在我的customBindings.jaxb
文件的第二行是两个属性schemaLocation
和node
. 属性是否schemaLocation
需要指向主 WSDL 或辅助 WSDl?并且属性node
是想要的 complexType 的确切路径(XPath)还是这样?XPath(node
属性)中的名称空间是什么,它必须是xs
什么?实际上这types
和schema1
代表schemaLocation
什么?
谢谢
java - Java SOAP“wsimport” - 从文档/文字包装的 WSDL 强制包装绑定?
Java 6 JAX-WS “wsimport” 实用程序在生成一个给定 WSDL 文件的 Web 服务框架(接口)方面做得很好,但有一个令人讨厌的异常。
当给定一个使用SOAP 文档/文字包装样式的 WSDL (也在此处描述)时,它会生成一个具有“裸” SOAP 绑定参数样式的服务接口(在方法签名中将多个参数和返回值扩展为“持有者”对象)而不是 WSDL 指定的简单包装参数和返回值。其他工具,例如 Axis2 wsdl2java 只是使用包装器元素作为输入参数和返回值,而不是自动“解包”它们。
是否可以告诉“wsimport”将 SOAP 绑定参数保持为“包装”而不是“裸”?
java - ANT 任务中的 wsimport 问题
这在 ANT 运行时出现。有谁知道我可以正确设置路径吗?我正在使用 Eclipse,它正在使用 JDK,JAVA_HOME 也设置正确。
提前致谢!
更新: 我相信实际原因是在 build.xml 中,${java.home} 指向的是 JRE 而不是 JDK ...虽然我在 Windows 中设置了 JAVA_HOME,但也指向了 eclipse 中的 JDK。