WebSphere Service Registry and Repository V6.2 中提供的增强服务发现功能i3

10. 保存配置

5.    选择
Applications => Enterprise Applications
,以返回应用程序列表,并启动此应用程序。图 11 显示了所安装的示例 SCA 应用程序。

11. 安装在 WebSphere Process Server 中的示例应用程序

 


 

 

设置计算机 3Microsoft IIS 服务器

Microsoft .NET 的设置与其他环境的设置略微不同。要发现来自 Microsoft .NET 的服务,必须在 Microsoft .NET 环境中启用动态服务发现(Dynamic Service DiscoveryDISCO)。首先,安装 Microsoft IIS,然后完成以下所述操作,以配置计算机 3

配置 Microsoft IIS 服务器

1.    打开命令窗口,并将目录更改为 <installation_drive >\WINDOWS\Microsoft.NET\Framework\<version >

2.    键入
aspnet_regiis.exe -i。控制台将显示消息
Start installing ASP.NET

3.    过程完成后,控制台将显示消息
Finished installing ASP.NET

4.    如果使用的是 Microsoft Windows Server 2003,请将 ASP.NET 状态设置为
allowed。为此,请打开 IIS Manager,选择 Web Service Extension 文件夹并将 ASP.NET 的状态设置为
allowed

动态发现如何在 .NET 中工作

.vsdisco 就是启用 Web 服务动态发现的 DISCO 文件。如果客户端计算机请求 XML Web 服务动态发现文件 (.vsdisco)Microsoft .NET Framework 将分析包含文件的文件夹,然后生成作为响应的 XML 文件。响应文件包含对该文件夹及其子文件夹中的所有 Web 服务的引用。

关于安全性的说明:启用动态发现时,Web 服务器上所请求 URL 下的所有 Web 服务和发现文档都可以被发现。因此,在启用动态发现时,必须非常谨慎,因为如果 Web 服务所在的网络不是具有防火墙的安全网络,则可能会意外地公开敏感数据。有关使用 .vsdisco 文件时的安全注意事项,请参见参考资料

要配置动态发现,需要两个步骤:

1.    向网站的根目录添加 web.config 文件。清单 1 显示了此文件内容的一个示例。

清单 1. web.config 文件

                        

<!– web.config –>

<configuration>

<system.web>

     <httpHandlers>

<add verb=”*” path=”*.vsdisco”

type=”System.Web.Services.Discovery.DiscoveryRequestHandler,

System.Web.Services, Version=1.0.3300.0, Culture=neutral,

PublicKeyToken=b03f5f7f11d50a3a” validate=”false”/>

</httpHandlers>

</system.web>

</configuration>

      

2.    

3.    在包含 Web 服务的任意目录中添加一个动态发现文件。清单 2 显示了此文件内容的一个示例。


清单 2. 动态发现文件

                

<?xml version=”1.0″ encoding=”utf-8″ ?>

<dynamicDiscovery>

<add xmlns=”urn:schemas-dynamicdiscovery:disco.2000-03-7″/>

</dynamicDiscovery>

      

 

2 中给出了一个示例目录结构。左侧红色的矩形突出显示了包含 Web 服务的虚拟目录。右侧红色的矩形突出显示了添加到目录中的 web.config webservice.vsdisco 文件。


12. IIS 服务的目录结构

虚拟目录 webserviceroot 的物理结构如图 13 中所示。此结构中有两个动态发现文件:其中一个是位于根目录的 webservice.vsdisco 文件,另一个是位于 innerinner 子目录中的 innerservice.vsdisco 文件。


13. 虚拟目录 webserviceroot 的结构

客户端请求 webservice.vsdisco 文件时,将生成 XML 响应。清单 3 显示了其结果。请注意,结果中包含三个对 XML Web 服务的引用和一个对动态发现文件的引用。

Web 服务 helloservice helloworld 都位于根目录 (webserviceroot) 中。Web 服务 innerservice 位于第一级子目录中。这些 Web 服务都将被发现。

不过,Web 服务 SecondInnerService(位于第二级子目录 innerinner 中)和 ThirdInnerService(位于第三级子目录 thirdinner 中)将不会直接被发现。取而代之,将返回对动态发现文件 innerservice.vsdisco 引用。动态发现在根目录及其子目录中工作。即,其工作子目录深度为一。对于更大的深度,需要更多的 .vsdisco 文件。

发现这两个 web 服务的工作交由 innerservice.vsdisco 文件负责,如清单 3 中所示。


清单 3. innerservice.vsdisco 文件

                

<?xml version=”1.0″ encoding=”utf-8″ ?>

<discovery>

<add xmlns:xsd=”http://www.w3.org/2001/XMLSchema”

xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”

xmlns=”http://schemas.xmlsoap.org/disco/”>

<contractRef>


<add ref=”http://127.0.0.1/webservice/helloservice.asmx?wsdl”

docRef=”http://127.0.0.1/webservice/helloservice.asmx”

xmlns=”http://schemas.xmlsoap.org/disco/scl/”/>

<contractRef>


<add ref=”http://127.0.0.1/webservice/helloworld.asmx?wsdl”

docRef=”http://127.0.0.1/webservice/helloworld.asmx”

xmlns=”http://schemas.xmlsoap.org/disco/scl/”/>

<contractRef>


<add ref=”http://127.0.0.1/webservice/innerservice/innerservice.asmx?wsdl”

docRef=”http://127.0.0.1/webservice/innerservice/innerservice.asmx”

xmlns=”http://schemas.xmlsoap.org/disco/scl/”/>

<discoveryRef>


<add ref=”http://127.0.0.1/webservice/innerservice/innerinner/

innerservice.vsdisco”/>

</discovery>

      

 

设置服务器身份验证

对于 SSL 安全配置,我们将使用服务器身份验证和客户端身份验证。完成以下步骤,以配置 IIS 和启用 SSL 安全性。

1.    右键单击
Default Web Site => Properties
。在
Directory Security
选项卡的 Secure Communications 部分中,单击
Server Certificate
。创建新证书,填写相关材料,然后将证书保存到本地磁盘上。服务器将证书请求提交到证书颁发机构(Certificate AuthorityCA)。CA 处理请求后,将会向您颁发证书。

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注