更新 : 2007 年 11 月
.NET Framework では、Web サービス間での相互運用性が幅広くサポートされています。C# では、.NET Framework、Visual Studio、および ASP.NET を使用することで、Web サービス プロジェクトを作成し、公開するパブリック メソッドに WebMethod 属性を追加するだけで簡単に Web サービスを作成できます。
Java
Java では、Web サービス パッケージを使用して、Java Web Services Developer Pack や Apache SOAP などのアプリケーションを実装できます。たとえば、Java では、次の手順に従って Web サービスと Apache SOAP を作成できます。
Apache SOAP を使用して、Java で 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 サービスをより簡単に作成できます。
.NET Framework と Visual Studio を使用して、C# で Web サービスを作成するには
Visual Studio で Web サービス アプリケーションを作成します。詳細については、「Java 開発者のための C# アプリケーションの種類の説明」を参照してください。生成されるコードは次のとおりです。
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 ...
[Invoke] をクリックして、Service1 の HelloWorld メソッドを呼び出します。出力は次のとおりです。
<?xml version="1.0" encoding="utf-8" ?> <string xmlns="http://HowToDevelopWebServicesTest/">Hello World</string>
Web サービスの詳細については、次のトピックを参照してください。