Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.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
基于wsdl创建pythonsoap服务器_Python_Soap_Wsdl - Fatal编程技术网

基于wsdl创建pythonsoap服务器

基于wsdl创建pythonsoap服务器,python,soap,wsdl,Python,Soap,Wsdl,我有一个wsdl文件,描述Java产品上的通信服务器客户端。 我正在实现一个基于Python的新服务器,它将实现相同的服务 您知道有没有基于wsdl创建Python服务器代码的方法,它不需要我编写所有涉及的复杂类型 另外,您推荐什么Api?当谈到SOAP支持时,不幸的是Python不再包含“电池”。客户端的支持是可以接受的,但在服务器端,您基本上是独立的 首先,您可能希望了解以下内容: 如果您真的想走这条路,那么这似乎就是要使用的工具,尽管我怀疑它能否与最新的2.x Python发行版配合

我有一个wsdl文件,描述Java产品上的通信服务器客户端。 我正在实现一个基于Python的新服务器,它将实现相同的服务

您知道有没有基于wsdl创建Python服务器代码的方法,它不需要我编写所有涉及的复杂类型


另外,您推荐什么Api?

当谈到SOAP支持时,不幸的是Python不再包含“电池”。客户端的支持是可以接受的,但在服务器端,您基本上是独立的

首先,您可能希望了解以下内容:

如果您真的想走这条路,那么这似乎就是要使用的工具,尽管我怀疑它能否与最新的2.x Python发行版配合使用

使用Python2.6.6,我尝试使用ZSI2.0从WSDL开始构建web服务。当使用
wsdl2py
wsdl2dispatch
生成代码时,收到一些“模块已被弃用”警告,必须单独安装并破解my以便首先解决,否则我会得到“module ext.reader不存在”,然后只会得到一个令人失望的“ZSI:EvaluateException为nillable获得None(False),minOccurs(1)element“在具有必需元素的基本“Hello world!”WS上出错

切换到不再需要PyXML的ZSI 2.1_a1,wsdl2py(wsdl2dispatch在2.0中所做的一切)和
wsdl2dispatch(wsdl2dispatch
在2.0中所做的一切),但仍然以“ZSI:EvaluateException对于nillable(False)和minOccurs(1)元素”错误而陷入死胡同

这段经历并不是很有趣,但足以让我对Python为SOAP web服务提供的功能形成看法。。。这并不多(这只是针对基本的web服务,没有什么特别的)。YMMV

EDIT:我最近偶然发现,虽然面向客户机解决方案,但它也提到了一些用于构建SOAP服务的库

这个问题没有得到足够的重视

目前被接受的答案是好的,但它的答案是“否”。是否真的没有合理维护和通用的解决方案

不幸的是,我不认为否定的答案是因为对这个问题缺乏关注。python中确实不支持WSDL。如果您想避免从头开始构建自己的soap信封的复杂性,那么我唯一可以推荐的就是使用许多soap Web服务工具(例如soapui)中的任何一种构建一个示例信封,然后在python代码中将其用作模板字符串(我知道,非常糟糕)


更新您可以使用。它是一个python RPC工具包,在其他协议中支持SOAP。它将为您创建WSDL,但是如果您的目标是实现您已经拥有的WSDL所描述的服务,那么您必须对您的spyne服务(用python编写)进行微调,直到生成的WSDL与原始WSDL匹配为止。不幸的是,我同意您的解决方案。Python对SOAP服务器的支持不是很好。希望这些“新”图书馆取得一些成功。谢谢我在这上面加了一笔赏金。我简直不敢相信没有好的解决方案。顺便问一下:你知道有哪个库可以基于WSDL生成代码(不是Python的)吗?我想知道为Spyne(基于WSDL生成模型)实现这样的功能有多难。似乎没有成熟的python soap服务器。。。真不敢相信这会发生在python上