问题标签 [gsoap]
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.
soap - gsoap - SOAP Header 中的 WS-Addressing 元素
我需要在我的 Soap 标头中添加 WS Addressing(我正在使用 gsoap 框架)。有没有办法自动添加?我查阅了 gsoap 文档,但没有找到任何相关信息。所以现在我已经手动将 WS-Addressing 添加到我的 SOAP_ENV_Header 中,如下所示
但我想自动生成它,因为我必须向 Soap Header 添加一些其他结构,这些结构是从我的 wsdl/xsd 文件自动生成的。
谢谢
web-services - WCF 和 gSOAP - 可互操作的代码?
我正在尝试使用 SOAP 1.2 协议编写一个简单的 WCF 服务器 + gSOAP 客户端概念验证应用程序。这是服务器代码:
然后我启动服务并使用以下命令生成代码:
然后我编译以下 C++ 代码:
这会生成错误 8 (SOAP_MUSTUNDERSTAND)。有没有人曾经生成工作 WCF 到 gSOAP 链接?我究竟做错了什么?
xml - 考虑到 WSDL 合规性和性能,在 gsoap 中做数组的最佳方法
我正在使用 gsoap 生成 XML SOAP 解析器和 WSDL 语法,并且想知道什么是推荐的方法来表达一个静态数组,它既可以快速解析又可以生成通过所有验证测试的相应 WSDL(如 Eclipse WSDL Validator或 NetBeans 验证 XML)。
如果我将此输入用于 gsoap:
我得到了这个生成的 WSDL(在定义/类型/模式标签内):
通过 NetBeans "Validate XML" 运行它会出现以下错误:
- 错误:src-resolve:无法将名称“SOAP-ENC:Array”解析为(n)“类型定义”组件。
Eclipse WSDL Validator 给出了这两个错误:
- WS-I:(BP2108) Array 声明使用 - 限制或扩展 - soapenc:Array 类型,或在类型声明中使用 wsdl:arrayType 属性。
- WS-I:(BP2122) wsdl:types 元素包含不是 XML 模式定义的数据类型定义。
我可以通过更改 gsoap 代码来定义动态数组来清除这些错误:
(带有相应的 WSDL :)
但是现在我失去了使用静态数组的性能提升。是否有其他方法可以在保持合规性的同时保持性能?
c++ - 测试 gSOAP 服务器
在正常的客户端/服务器设计中,客户端可以执行在服务器端实现的功能。是否可以通过将额外的客户端连接到 gSOAP 服务器来测试它?
soap - 您在哪里使用过 gSOAP?
您能否举例说明您是如何使用 gSOAP 以及它在您现有架构中的集成程度如何?您是否发现 gSOAP 的开发瓶颈?
web-services - Web 服务端口 没有问题
我正在使用 gsoap 开发一个 Web 服务项目。我是 Web 服务的新手,有一些基本问题。
端口号应该是什么。我的网络服务?目前,这个 Web 服务是一个独立的服务,监听一个硬编码的端口号。22050。客户端连接到此端口,一切正常。这种方法可以吗?这种方法的优点/缺点是什么?
或者我的 web 服务应该是 apache web 服务器的插件吗?在那种情况下它是如何工作的?Apache httpd 侦听端口 80,因此客户端向该端口发送请求。那么请求是如何被路由到我的网络服务的呢?
我没有找到任何合适的在线资源。任何指针都会很棒。
xml - gsoap 类生成问题
我正在尝试为 JIRA 问题跟踪系统 WSDL 生成 gsoap 类。我运行这些命令来生成所需的类:
soapcpp2 命令给出以下输出,但没有说明如何修复它。
这些是(大部分)错误:
这是 JIRASoap.h 的相关部分(第 928-947 行):
当我尝试编译我的程序时,我收到了这个错误:
soapStub.h:2799:错误:ISO C++ 禁止声明没有类型的“ArrayOf_USCORExsd_USCOREbase64Binary”
以下是 WSDL 的相关部分:
据我所知,大多数类型都在soapStub.h 中定义,但ArrayOf_USCORExsd_USCOREbase64Binary 不是。
当我生成仅 C 文件时,我得到“struct /*?*/”而不是“ArrayOf_USCORExsd_USCOREbase64Binary”。
c++ - 使用 gSOAP 进行 VS 2003/C++ 访问具有 WS-Security 的 SOAP Web 服务?
我们有一个即将推出的项目,以允许只能使用 C++/VS 2003 扩展的旧平台调用使用 WS-Security 的基于 SOAP 的 Web 服务。
我的 Google 研究表明gSOAP可能是最好的方法。
我正在寻找验证和/或替代建议。
c++ - 网络编程:SOAP 与 DIY 编组与 XML 库?
我知道已经有很多关于 SO 的讨论,包括 SOAP、膨胀、XML 和 REST 等替代机制。
这是情况。一个新的团队成员真的在谈论基于手工实现协议的难度的 SOAP。他推荐使用 gSOAP(项目全部使用 C++)。他说的是 WSDL 之类的东西可以清理大量杂乱的手工编码 C++。
现在,我正在处理大多数使用基于 XML 的文本消息和 expat XML 库的网络。所以我有一些与修改消息格式或添加参数列表相关的编程工作(不多)。在发送端,我打包一个 XML 请求并通过一个普通的旧 TCP 套接字发送它。在接收方,我使用 DOM 或 SAX 解析 XML。等等。到目前为止它运行良好。XML 消息非常紧凑,平均最多只有几百个字符。我理解这些信息中的每一项。
我们希望使用 PHP 编码的网站可以访问产品的一部分(服务器)。这在一定程度上推动了这个想法,即 SOAP 接口对于脚本编写者来说将“更容易”。这个项目的每个人都相信 SOAP 是他们的救赎。
我认为像 gSOAP 这样的新大型库的引入对成熟项目的发展势头具有极大的破坏性。
我想知道的是,是否有一种不同的、更紧凑的方式来做 SOAP 给我们的事情。以及如何平衡 gSOAP 或其他 SOAP 工具的主张,使开发生活更轻松与严峻的现实。
IE,有人告诉我 WSDL 比使用 XML 库手动编码 C++ 更好、更容易、更熟练等。它将 C++ 对象的语义直接放入网络消息的声明中。问题是,我定义的许多 XML 消息在接收端并没有一对一地映射到单个不同的对象。
或者,我可能什么都不担心。
但是,当我在这里扫描消息时,现实似乎与我在当地被告知的内容相矛盾。
soap - 在哪里可以找到 gSOAP 生成的 WSDL 文件
我收到了在 gSOAP/2.7 上运行的 Web 服务的 url(根据 HTTP 标头决定)。问题是他们没有向我提供 WSDL 文件。如果服务地址是http://www.host.com/,任何人都知道我应该查找 WSDL 的默认 URL