本文档取自IBM Websphere的帮助文档
此方案集由名为
Plants by WebSphere
的在线零售商设计。
Plants by WebSphere
使用
WebSphere Application Server
中的
Web service
支持改进与其供应商的通信。描述
Web service
支持的更高级方案仅在
WebSphere Application Server
的特定版本中可用。请查询您的产品文档以确认您的版本支持什么。
您可以把
Plants by WebSphere
看作在
WebSphere
样本收藏夹中可用的样本应用程序。这些方案彼此关系不大。它们描述这个虚构的在线零售商如何能使用多种
Web service
技术,其中有些技术超出了样本当前演示的范围。
Web service
是中间件。您可使用
Web service
把应用程序连接在一起,不论每个应用程序是如何实施的或位于何处。例如,
Web service
可把零售商连接到批发供应商。中间件并不算新。在
Web service
中新的是此连接基于开放标准和
Web
技术。
Web service
在与因特网类似的抽象级别操作,并且它们可使用任何可启用
Web
的操作系统、硬件平台或编程语言。
Plants by WebSphere
的店面出售植物和园艺用品。在客户订购商品时,站点检查其存货数据库中的商品可用性。方案显示存货系统如何能在各阶段中成长,使用各种
Web service
技术改进其能力。
如样本收藏夹中所示,
Plants by WebSphere
应用程序已经具有
Web service
能力。请参阅下面获取该在线零售商在采用
Web service
技术之前可能如何运营的描述。已经引入了关键
Web service
组件。要确定对于您已购买的
WebSphere Application Server
版本有哪些组件可用,请查询每个版本的文档。
在此方案中,该园艺零售商把现有
Web
应用程序转为
Web service
,用于检查其主要批发园艺供应商的存货。
在此方案中,该园艺零售商使用
Web service
执行对几个批发供应商的存货搜索。
在此方案中,该园艺零售商使其
Web service
可供需要服务的其他人使用。
目前,这些方案提供描述而不是逐步说明。要获得
Web service
编码的经验,请参阅
WebSphere
样本收藏夹。它为构建、配置和运行
Plants by WebSphere
样本应用程序和其他应用程序提供详细的说明。
在
Web service
之前
假设
Plants by WebSphere
店面不使用
Web service
。该园艺零售商建立了一个令人印象深刻的因特网店面使客户能购买和订购商品。为确定是否可供给用户订单,
Web
应用程序依靠
Enterprise bean
查询
Plants by WebSphere
存货数据库。如果货栈中有该商品,则站点向客户确认订单。
如果客户订购的商品缺货,则站点通知客户该商品缺货,并建议客户同意让商品延期交货。之后,在客户离开
Plants by WebSphere
站点很久以后,站点管理员或存货管理员可能会向供应商打电话或发传真以获取更多存货。
引入
Web service
Web service
可以给予
Plants by WebSphere
让缺货的商品装运到其仓库或直接到其客户的自动化方法。如果能足够快地联系到供应商,
Plants by WebSphere
就不需要通知其客户商品缺货。如果减少自己的存货是期望的业务行动,
Plants by WebSphere
就可以开始这么干。
Web service
在以下核心技术上构建:
XML
解决数据独立性的问题。您可使用它描述数据,还可把该数据映射进或映射出任何应用程序或编程语言。
要使其应用程序交换信息(如商品价格和可用性),
Plants by WebSphere
及其供应商将把数据放入双方都同意的一组
XML
标记中。
要获取更多的信息,请参阅
www.w3.org
上的
XML
规范
。
使用此基于
XML
的语言来创建底层应用程序的描述。它是这个有关通过充当底层应用程序和其他启用
Web
的应用程序之间的接口,使应用程序变成
Web service
的描述。
Plants by WebSphere
有一个能查询供应商存货的应用程序。为了启用通过因特网与供应商的通信,该公司把应用程序转为
Web service
。
要获取更多的信息,请参阅
www.w3.org
上的
WSDL
规范
SOAP
是
Web
的核心通信协议,大多数
Web service
都使用此协议互相谈话。
SOAP
是用于
Web service
请求的
XML
格式。根据
SOAP
规格,
SOAP
是
“
一个用于在分散的、分布式环境中的信息交换的轻量级协议
”
。它是三个部分组成的基于
XML
协议;一个定义描述消息中有什么和如何处理它的框架的包络,一组用于表达应用程序定义的数据类型的编码规则,以及一个用于表示远程过程调用和响应的约定。
SOAP
可潜在地与其他多种协议组合使用;但是,此文档中定义的唯一绑定描述的是如何把
SOAP
与
HTTP
和
HTTP
扩展框架组合使用。
因为它们对于
Plants by WebSphere
内部网是外部的,所以与其供应商的通信将利用
HTTP
上的
SOAP
。在公司内部网中操作的
Web service
可使用其他传输,如本地
Java
绑定。下面描述的
Web service
调用框架(
WSIF
)组件可帮助
Plants by WebSphere
应用程序动态地为给定情形选择优化传输机制。
要获取更多的信息,请参阅
www.w3.org
上的
SOAP
规范
。
Web service for J2EE
也称为
JSR-109
,定义
J2EE
应用程序如何创建和访问
Web service
。
实施
Web service
应用程序
描述如何实施到现有应用程序的
Web service
接口,然后在应用程序服务器中部署您的
Web service
。
-
Java API for Remote Procedure Calls
JAX-RPC
也称为
JSR-101
,它定义
Java
应用程序如何访问
Web service
。
WebSphere
产品线提供这些附加组件以帮助您从
Web service
得到最多好处。方案更详细地描述了
Plants by WebSphere
如何使用每个组件。
WS-Security
(
Web service
安全性)
WebSphere Application Server
的
Web service
安全性是基于
Web service
安全性(
WS-Security
)规范中包括的标准,它处理如何为
Web service
环境中交换的消息提供保护。它定义了保护消息完整性和机密性的核心工具,并提供了把安全性相关声称与消息关联的机制。
Web service
安全性是一个消息层标准,它基于通过
XML
数字签名的安全
SOAP
消息、通过
XML
加密的机密性和通过安全性令牌的凭证传播。
要获取更多信息,请参阅
保护基于
WS-Security
的
V5.x
应用程序的
Web service
。
Web service
方案:对供应商的静态查询
在此方案中,在线供应零售商把应用程序转为
Web service
,用于检查其主要供应商的存货。
Plants by WebSphere
是出售植物和园艺用品的因特网店面。该公司意识到可使用
Web service
编程接口
“
打包
”
其现有的
Web
应用程序。例如,可把
BackOrderStock
会话
bean
转为
SOAP Web service
客户机,该客户机与位于供应商处的供应商
Web service
应用程序交互。明确地说,可把
BackOrderStock
会话
bean
功能转为
J2EE
客户机和
JAX-RPC
客户机的
Web service
。这两个客户机是
Web service
客户机的
J2EE
和
Java
标准。
如何处理已脱销的商品
当客户在
Plants by WebSphere
站点上根据
Plants by WebSphere
存货订购不可用的商品时,发生以下事件:
1.
Plants by WebSphere
检查它自己的存货。
Web
站点使用的应用程序检查
Plants by WebSphere
存货数据库。它发现该商品不在库存中。
2.
Plants by WebSphere
使用
Web service
检查供应商存货。
应用程序调用
SOAP
客户机,后者与供应商站点上的
SOAP
服务器通信以确定供应商的库存中是否有该商品。供应商数据被发送到
Plants by WebSphere
。
3.
Plants by WebSphere
获取或未获取已脱销的商品。
如果供应商表明库存中有该商品,则
Plants by WebSphere
使用的应用程序确定是否代表客户订购该商品。数据的交换可能包括检查价格阈值,在此阈值以上
Plants by WebSphere
将不订购该批发商品。它可能还包括决策信息,如供应商将需要多长时间来传递该商品,或制造商计划停止生产该商品的日期。
4.
Plants by WebSphere
尽可能快地把结果通知其客户。
如果能足够快地联系到供应商,
Plants by WebSphere
就不需要通知其客户有关可用性问题。它只要确认该商品可用即可,就好像该商品在
Plants by WebSphere
的库存中一样。如果供应商存货暂时缺少该商品,或
Plants by WebSphere
决定不从供应商哪里订购该商品,
Plants by WebSphere
将向客户发出相应的响应。
请参阅样本收藏夹以获取
GreenhouseByWebSphere
应用程序的详细信息,它是使用
Message Driven Beans
(
MDB
)、无状态会话
bean
和
Java
消息服务的企业到企业(
B2B
)的应用程序。
在此方案中使用的
Web service
技术
此方案使用以下
Web service
技术。
XML
(可扩展标记语言)
XML
用于标准化
Plants by WebSphere
与其供应商之间的数据交换。
Web service for J2EE
Web service for J2EE
也称为
JSR-109
,它定义
J2EE
应用程序如何创建和访问
Web service
。
远程过程调用的
Java API
JAX-RPC
也称为
JSR-101
,它定义
Java
应用程序如何访问
Web service
。
WSDL
(
Web service
描述语言)
通过担当底层应用程序和其他启用
Web
的应用程序之间的接口,
WSDL
把现有应用程序转为
Web service
。
SOAP
(简单对象访问协议)
SOAP
是
Web service
通过因特网和供应商通信的协议。
Web service
方案:对供应商的动态查询
此文档描述在线园艺供应零售商使用
Web service
对几个批发供应商的存货执行搜索的方案。
在
“
对供应商的静态查询
”
方案中,
Plants by WebSphere IT
人员分别与每个供应商建立连接,并在供应商来去时进行更改。同时查询多个供应商会是很方便的,甚至不必提供特定供应商的列表来查询。而且,
Plants by WebSphere
管理器将希望能根据最低批发价格或最快可用性等标准快速销售。
在
“
对供应商的动态查询
”
方案中,有几个植物和园艺供应商已把
Web service
发布到
Universal Description, Discovery, and Integration
(
UDDI
)注册表。供应商创建使用标准接口的存货
Web service
。他们把他们的
Web service
发布到集中式注册表。
Plant Wholesalers Association
可能已经建立了注册表。或者一家小因特网公司在发现供应商和零售商都愿意为方便服务而每月支付一笔小费用后,可能已经建立了买方
-
卖方站点。
如何处理已脱销的商品
当客户在
Plants by WebSphere
站点上根据
Plants by WebSphere
存货订购不可用的商品时,发生以下事件。
1.
供应商就为了这种情况预先把他们的
Web service
发布到
UDDI Registry
。
他们用这种方法通知查询的零售商(如
Plants by WebSphere
)可以检查他们的存货。
2.
Plants by WebSphere
检查它自己的存货。
Web
站点使用的应用程序检查
Plants by WebSphere
存货数据库。它发现该商品不在库存中。
3.
Plants by WebSphere
使用
UDDI4J
客户机查询
UDDI Registry
以获取可检查其存货的供应商。
Plants by WebSphere
可调用
Web service
,该服务查询
UDDI Registry
以获取供应商。接着,调用每个供应商的站点上的
Web service
。管理员会得到可从其获取请求的商品的供应商列表,可能还包括价格和可用性数据。
4.
Plants by WebSphere
使用
Web service
检查供应商存货。
应用程序调用
J2EE
客户机或
JAX-RPC
客户机的
Web service
,后者与供应商站点上的
SOAP
服务器通信以确定供应商的库存中是否有该商品。供应商数据被发送到
Plants by WebSphere
。
5.
Plants by WebSphere
获取或未获取已脱销的商品。
如果供应商表明库存中有该商品,则
Plants by WebSphere
使用的应用程序确定是否代表客户订购该商品。数据的交换可能包括检查价格阈值,在此阈值以上
Plants by WebSphere
将不订购该批发商品。它可能还包括决策信息,如供应商将需要多长时间来传递该商品,或制造商计划停止生产该商品的日期。
6.
Plants by WebSphere
尽可能快地把结果通知其客户。
如果能足够快地联系到供应商,
Plants by WebSphere
就不需要通知其客户有关可用性问题。它只要确认该商品可用即可,就好像该商品在
Plants by WebSphere
的库存中一样。如果供应商存货暂时缺少该商品,或
Plants by WebSphere
决定不从供应商哪里订购该商品,
Plants by WebSphere
将向客户发出相应的响应。
在此方案中使用的
Web service
技术
此方案使用以下
Web service
技术。
XML
(可扩展标记语言)
XML
用于标准化
Plants by WebSphere
与其供应商之间的数据交换。
Web service for J2EE
Web service for J2EE
也称为
JSR-109
,它定义
J2EE
应用程序如何创建和访问
Web service
。
远程过程调用的
Java API
JAX-RPC
也称为
JSR-101
,它定义
Java
应用程序如何访问
Web service
。
WSDL
(
Web service
描述语言)
通过担当底层应用程序和其他启用
Web
的应用程序之间的接口,
WSDL
把现有应用程序转为
Web service
。
SOAP
(简单对象访问协议)
SOAP
是
Web service
通过因特网和供应商通信的协议。
Universal Description, Discovery and Integration
(
UDDI
)注册表
通过把其
Web service
发布到
UDDI
,供应商使它们可供
Plants by WebSphere
和其他零售商发现和重用。这节约了开发时间、精力和成本,并帮助最小化在
Plants by WebSphere
和需要联系供应商以获取存货数据的其他各种零售商处维护同一应用程序的几个不同实施的需求。
WebSphere Application Server
的特殊版本提供可在内部网环境中使用的专用
UDDI Registry
。
Web service
方案:交叉供应商查询
此文档描述在线园艺供应零售商使用
Web service
将其存货系统与其他零售商的存货系统集成的方案。主因特网店面还可使用
Web service
代表它自身或其他零售商来检查供应商存货。
Plants by WebSphere
的市场营销人员凭借市场数据确认人们喜欢在购买植物和园艺用品时再购买其他货物,如园艺书刊。为了增加
Plants by WebSphere
的可视性,该公司对各种其他商家站点做了安排,以包括
Plants by WebSphere
存货作为那些站点自己存货的一部分。
在一个站点上,使用了
Web service
和其他技术把关于
Plants by WebSphere
商品的数据插入与其余站点的外观匹配的
Web
页面。当客户在非
Plants by WebSphere
的站点上订购
Plants by WebSphere
商品时,第二个站点依靠
Plants by WebSphere
存货
Web service
来确定该商品是在库存中,并按需要查询供应商。
第二个站点不必实施它自己的
Web service
来执行与
Plants by WebSphere
所开发的服务相同的功能。第二个站点可能要通过创建自己的
Web service
来实施复杂的功能。
如何处理已脱销的商品
当客户从转售
Plants by WebSphere
的商品的某个站点上订购商品时,发生以下事件。
1.
Plants by WebSphere
预先将其
Web service
发布到公用
UDDI Registry
。
其他零售商通过此方式了解从
Plants by WebSphere
可用的存货
Web service
。在此方案中,
Plants by WebSphere
将使
Web service
能检查它自己的存货以及供应商的存货。
2.
经销商检查
Plants by WebSphere
存货。
Web
站点使用的应用程序检查
Plants by WebSphere
存货数据库。它发现该商品不在库存中。
3.
经销商查询它可检查其存货的供应商的
UDDI Registry
。
4.
经销商使用
Web service
检查供应商存货。
应用程序调用
J2EE
或
JAX-RPC SOAP
客户机的
Web service
,后者与供应商站点上的
SOAP
服务器通信以确定供应商的库存中是否有该商品。供应商数据被发送到经销商。
5.
经销商获取或未获取已脱销的商品。
6.
经销商尽可能快地把结果通知其客户。
在此方案中使用的
Web service
技术
此方案使用以下
Web service
技术。
XML
(可扩展标记语言)
XML
用于标准化
Plants by WebSphere
与其供应商之间的数据交换。
WSDL
(
Web service
描述语言)
通过担当底层应用程序和其他启用
Web
的应用程序之间的接口,
WSDL
把现有应用程序转为
Web service
。
SOAP
(简单对象访问协议)
SOAP
是
Web service
通过因特网和供应商通信的协议。