Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中仅使用XSD而不使用WSDL调用web服务?_Java_Soap_Jax Ws_Cxf_Jaxb2 - Fatal编程技术网

如何在Java中仅使用XSD而不使用WSDL调用web服务?

如何在Java中仅使用XSD而不使用WSDL调用web服务?,java,soap,jax-ws,cxf,jaxb2,Java,Soap,Jax Ws,Cxf,Jaxb2,我在公司之外有一个web服务,它不为其服务提供WSDL。它们确实提供: 关于如何向其服务发布的详细文档 SoapEnvelope应该是什么样子 甚至还有一个.xsd,我可以用它来创建消息,并将其放入调用的SOAP 如何在没有WSDL(Java)的情况下对web服务进行SOAP调用?我需要一个工具,该工具可以接收我的JAXB格式的XML消息,将其封装在SOAP信封中,并将其作为HTTP POST发送到某个web服务(带有SSL和证书) 有没有工具可以让这变得简单?我简要地看了一下,但是由于大多

我在公司之外有一个web服务,它不为其服务提供WSDL。它们确实提供:

  • 关于如何
    向其服务发布
    的详细文档
  • SoapEnvelope应该是什么样子
  • 甚至还有一个
    .xsd
    ,我可以用它来创建消息,并将其放入调用的SOAP
如何在没有WSDL(Java)的情况下对web服务进行SOAP调用?我需要一个工具,该工具可以接收我的JAXB格式的XML消息,将其封装在SOAP信封中,并将其作为HTTP POST发送到某个web服务(带有SSL和证书)


有没有工具可以让这变得简单?我简要地看了一下,但是由于大多数示例和文档都需要一个
wsdl
文档,我不确定我是否应该使用CXF。

他们给了您URL吗?尝试浏览到wsdl

这是您应该在其中下载WSDL文件的标准URL(除非他们手工编码所有内容)

好的,如果没有,你有两种方法

  • 根据他们的文档自己创建WSDL

  • 使用您知道的任何工具解析SOAP XML。例如JAXB、Digester、DOM


  • 他们向我提供了一份冗长的pdf文件,解释了如何制定一个请求,所有可能的100种请求类型是什么,并提供了一个XSD用于SOAP调用,但是他们声明:“虽然SOAP是一个公认的Web服务API,但RTO Web服务器不提供Web服务接口。也就是说,没有Web服务描述语言(WSDL)文件可供参与者web服务客户端软件使用。“我认为,如果您有定义soap消息的XSD,以及定义每个soap请求中可以/应该填充哪些模式元素的文档,那么您当然可以构建符合该规范的WSDL(或任何您喜欢的用于soap服务的工具)比手工编写代码要好得多。如果您认为您想尝试此功能并需要帮助,请告诉我。