Android から JAX-WS Web サービスにアクセスする

Android 機器用 Web サービス・クライアントの作成方法を学ぶ

Web サービスは、クライアントの機能に応じたサービスを提供することができるため、モバイル機器には特に適しています。KSoap2-android プロジェクトは Android プラットフォーム用の SOAP ライブラリーです。この記事では、Android クライアントから JAX-WS Web サービスにアクセスします。この Web サービスは WSDL を提供しており、名前を含むリクエストへのレスポンスとして、Hello メッセージを返します。ここでは Android 用の Web サービス・クライアントを Eclipse ADT プラグインと KSoap2-android ライブラリーを使用して作成します。そしてこのWeb サービス・クライアントを AVD (Android Virtual Device) でテストします。名前を引数として Hello Web サービスにリクエストを送信すると、そのレスポンスが Android 仮想デバイス・エミュレーター上に表示されます。

記事の構成

この記事は以下のセクションで構成されています。

  1. 前提条件
  2. JAX-WS Web サービスを作成する
  3. Eclipse ADT プラグインと SDK をインストールする
  4. Android プロジェクトを作成する
  5. KSoap2-android ライブラリーをインストールする
  6. レイアウトを作成する
  7. アクティビティー・クラスを作成する
  8. インターネットへのアクセス許可を構成する
  9. AVD (Android Virtual Device) を作成する
  10. Android クライアントを実行し、Web サービスにアクセスする

前提条件

この記事では、読者に Web サービスの知識があることを前提として、単純な JAX-WS Web サービスを作成します。この JAX-WS Web サービスでは、人の名前を引数に取って、その人へ Hello という挨拶を返すメソッドを用意します。Web サービスを作成するためには、以下のソフトウェア・フレームワークが必要です。

  1. Eclipse IDE
  2. JAX-WS Web サービスをサポートするアプリケーション・サーバー。WebSphere を使用して JAX-WS Web サービスを作成するための初心者用のチュートリアルについては、「参考文献」を参照してください。

Web サービス用の Android クライアントを作成するためには、以下のソフトウェア・コンポーネントが必要です。

  1. Eclipse IDE
  2. Android SDK
  3. Eclipse 用 ADT プラグイン
  4. KSoap2-android ライブラリー

JAX-WS Web サービスを作成する

JAX-WS Web サービスは基本的に、javax.jws.WebService というアノテーションが付けられた Java クラスで構成されています。この Java クラスは Web サービスを提供するエンドポイントです。また、Web サービスは、サービス・エンドポイント・インターフェースで構成される場合もあり、このインターフェースはサービス・エンドポイントを実装するクラスによって実装されます。Web サービスを実装するクラスは abstractfinal であってはなりません。この実装クラスのビジネス・メソッドで Web サービス・クライアントに対する操作として公開されるメソッドは、public でなければならず、staticfinal であってはなりません。ではここで、Web サービスを実装するクラスとして、HelloWSImpl を作成しましょう。このクラスは @WebService というアノテーションが付けられており、HelloWS インターフェースを実装しています。この実装クラスには hello メソッドが含まれており、hello メソッドは名前用の String パラメーターを引数にとり、その名前を含む Hello メッセージを返します。この実装クラスをリスト 1 に示します。

リスト 1. Web サービス実装クラス HelloWSImpl.java
package hello_webservice;
import javax.jws.*;
@WebService(portName = "HelloWSPort", serviceName = "HelloWSService", 
	targetNamespace = "http://hello_webservice/", 
	endpointInterface = "hello_webservice.HelloWS")
public class HelloWSImpl implements HelloWS {
	public String hello(String name) {
		// replace with your impl here
		 return "Hello "+name +" Welcome to Web Services!";

	}
}

サービス・エンドポイント・インターフェース HelloWS には、@WebMethod というアノテーションが付けられた hello メソッドが含まれています。このインターフェースをリスト 2 に示します。

リスト 2. サービス・エンドポイント・インターフェース HelloWS.java
package hello_webservice;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService(name = "HelloWS", targetNamespace = 
	"http://hello_webservice/")
public interface HelloWS {
	@WebMethod(operationName = "hello")
	public String hello(String name);
}

次に、この Web サービス用の WSDL を生成します。この Web サービスは Android クライアントから WSDL として利用できる必要があります。WSDL は、Web サービスをネットワーク・エンドポイントの集合として記述するための XML フォーマットの文書であり、ネットワーク・エンドポイントはポートとも呼ばれます。メッセージは交換されるデータを抽象的に定義したものであり、ポート・タイプは操作の抽象的な集合です。HelloWSService Web サービス用の WSDL の「Design (設計)」ビューを図 1 に示します。

図 1. WSDL の「Design (設計)」ビュー
WSDL の「Design (設計)」ビュー

この Web サービスの WSDL を図 2 に示します。

図 2. Web サービスの WSDL
Web サービスの WSDL

Eclipse ADT プラグインと Android SDK をインストールする

ADT (Android Development Tool) は Eclipse IDE 用のプラグインであり、Android アプリケーションを開発するための統合環境を提供します。また、Android SDK には Android アプリケーションを開発するためのツールやライブラリーが用意されています。ADT プラグインをインストールするためには、Eclipse で「Help (ヘルプ)」 > 「Install New Software (新規ソフトウェアのインストール)」の順にクリックし、表示されるダイアログ・ボックスで「Add (追加)」をクリックします。すると、「Add Repository (リポジトリーの追加)」ダイアログ・ボックスが表示されるので、「Name (名前)」には適当な名前を入力し、「Location (ロケーション)」には「https://dl-ssl.google.com/android/eclipse/」と入力して、「OK」をクリックします (図 3)。

図 3. ADT プラグイン用のリポジトリーを作成する
ADT プラグイン用のリポジトリーを作成する

図 4 に示すように、表示されている「Developer Tools (開発ツール)」を選択し、「Next (次へ)」をクリックします。

図 4. 「Developer Tools (開発ツール)」をインストールする
「Developer Tools (開発ツール)」をインストールする

「Install Details (インストール詳細)」ダイアログ・ボックスが表示されるので、「Next (次へ)」をクリックします。使用条件の条項に同意し、「Finish (完了)」をクリックします。これで ADT プラグインがインストールされました。次に、Android SDK をインストールします。それには、Android スターター・パッケージ (Windows 用は installer_r09-windows.exe) をダウンロードします。このダウンロードしたインストーラーをダブルクリックして、Android SDK Tools Setup ウィザードを起動し、案内に従って「Next (次へ)」をクリックします。Android SDK のインストールには JDK が必要なため、JDK 5.0/6.0 がインストールされていない場合には JDK 5.0/6.0 をインストールします。JDK 5.0/6.0 がインストールされている場合には、「Next (次へ)」をクリックして、インストール先 (デフォルトは C:\Program Files\Android\android-sdk-windows) を指定します。「Next (次へ)」をクリックします。ショートカットの作成先となるスタート・メニュー・フォルダーを指定し、「Install (インストール)」をクリックします。これにより、Android SDK Tools がインストールされるので、インストールが完了したら、「Next (次へ)」をクリックします (図 5)。

図 5. Android SDK Tools をインストールする
Android SDK Tools をインストールする

続いて「Finish (完了)」をクリックすると、Android SDK and AVD Manager が起動されるので、「Available packages (利用可能なパッケージ)」から、図 6 に示すパッケージを選択してインストールします。

図 6. Android SDK and AVD Manager
Android SDK and AVD Manager

次に、Eclipse で Android の設定を行います。Eclipse で「Window (ウィンドウ)」 > 「Preferences (設定)」の順に選択します。表示される「Preferences (設定)」ダイアログ・ボックスで「Android」ノードを選択します。「SDK Location (SDK ロケーション)」を図 7 のように指定します。

図 7. Android SDK の場所を設定する
Android SDK の場所を設定する

Android プロジェクトを作成する

次に、Android プロジェクトを作成し、このプロジェクトの中に Android 用の Web サービス・クライアントを作成します。Eclipse IDE で「File (ファイル)」 > 「New (新規)」 > 「Others (その他)」の順に選択し、表示されるウィザード画面で「Android」 > 「Android Project (Android プロジェクト)」の順に選択したら、「Next (次へ)」をクリックします (図 8)。

図 8. 新規 Android プロジェクト
新規 Android プロジェクト

「New Android Project (新規 Android プロジェクト)」ウィンドウで、「Project name (プロジェクト名)」に「AndroidWSClient」と入力します。「Build Target (ビルド・ターゲット)」として「Android 2.2」を選択します。「Properties (プロパティー)」では、「Application name (アプリケーション名)」と「Package name (パッケージ名)」を指定します。「Create Activity (アクティビティーを作成)」チェックボックスにチェックを入れ、アクティビティー・クラスとして「AndroidWSClient」と入力します。アクティビティーはユーザーとのやり取りを表し、Activity クラスを継承するクラスは UI 用のウィンドウを作成します。最低限必要な SDK のバージョンとして「8」を指定し、「Next (次へ)」をクリックします (図 9)。

図 9. 新規 Android プロジェクトを作成する
新規 Android プロジェクトを作成する

「New Android Test (新規 Android テスト)」プロジェクトから、テスト・プロジェクトを作成することもできますが、ここではテスト・プロジェクトは作成しません。「Finish (完了)」をクリックすると、Android プロジェクトが作成されます (図 10)。この Android プロジェクトは以下の必須コンポーネントで構成されています。

  1. Activity クラスを継承するアクティビティー・クラス (AndroidWSClient)
  2. Android アプリケーションのレイアウトを指定する res/layout/main.xml ファイル
  3. AndroidManifest.xml ファイル。このファイルにはアプリケーションに関する不可欠の情報が含まれています (パッケージ名、アプリケーションのコンポーネント、プロセス、アクセス権、Android システムに対する最低限の API レベルなど)。
図 10. Android プロジェクト
Android プロジェクト

Ksoap2-android ライブラリーをインストールする

Ksoap2-android ライブラリーは Android プラットフォームのための軽量で効率的な SOAP ライブラリーです。ksoap2-android プロジェクトから ksoap2-android-assembly-2.4-jar-with-dependencies.jar をダウンロードします。Ksoap2-android アセンブリーの JAR を追加します。この JAR には「Java Build Path (Java のビルド・パス)」に対する依存関係が含まれています (図 11)。

図 11. Ksoap2-android ライブラリー
Ksoap2-android ライブラリー

レイアウトを作成する

res/layout/main.xml で Android の UI コンポーネントのレイアウトを指定します。ここでは Web サービスからのレスポンスがテキスト・メッセージとして表示される UI を作成します。まず、LinearLayout を作成します。このレイアウトではサブ要素が縦方向にリニアに配置されます。次に TextView 要素を追加します。この TextView 要素は id の結果を使用して、hello メソッドへのメソッド呼び出しに対する Web サービスのレスポンスを表示します。hello メソッドを呼び出す場合には引数として名前を送信し、レスポンスとして Hello メッセージを取得します。あるいはタイトルに対する TextView 要素を作成することもできます。Android の Web サービス用クライアント・アプリケーションのグラフィカル・レイアウトを示したものが図 12 です。Android の画面は基本的に空白ですが、これは Web サービスのレスポンスをテキスト・メッセージとして表示するという前提のためです。

図 12. グラフィカル・レイアウト
グラフィカル・レイアウト

レイアウト・ファイル main.xml をリスト 3 に示します。

リスト 3. レイアウト・ファイル main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" android:layout_width="fill_parent"
	android:layout_height="fill_parent">
	<TextView android:layout_width="fill_parent"
		android:layout_height="wrap_content" android:text="" />
	<TextView android:id="@+id/result" android:layout_width="fill_parent"
		android:layout_height="wrap_content" />
</LinearLayout>

アクティビティー・クラスを作成する

AndroidWSClient クラスは Android アプリケーションのアクティビティー・クラスであり、Activity クラスを継承しています。このセクションでは AndroidWSClient というアクティビティー・クラスを作成します。必要な Ksoap2-android クラスを以下のようにインポートします。

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.ksoap2.serialization.PropertyInfo;

アクティビティー・クラスの定数を表 1 に定義します。

表 1. アクティビティー・クラスの定数
定数説明
NAMESPACE名前空間は WSDL の targetNamespace です。
URLWSDL のURL です。URL の値は、WSDL の port 要素用の soap:address 要素の location 属性です。Web サービスも Android 機器上でホストされている場合を除き、ホスト名として localhost を指定してはなりません。なぜなら、アプリケーションは Android 機器上で実行される一方、Web サービスは localhost サーバー上にホストされるからです。ホスト名には、Web サービスをホストするサーバーの IP アドレスを指定します。
METHOD_NAMEWeb サービスによる操作の名前であり、WSDL から取得することができます。
SOAP_ACTIONNAMESPACE+METHOD_NAME であり、String リテラルとして指定されます。

これらの定数の値は以下のとおりです。URL 定数の IP アドレスは以下の値とは異なる可能性があります。

private static final String NAMESPACE = "http://hello_webservice/";
private static String URL="http://192.168.1.68:7001/HelloWebService/HelloWSService?WSDL"; 
private static final String METHOD_NAME = "hello";
private static final String SOAP_ACTION =  "http://hello_webservice/hello";

すべてのアクティビティー・クラスはアクティビティーを初期化するための onCreate メソッドを実装する必要があります。setContentView メソッドとレイアウト・リソースを使って UI を定義します。

setContentView(R.layout.main);

main.xml に定義された TextView 要素の findViewById メソッドを使用し、Android ウィジェットである TextView オブジェクトを作成します。

TextView lblResult = (TextView) findViewById(R.id.result);

SOAP リクエストを作成するための org.ksoap2.serialization.SoapObject オブジェクトを作成します。SOAP オブジェクトの名前空間、そして呼び出し対象のメソッド名を SoapObject コンストラクターで指定します。

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

SOAP メソッドが呼び出されたときに送信されるプロパティー情報を含めるための、org.ksoap2.serialization.PropertyInfo オブジェクトを作成します。各プロパティーには新しい PropertyInfo オブジェクトが必要です。hello メソッドは名前用に 1 つだけ引数をとります。プロパティーの名前を「arg0」と設定し、そのプロパティーの型を STRING_CLASS と指定します。addProperty メソッドを使って PropertyInfo オブジェクトを SoapObject に追加します。

PropertyInfo propInfo=new PropertyInfo();
propInfo.name="arg0";
propInfo.type=PropertyInfo.STRING_CLASS;
request.addProperty(propInfo, "John Smith");

次に、SOAP エンベロープを作成します。そのために、SoapSerializationEnvelope クラスを使用します。このクラスは SoapEnvelop クラスを継承し、SOAP でシリアライズされたメッセージ構造を表現する SOAP シリアライズ・フォーマットをサポートしています。SOAP でシリアライズする主なメリットは移植しやすくなることです。

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

定数 SoapEnvelope.VER11 は SOAP バージョン 1.1 を意味します。SOAP メソッドの呼び出しに対して送信されるメッセージとして、リクエスト・オブジェクト SoapObject をエンベロープに割り当てます。

envelope.setOutputSoapObject(request);

J2SE ベースの HttpTransport レイヤーを表現する org.ksoap2.transport.HttpTransportSE オブジェクトを作成します。HttpTransportSE は SOAP メッセージのシリアライズとデシリアライズをカプセル化する org.ksoap2.transport.Transport クラスを継承しています。

HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);

SOAP_ACTION と SOAP エンベロープを使って SOAP 呼び出しを実行します。

androidHttpTransport.call(SOAP_ACTION, envelope);

SoapSerializationEnvelope オブジェクトの getResponse メソッドを使って Web サービスのレスポンスを取得し、そのレスポンス・オブジェクトをプリミティブ型のカプセル化に使われるクラスである SoapPrimitive にキャストします。

SoapPrimitive  resultsRequestSOAP = (SoapPrimitive) envelope.getResponse();

SOAP レスポンスの String メッセージを UI コンポーネント TextView に設定します。

lblResult.setText(resultsRequestSOAP.toString());

このアクティビティー・クラスを下記のリスト 4 に示します。

リスト 4. アクティビティー・クラス AndroidWSClient.java
package android.webservice.client;


import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.ksoap2.serialization.PropertyInfo;


import android.widget.TextView;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;


public class AndroidWSClient extends Activity {

 
 private static final String NAMESPACE = "http://hello_webservice/";
 private static String URL = "http://192.168.1.68:7001/HelloWebService/
	HelloWSService?WSDL"; 
 private static final String METHOD_NAME = "hello";
 private static final String SOAP_ACTION =  "http://hello_webservice/hello";
 
 private TextView lblResult;
 

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  lblResult = (TextView) findViewById(R.id.result);
 
  SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 

  
  PropertyInfo propInfo=new PropertyInfo();
  propInfo.name="arg0";
  propInfo.type=PropertyInfo.STRING_CLASS;
  
  request.addProperty(propInfo, "John Smith");  

  SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 

  envelope.setOutputSoapObject(request);
 HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);

  try {
   androidHttpTransport.call(SOAP_ACTION, envelope);
  
    SoapPrimitive  resultsRequestSOAP = (SoapPrimitive) envelope.getResponse();
  

   lblResult.setText(resultsRequestSOAP.toString());
   
 
  } catch (Exception e) {
	  
   
  }

 }
}

インターネットへのアクセス許可を構成する

Android 機器から Web サービスにアクセスするためには、アプリケーションがネットワーク・ソケットを開けるように、AndroidManifest.xml でアクセス許可を設定する必要があります。下記の uses-permission 要素を追加します。

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

アクセス許可が設定された AndroidManifest.xml を示したものが図 13 です。

図 13. インターネットへのアクセス許可を設定する
インターネットへのアクセス許可を設定する

AndroidManifest.xml をリスト 5 に示します。

リスト 5. AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="android.webservice.client"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".AndroidWSClient"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-sdk android:minSdkVersion="8" />

</manifest>
</uses-permission>

AVD を作成する

Android SDK には、Android アプリケーションを開発、テストするための仮想モバイル・デバイスとして、モバイル・デバイス・エミュレーターが用意されています。このエミュレーターは AVD (Android Virtual Device) を構成することができ、この構成を使用して他の仮想モバイル・デバイス・オプション (Android プラットフォームなど) を指定することができます。AVD を作成するためには、「Window (ウィンドウ)」 > 「Android SDK and AVD Manager (Android SDK および AVD マネージャー)」の順にクリックします。表示されたウィンドウで、「Virtual devices (仮想デバイス)」をクリックし、ウィンドウの右端にある「New (新規)」をクリックします (図 14)。

図 14. AVD を作成する
AVD を作成する

これにより、「Create new Android Virtual Device (新規 Android 仮想デバイスを作成)」ダイアログ・ボックスが表示されるので、「Name (名前)」を指定し、「Target (ターゲット)」として「Android 2.2-API Level 8」を選択します。「SD Card (SD カード)」のサイズを 100 MiB に設定します。これだけの容量があれば Web クライアント・アプリケーションのインストールには十分です。もっと小さな値 (10 など) を設定すると、「No space left on device (デバイス上に残りスペースがありません)」というエラーが発生する可能性があります。「Create AVD (AVD を作成)」をクリックし、AVD を作成します (図 15)。

図 15. AVD を構成する
AVD を構成する

新規の AVD が図 16 のように作成されます。

図 16. 新規の AVD
新規の AVD

Android クライアントを実行し、Web サービスにアクセスする

Android エミュレーターには、エミュレーターをカスタマイズするためのさまざまなオプションがあります。例えば、エミュレーターの大きさを設定するには、下記のオプションを使って scale の値を指定します。

-scale <value>

エミュレーター・オプションを指定するためには、AndroidWSClient アプリケーションを右クリックし、「Run As.. (実行)」 > 「Run Configurations (実効の構成)」の順に選択します。AndroidWSClient アプリケーションを選択し、「Target (ターゲット)」タブの「Additional Emulator Command Line Options (エミュレーター・コマンド行の追加オプション)」フィールドで -scale オプションを指定して「Apply (適用)」をクリックします (図 17)。

図 17. エミュレーターの scale オプションを設定する
エミュレーターの scale オプションを設定する

エミュレーター上に AndroidWSClient アプリケーションをインストールして実行するためには、AndroidWSClient を右クリックし、「Run As.. (実行)」 > 「Android Application (Android アプリケーション)」の順に選択します (図 18)。

図 18. Android アプリケーションを実行する
Android アプリケーションを実行する

これにより、AndroidWSClient アプリケーションが AVD にインストールされます (図 19)。このアプリケーションをクリックし、AVD で Web サービス・クライアントを実行します。

図 19. Android Web サービス・クライアントがインストールされた様子
Android Web サービス・クライアントがインストールされた様子

Web サービスが呼び出され、Web サービスからのレスポンスが Android エミュレーターに表示されます (図 20)。

図 20. Web サービスにアクセスする
Web サービスにアクセスする

この Android アプリケーションを実行した結果の出力をリスト 6 に示します。

リスト 6. Android アプリケーションからの出力
 AndroidWSClient] Android Launch!
 AndroidWSClient] adb is running normally.
 AndroidWSClient] Performing android.webservice.client.AndroidWSClient activity launch
 AndroidWSClient] Automatic Target Mode: launching new emulator with compatible AVD 
	'AndroidAVD'
 AndroidWSClient] Launching a new emulator with Virtual Device 'AndroidAVD'
 AndroidWSClient] New emulator found: emulator-5554
 AndroidWSClient] Waiting for HOME ('android.process.acore') to be launched...
 AndroidWSClient] HOME is up on device 'emulator-5554'
 AndroidWSClient] Uploading AndroidWSClient.apk onto device 'emulator-5554'
 AndroidWSClient] Installing AndroidWSClient.apk...
 AndroidWSClient] Success!
 AndroidWSClient] Starting activity android.webservice.client.AndroidWSClient on device 
	emulator-5554
 AndroidWSClient] ActivityManager: Starting: Intent { act=android.intent.action.MAIN
 cat=[android.intent.category.LAUNCHER] 
 cmp=android.webservice.client/.AndroidWSClient }

この Android アプリケーションを実行した場合、以下のタスクが実行されます。

  1. 新しいエミュレーターが起動されます。
  2. AndroidWSClient.apk がエミュレーターにアップロードされます。
  3. AndroidWSClient.apk がインストールされます。
  4. android.webservice.client.AndroidWSClient アクティビティーが起動されます。

参考文献

学ぶために

製品や技術を入手するために

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=SOA and web services
ArticleID=632134
ArticleTitle=Android から JAX-WS Web サービスにアクセスする
publish-date=02152011