java - Spring Tool Suite 4 (JAVA) 上的“Web Service Client (CXF 2.)”问题
问题描述
我在 JDK 1.8.0.181 上使用带有 JAVA 的 Spring Tool Suite 4。我有 Web 服务服务器的 wsdl 链接,我想在我的项目上创建对应的 Web 服务客户端。我已将 CXF 首选项配置如下:
我创建客户 Web 服务的步骤:
- 在我的 maven 项目上,右键单击“新建”->“其他”->“Web 服务客户端”,
- 我选择的是Tomcat服务器(之前8.5配置的),
- 我选择配置环境(之前在CXF上配置),
- 我将 WSDL 链接复制到相应的字段中。
复制链接后,等待几秒后,STS返回如下错误:
Could not retrieve the WSDL file "...wsdladresse.wsdl". Do you want to continueto wait for this file ?
我点击了继续,并能够添加一个空的 xml 文件(暂时)绑定。wsdl 恢复过程完成后,STS 将返回以下错误:
WSDLToJava Error: Schema Error : cos-st-restricts.1.1 : Le type 'anySimpleType' étant non décomposable, sa valeur {base type definition}, 'anyType', doit être une définition de type simple atomique ou un type de données primitif intégré.
在互联网上进行了一些研究后,我了解到我必须创建我的课程提案(这里是“anySimpleType”类型)并将它们添加到我的绑定 xml 文件中。我如何知道类的正确结构以确保 STS 在导入 WSDL 时将其考虑在内?
谢谢
解决方案
请您在您的 STS 中添加 apache CXF,然后在 STS 中生成 Web 服务客户端类非常容易,您可以通过以下步骤实现此目的。
右键单击任何项目->新建其他->Web服务->Web服务客户端->然后将wsdl url(或位置)粘贴到服务定义->下一步->完成
您将看到生成的类在您的 src 文件夹中。
注意:如果没有 Eclipse,您也可以使用 JDK 附带的 wsimport 命令实用程序从 wsdl 文件生成客户端类。
请参阅此链接“ https://help.eclipse.org/oxygen/index.jsp?topic=%2Forg.eclipse.jst.ws.cxf.doc.user%2Ftasks%2Fcreate_client.html ”和“ https://help .eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.wst.wsdl.ui.doc.user%2Ftasks%2Ftimpwsdl.html '
推荐阅读
- javascript -
不在框架 0.9.2 中工作 - reactjs - 仅在调用第一个函数后才调用第二个函数-本机反应
- jquery - 从jquery中的一系列值中获取数据
- java - 由于“无法确定 java 版本”错误,无法在 Mac 上的新项目上运行 grails 命令
- flutter - 如何使用未来
? - r - 替换以空格分隔的字符串中的特定字母结尾的每个匹配项
- c#-4.0 - 向 Salesforce 插入表单数据
- c++ - 如何用pair保留二维向量
- unit-testing - 如何在 Flutter 中测试(单元测试)一个 BehaviorSubject?
- spring - 通过 Zuul 在 Spring Boot 微服务之间进行身份验证