首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Savon肥皂体问题

Savon肥皂体问题
EN

Stack Overflow用户
提问于 2011-06-07 07:24:51
回答 1查看 3.3K关注 0票数 2

我用的是稀释剂0.9.2和红宝石1.8.7。我正在尝试发出一个复杂类型的soap请求。

我需要弄清楚如何使用ruby和savon为以下类型的请求编写soap主体代码。基本上,请求中的一个复杂类型扩展了另一个类型,还需要将其编码为数组。

soap请求对象应该如下所示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:app="http://someurl/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<soapenv:Header/>
<soapenv:Body>
<app:someMethod soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<xyzResReq xsi:type="java:xyzResReq" xmlns:java="java:com.xyz.request">
<somestring xsi:type="xsd:string">abc123</somestring>
<itinerary xsi:type="java1:xyzItinerary" xmlns:java1="java:com.xyz.domain">
<someList xsi:type="java2:List" soapenc:arrayType="xsd:anyType[]" xmlns:java2="java:language_builtins.util"/>
</itinerary>
</xyzResReq>
</app:someMethod>
</soapenv:Body>
</soapenv:Envelope> 

someList还是模式表单中的一个复杂类型。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<xsd:complexType name="someList">
<xsd:complexContent>
<xsd:extension base="stns:someBaseList">
<xsd:sequence>
<xsd:element maxOccurs="1" name="someElement" type="xsd:boolean" minOccurs="0" />
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>

和someBaseList定义为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<xsd:complexType name="someBaseList"> 
<xsd:sequence>
<xsd:element maxOccurs="1" nillable="true" name="baseElement" type="xsd:string" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>

我怎么才能在稀树草原做这件事。

EN

回答 1

Stack Overflow用户

发布于 2011-06-07 10:44:49

Savon基于这样的假设:大多数请求(XML)都足够简单,可以抽象为哈希。在这个复杂的例子中,我建议两个备选方案:

  1. 您可以使用任何Ruby对象(不是哈希)来响应to_s,而不是哈希。因此,您可以使用to_s方法创建对象(或对象层次结构),通过类似于构建器的内容构造XML,并将其传递给Savon::SOAP::XML#body=。 类SomeXML def self.to_s "xml“结束client.request :some_action do soap.body = SomeXML end
  2. 您还可以使用Savon::SOAP::XML#xml,它向给定的块生成一个Builder实例,以“动态”构造XML。 client.request :some_action do soap.xml do xml\xml xml.person {区b= b.name("Jim");b.phone("555-1234") } end

希望这能帮上忙!另外,请看一下新萨翁指南

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6267579

复制
相关文章
Excel技术:如何在一个工作表中筛选并获取另一工作表中的数据
问题:需要整理一个有数千条数据的列表,Excel可以很方便地搜索并显示需要的条目,然而,想把经过提炼的结果列表移到一个新的电子表格中,不知道有什么好方法?
fanjy
2022/11/16
18.8K0
Excel技术:如何在一个工作表中筛选并获取另一工作表中的数据
yhd-VBA从一个工作簿的某工作表中查找符合条件的数据插入到另一个工作簿的某工作表中
【问题】我们在工作中有时要在某个文件(工作簿)中查找一些数据,提取出来。常用的方法是打开文件,来查找,再复制保存起来。如果数据少还是手工可以的,如果数据多了可能就。。。。
哆哆Excel
2022/10/31
5.5K0
mysql实现获取自增id插入到其他表中
现在有这样一个需求,就是我向A表中插入一条数据,id是自增的。插入之后,还需要向B表中插入一条数据,但是B表中需要保存的数据中要使用刚刚A表自增后的id, 这个其实是一个比较常见的需求,就是两张表之间的一个关联,如果用程序来执行也是很容易实现。但是用sql该如何实现呢? 比如我就在用sql执行之后,获取A的id插入到B表中
一缕82年的清风
2021/12/06
3.6K0
Mysql实现获取自增id插入到其他表中
现在有这样一个需求,就是我向A表中插入一条数据,id是自增的。插入之后,还需要向B表中插入一条数据,但是B表中需要保存的数据中要使用刚刚A表自增后的id, 这个其实是一个比较常见的需求,就是两张表之间的一个关联,如果用程序来执行也是很容易实现。但是用sql该如何实现呢? 比如我就在用sql执行之后,获取A的id插入到B表中
一缕82年的清风
2021/11/24
4.1K0
VBA实战技巧29:从一个工作表复制数据到另一个工作表
今天演示一个简单的例子,也是经常看到网友问的问题,将一个工作表中的数据复制到另一个工作表。
fanjy
2021/07/30
25.7K1
Mybatis 向指定表中批量插入数据
Mybatis 向指定表中批量插入数据
Java架构师必看
2021/09/30
1.6K0
如何在SQL Server中将表从一个数据库复制到另一个数据库
在某些情况下,作为DBA,您需要将模式和特定表的内容从数据库复制到同一实例中或在不同的SQL实例中,例如从生产数据库中复制特定表到开发人员以进行测试或排除故障。 SQL Server提供了许多方法,可以用来执行表的数据和模式复制过程。为了研究这些方法中的每一个,我们将考虑下面的场景: 托管SQL服务器:localhost。这两个数据库都驻留在同一个SQL Server 2014实例中。 源数据库:AdventureWorks2012。 目标数据库:SQLShackDemo。 将从源数据库复制到目标数据库的表
程序你好
2018/07/20
8.3K0
把插入的数据自动备份到另一个表中 ~ 语境:本地和服务器自动同步
逆天最近在弄一个本地和服务器自动同步的东西,每天都会添加很多新数据,本地和服务器同样的ShopMenu表,我总不能每次都把服务器的清掉然后再把本地的导入进去吧~ 可能有人说~直接插服务器的数据库不就可以了吗? 可惜==》 本地的数据测试通过后才允许同步到服务器中 可能又有人说~设置一个 所以就有了以下语境:把插入的数据自动备份到另一个表中 其实语法很简单,就是设置一个简单的触发器(逆天很少用,可能有大神用的比较拗) if exists(select * from sysobjects where name=
逸鹏
2018/04/10
2.6K0
把插入的数据自动备份到另一个表中 ~ 语境:本地和服务器自动同步
使用VBA将图片从一个工作表移动到另一个工作表
今天跟大家分享的技巧来自thesmallman.com,一个分享Excel技巧技术的网站。
fanjy
2022/11/16
4K0
使用VBA将图片从一个工作表移动到另一个工作表
Excel应用实践16:搜索工作表指定列范围中的数据并将其复制到另一个工作表中
“在工作表Sheet1中存储着数据,现在想要在该工作表的第O列至第T列中搜索指定的数据,如果发现,则将该数据所在行复制到工作表Sheet2中。
fanjy
2019/07/19
6.1K0
MySQL/Oracle怎么把一个表的数据复制到另一个表
创建新表复制原有表的结构和数据 create table new_table as select * from old_table; 复制一张表的数据到另一张表(表结构相同) INSERT into table1 select * from table2; 复制一张表的数据到另一张表(表结构相同) INSERT into table1(表中字段1,表中字段2) select 表中字段1,表中字段2 from table2;
共饮一杯无
2022/11/28
1.3K0
SQL 复制表到另一个表
 INSERT INTO targetTableName SELECT COLUMNS FROM sourceTableName;
星哥玩云
2022/08/18
9720
mysql创建临时表,将查询结果插入已有表中
        今天遇到一个很棘手的问题,想临时存起来一部分数据,然后再读取。我记得学数据库理论课老师说可以创建临时表,不知道mysql有没有这样的功能呢?临时表在内存之中,读取速度应该比视图快一些。然后还需要将查询的结果存储到临时表中。下面是创建临时表以及插入数据的例子,以供大家参考。 A、临时表再断开于mysql的连接后系统会自动删除临时表中的数据,但是这只限于用下面语句建立的表: 1)定义字段   CREATE TEMPORARY TABLE tmp_table (       name VAR
苦咖啡
2018/05/07
9.9K0
SQL:将查询结果插入到另一个表的三种情况
SQL:将查询结果插入到另一个表的三种情况 一:如果要插入目标表不存在: select * into 目标表 from 表 where … 二:如果要插入目标表已经存在: insert into 目的表 select * from 表 where 条件 若两表只是有部分(字段)相同,则 复制代码 代码如下: insert into b(col1,col2,col3,col4,…) select col1,col2,col3,col4,… from a where… 三:如果是跨数据库操作的话: 怎
学到老
2018/03/16
3.7K0
如何在 FPGA 中做数学运算
由于FPGA可以对算法进行并行化,所以FPGA 非常适合在可编程逻辑中实现数学运算。我们可以在 FPGA 中使用数学来实现信号处理、仪器仪表、图像处理和控制算法等一系列应用。这意味着 FPGA 可用于从自动驾驶汽车图像处理到雷达和飞机飞行控制系统的一系列应用。
碎碎思
2023/08/30
7280
如何在 FPGA 中做数学运算
SQL:将查询结果插入到另一个表的三种情况
insert into b(col1,col2,col3,col4,…) select col1,col2,col3,col4,… from a where… 三:如果是跨数据库操作的话: 怎么把A数据库的atable表所查询的东西,全部插入到B 数据库的btable表中
学到老
2019/02/14
5.5K0
MySQL如何将select子查询结果横向拼接后插入数据表中
除了最后一列默认是当前时间戳,每一列的结果都是一个select查询结果。如何将查询的结果合并成一条记录插入到上面的数据表中呢?网上也没有确切的答案,摸索了很久,最后,终于在百般尝试下使用join进行横向拼接完成了我想要的功能!参考sql语句如下:
恋喵大鲤鱼
2018/08/03
7.8K0
如何在PostgreSQL中更新大表
在Postgres中更新大型表并不像看起来那样简单。如果您的表包含数亿行,您将发现很难及时进行简单的操作,例如添加列或更改列类型。
蒋老湿
2019/11/06
4.8K0
点击加载更多

相似问题

如何在VBA中从一个表中获取大数据并插入到另一个表中?

11

从一个表中获取数据,并将数据插入到另一个表中。

36

如何从一个表中检索数据并插入到另一个表中?

13

如何在MongoDB中从一个表中选择数据并插入到另一个表中

11

插入到一个表中,获取id并插入到另一个表中

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文