使用PowerDesigner9.5创建Web服务

来源:互联网 发布:在线教育培训系统源码 编辑:程序博客网 时间:2024/09/21 06:17
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

使用PowerDesigner9.5创建Web服务

 

公司PowerDesigner总师XiaoWang撰稿

 

Web服务允许您以标准格式提供现有的或新增的功能,并且允许用户和应用程序从任何位置访问它们。

PowerDesigner9.5同时针对Microsoft和引入了完善的Web服务设计和生成机制。使用PowerDesigner9.5,您可以专注于Web服务的设计,而将所有必需的生成、实现构造的任务交给PowerDesigner完成。

 
Web服务概述
Web服务是一种接口,它描述了在网络上可通过消息进行访问的操作集合。

 

Web服务的接口和部署位置(可选)由WSDL说明。WSDL是一种声明数据类型、消息、端口类型和端口(可选)的文档。通过WSDL,用户可以知道应该发送哪种格式的SOAP消息来调用Web服务以及返回消息的格式为何。

 

为了能使用户查找到所需的Web服务服务提供者可能会在UDDI注册服务中发布WSDL文档。这样,用户就可以使用UDDI注册服务来搜索Web服务

 

若要调用Web服务,用户可以向部署Web服务时所在的访问点URL发送SOAP消息,或者使用可简化此调用过程的代理类。SOAP消息也是XML文档。

 
PowerDesigner的Web服务功能
PowerDesigner9.5允许您新建Web服务组件、通过对WSDL进行反向工程来创建Web服务组件、浏览UDDI、搜索WSDL、从Web服务组件的定义生成WSDL、生成.NET(和VB.NET)的服务器端代码、生成.NET的客户端代理、生成Java(JAX-RPC和JAXM)的服务器端代码以及生成Java的客户端代理。

 

为了设计Web服务组件,PowerDesigner使用了类图、组件图和部署图。Web服务由组件图的组件表示,而已部署的Web服务则由部署图的组件实例来表示。

 
创建Web服务组件
创建Web服务组件有五个步骤。首先是要创建面向对象模型(OOM)。您可以选用以下语言中的任一种:C#、.NET或Java。在此模型上会自动附加用于WSDL的扩展模型定义(XEM)。XEM定义了WSDL的生成模板和扩展属性。

 

第二步是创建类。最好是先创建一个程序组(Package),然后再在此程序组下创建类。

 

第三步是使用Web服务向导将创建的类转换成Web服务组件。为此您可以右键单击该类,然后选择“创建Web服务组件”命令,或在选中该类后选择“工具>创建Web服务组件”命令。图1显示了一个Web服务向导的示例。Web服务类型可以是接口或实现。如果选择“接口”,则表明您只希望定义此Web组件并生成相应的WSDL。对于.NET,此组件类型为“标准”,其Web服务将通过.asmx文件来实现。对于Java,此组件类型可能是“标准”、“服务程序”或“无状态会话Bean”。这几种Java组件类型的实现方法分别是:“标准”类型使用JAX-RPC、“服务程序”类型使用JAXM,而“无状态会话Bean”类型将使用(JSR109)Web服务规范。当向导结束时会创建一个组件和类。图2显示了组件图中的组件符号示例。

 



图1Web服务向导

 



图2组件符号

 

第四步是添加Web方法。您需要新建一个操作(Operation)、打开该操作的属性页、单击“Web方法”复选框、定义参数和返回类型以及编写该操作的实现代码。图3显示了Web方法GetStockQuote的实现示例。

 



图3Web方法GetStockQuote的实现示例

 

最后一步是对WSDL生成进行自定义。可以自定义参数和返回值的WSDL数据类型、操作的扩展属性以及组件的属性和扩展属性。若要检验生成的WSDL,您可以打开组件属性页的WSDL选项卡。生成WSDL的任务可以交给PowerDesigner完成,也可以由您自行定义(用户定义)。如果Web服务组件来源于对WSDL的反向工程,原始的WSDL将得到保留。图4显示了一个生成的WSDL的示例。1<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>