问题标签 [soap-rpc-encoded]
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.
c# - 在 .NET 中使用 RPC/编码的 SOAP Web 服务时出错
调用 Web 服务方法时收到以下错误。
无法将 System.Xml.XmlNode[] 类型的对象分配给 System.String 类型的对象。
Web 服务是 PHP 服务。我使用此处定义的 wsdl 文档中的 wsdl.exe 创建了代理类 - http://webservice.intelecast.com.au/traffic/PublicSoap/server.php?wsdl
下面是我正在调用的代理客户端方法。
代理类似乎无法处理 wsdl 中定义的复杂类型/数组......我现在不确定如何继续无法在任何地方的网络上找到解决方案。
下面是我收到的 SOAP 响应。这一切似乎都是有效的。
c# - 如何使用 WCF 使用 PHP SOAP 服务
我是网络服务的新手,所以如果我在这里犯了一些重大错误,请向我道歉,呵呵。
我已经使用 PHP 构建了 SOAP 服务。服务与 SOAP 1.2 兼容,并且我有可用的 WSDL。我启用了会话,以便我可以跟踪登录状态等。
我在这里不需要一些超级安全性(即消息级安全性),我只需要传输安全性(HTTPS),因为该服务将不经常使用,并且性能不是什么大问题。
我很难让它工作。C# 抛出了一些不清楚的异常(“服务器返回了一个无效的 SOAP 错误。有关更多详细信息,请参阅 InnerException。”,这反过来又说“在限定名称 'rpc:ProcedureNotPresent' 中使用的未绑定前缀。”),但使用 PHP SOAP 客户端使用服务表现如预期(包括会话和所有)。
到目前为止,我有以下代码。注意:由于真实代码的数量,我发布了最少的代码配置
PHP SOAP 服务器(使用 Zend Soap Server 库),包括通过服务公开的类:
WSDL:
最后,WCF C# 消费者代码:
有任何想法吗?我在这里做错了什么?
c# - 如何使用 WCF 服务引用来使用 RPC 样式的 Web 服务?
我正在编写一个调用 Web 服务对客户端进行身份验证的 C# 客户端。我使用添加服务引用将 wsdl 文件添加到我的项目中,并且成功生成了代理类。
我正在创建将像这样使用的对象的新实例:
当用户需要进行身份验证时,这是我的代码:
我的肥皂响应如下所示:
returnResults 在生成的代理类中看起来像这样:
我不断收到错误:对象引用未设置为对象的实例,returnResult 为空。
java - 如何使用 Java 使用 rpc 编码的 SOAP Web 服务
有没有办法通过使用 java 来使用 SOAP Web 服务:
- 所需的 SOAPaction(例如名为“find”的方法名)
- Web 服务的 URL
- 标头身份验证(用户名和密码)
- 最后输出结果
我通过 php 成功使用了一个示例请求 xml 文件,但我找不到在 java 上执行此操作的正确方法。
[更新:Web 服务的 WSDL 样式是 RPC/编码的]
[更新 #2:您可以在下面找到我是如何解决问题的(通过使用 IDE 生成的 java 存根)]
web-services - Apache Axis 1.4 生成的类与 JBoss 7 兼容?
我们正在将应用程序从 JBoss AS 5.1 迁移到 JBoss AS 7.4 (EAP 6.3)。在那里,我们使用 RPC 编码的 Web 服务。
我们使用 Sun XML RPC 库从 WSDL 自动生成 Java 源代码,这在当时已经非常陈旧了,并且发生了一些与 SAAJ 版本相关的冲突,这些冲突在 JBoss 环境中是可以解决的。所以我们排除了在 JBoss 7 环境中使用 Sun RPC 库的可能性。
有人建议我们使用 Axis 1.4 从 WSDL 生成类。但是,它也很古老(2006 年),所以恐怕我们最终会遇到与 Sun RPC 类似的冲突。
所以我想知道是否有人在 JBoss 7(在 Java 7 上)中成功部署了从 Axis 1.4 自动生成的类,以及他们是否遇到了库冲突?
web-services - 使用 Apache Camel 和 CXF 端点调用 RPC/编码的 Web 服务
有很多关于 Apache Camel + CXF-Endpoint 和 RPC/encoded legacy webservices 的信息。但是直到现在我还没有找到解决问题的方法。
我想通过 CXF 端点从 Apache Camel 调用 RPC/编码的 Web 服务。CXF 不支持 RPC/编码的 Web 服务。所以我尝试了两种方法来解决这个问题。
将 wsdl 从 RPC/encoded 转换为 RPC/literal 并生成源文件。以 CXF 支持的 RPC/literal 样式调用 Web 服务。以下文章建议这种方法可以解决我的问题:使用 RPC/编码 Web 服务的最佳方式?
发送完整的 SOAP 消息而不映射到对象(无 JAXB)。
方法 1 和方法 2 都不起作用。在接下来的部分中,我将更详细地解释我的方法和问题。
先决条件
- 阿帕奇雄猫 7
- 阿帕奇骆驼 2.14.1
- 阿帕奇 CXF 2.7.10
- Webservice Endpoint 在http://localhost:9000/myfunctionalmock上使用 SOAP-UI 5.0.0 进行模拟
第一种方法:将 wsdl RPC/encoded 转换为 RPC/literal 并生成源
在 RCP/encoded wsdl 中,我进行了以下更改:
WSDL 绑定:
至
对象数组:
至
简单类型的数组:
至
未定义类型(anyType)的数组:
至
之后,我使用 IntelliJ Webservice 插件(通过 CXF wsdl2java)生成了源文件
在 Camel 中,我配置了以下端点:
Camel路由中CXF-Endpoint的使用:
我想调用webservice的以下功能:
骆驼路由中的计时器仅用于触发Web服务。
这种方法的问题:
在运行时,部署时会出现以下消息:
运行时发生以下异常:
第二种方法:发送 SOAP 消息而不映射到对象。
Camel中的端点定义:
路线使用:
但是http://localhost:9000/myfunctionalmock上的网络服务永远不会被调用。我在日志文件中发现了以下日志消息:
两种方法都不起作用。是否有可能在 Camel 中通过 CXF 调用 RPC/编码的 Web 服务?
提前致谢。
问候,
最大限度
java - Java、RPC/编码的 Axis 1.4 客户端无法发送空参数
我正在处理使用 RPC/编码的 WSDL 文件将 Web 服务连接到我的 Java/Spring 服务的问题。我无法更改此 WSDL。
我发现我必须使用 Apache Axis 1.4 来创建客户端(根据这个问题:https ://dzone.com/articles/wsdltojava-error-rpcencoded )。
然后我在登录/密码/api_key 参数上遇到了这样的消息:
错误Element 'api_key': '' is not a valid value of the atomic type 'xs:int'
我通过添加解决了这个问题:
现在我可以登录并从该服务中获取一些数据,但我无法推送带有空参数的消息,例如:
其中报价定义为:
现在我遇到了这样的异常:
我已经尝试过设置
至
在 Offer.java 中。
我正在通过以下方式创建优惠消息:
我将非常感谢找到解决此错误的方法。我不需要坚持使用轴 1.4 - 任何其他让我通过 SOAP 连接到此服务的解决方案对我有用。非常感谢您的帮助!
java - Axis 客户端,从(RPC/编码样式)SOAP 请求 xml 中省略空标签
我们有一个来自供应商的 SOAP Web 服务(我们无法更改),它使用“RPC/编码”样式。我们使用 Apache Axis(1.4 版)来生成和使用客户端。
其中一个方法的请求中有一个元素,如下所示:
所以它是“可省略的”,但不是“可空的”。因此,当我将此参数留空时(当我们根本不调用setCRD_EXPIRY
时),我希望请求 XML 中根本没有CRD_EXPIRY
标记。
但是 Axis 引擎,仍然把这个标签放在请求中,带有nil="true"
属性:
此外,我已经深入研究了源代码,并在org.apache.axis.encoding.ser.BeanSerializer
课堂上发现了这些行,这似乎可以解决问题:
看起来对于“编码”样式的 Web 服务,空参数始终存在于带有nil
值的请求 XML 中。即使它们不是“可空的”。
我是真的吗?如果是,为什么会这样(看起来不像是错误)?
主要是,我怎样才能实现请求 XML 中不出现空参数?
谢谢
web-services - 为 MODIS Web 服务生成 WCF 客户端
我想为这个网站上提供的 MODIS Web 服务创建一个 WCF 客户端:http: //daac.ornl.gov/MODIS/MODIS-menu/modis_webservice.html有一个指向 WSDL 文件的链接,我可以使用它来生成代理班级。问题是,该文件格式不正确,我无法使用添加服务引用、wsdl.exe 或 svcutil.exe 等 .NET 工具创建客户端。当我尝试通过网站生成代理类时,我得到以下响应:
我尝试下载 WSDL 文件并从本地副本创建代理类,但随后出现此错误:
这些错误对于添加服务参考和 wsdl.exe 和 svcutil.exe 实用程序的控制台输出是相同的。有没有其他方法可以为此服务创建 WCF 客户端,或者在 .NET 中是不可能的?
编辑-----我已经解决了问题的发生,因为 WSDL 是 RPC/Endoded 标准,而 .NET 工具无法正确处理它。我试图将其转换为文档/文字标准,但它仍然无法正常工作。有人可以查看我的 WSDL 文件并检查我有什么问题吗?可在此链接下获得:https ://wklej.to/67rR7
soap-rpc-encoded - 黑客、脚本、恶意、解码器?
我在我网站的每个页面的开头都有这个......问题,如何解码它以知道它的作用?
这是代码: