Web 服务应用程序(C# 与 Java)
更新:2007 年 11 月
.NET Framework 为通过 Web 服务进行互操作提供了广泛的支持。在 C# 中使用 .NET Framework、Visual Studio 和 ASP.NET 创建一个 Web 服务就像创建一个 Web 服务项目并将属性 WebMethod 添加到您要公开的任何公用方法一样简单。
Java
在 Java 中您可以使用 Web 服务包来实现应用程序,如 Java Web Services Developer Pack 或 Apache SOAP。例如,在 Java 中可以使用下面的步骤创建一个 Web 服务和 Apache SOAP。
在 Java 中使用 Apache SOAP 创建 Web 服务
如下所示编写一个 Web 服务方法:
public class HelloWorld { public String sayHelloWorld() { return "HelloWorld "; } }
创建 Apache SOAP 部署说明符。该说明符可能如下所示:
<dd:service xmlns:dd="http://xml.apache.org/xml-soap/deployment" id="urn:HelloWorld"> <dd:provider type="java" scope="Application" methods="sayHelloWorld"> <dd:java class="HelloWorld" static="false" /> </dd:provider> <dd:faultListener>org.apache.soap.server.DOMFaultListener</dd:faultListener> <dd:mappings /> </dd:service>
编译 HelloWorld 类并将它移到 Web 服务器的类路径。
使用命令行工具部署 Web 服务。
C#
在 C# 中使用 .NET Framework 类和 Visual Studio IDE 创建 Web 服务更为简单。
在 C# 中使用 .NET Framework 和 Visual Studio 创建 Web 服务
在 Visual Studio 中创建 Web 服务应用程序。有关更多信息,请参见 C# 应用程序类型(针对 Java 开发人员)。下面是生成的代码。
using System; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Service : System.Web.Services.WebService { public Service () { } [WebMethod] public string HelloWorld() { return "Hello World"; } }
查找 [WebService(Namespace = "http://tempuri.org/")] 行,将 "http://tempuri.org/" 更改为 "http://tempuri.org/"。
运行 C# Web 服务
编译和运行服务。在 Web 浏览器中键入“https://localhost/WebSite1/Service.asmx”,其中 localhost 是 IIS Web 服务器的名称,而 Service 是服务的名称(在本例中为 Service)。
输出为:
The following operations are supported. For a formal definition, please review the Service Description. HelloWorld
单击 HelloWorld 链接以调用 Service1 的 HelloWorld 方法。输出为:
Click here for a complete list of operations. HelloWorld Test To test the operation using the HTTP POST protocol, click the 'Invoke' button. SOAP 1.1 ... SOAP 1.2 ... HTTP POST ...
单击“调用”按钮以调用 Service1 的 HelloWorld 方法。输出为:
<?xml version="1.0" encoding="utf-8" ?> <string xmlns="http://HowToDevelopWebServicesTest/">Hello World</string>
有关 Web 服务的更多信息,请参见: