3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援→開発戻り浦島太郎状態の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。

SOAP利用できるようにCentOS上に Apache Axis2 環境を構築してみた

今までなかなか手出ししたことなかったWebサービス(最近はWebAPIの一般的?)にちょっと足を踏み込むことに。。

SOAPが使える環境を作れということでちょっとやってみました。

(クライアント、サーバ側共にJava)

まず SOAP についてはDCOMやCORBAのような分散オブジェクト技術の一種で、WEBの世界では複雑高機能がSOAP、軽量簡単が REST くらいしか知らなかったので、そこら辺を調査してみました。

(SOAP,RESTの比較については、REST 入門(その9) REST と SOAPWeb 2.0時代のWebServices ~SOAP/REST使い分けの指針【IT用語】マッシュアップとWebサービスAPIあたりを参考。)

SOAPの概要は@IT:連載 WebサービスのキホンITPro:SOAP,WSDL,REST――Web APIの基礎技術を学ぶがわかりやすかったです。要は異種アーキテクチャ間の相互接続問題やFWを通過が難しい CORBA や DCOM に代わってXMLベースでトランスポート層プロトコルに依存しないRPC,メッセージ交換用のプロトコルということみたいです。

また、WSDLってのがWebサービスインターフェイスに関する情報を定義しているXMLです。WSDLを開発ツールとかで取り込むと簡単にWEBサービスを利用できるクライアントが作れるようですね。

UDDIというものWEBサービスにはよく語られるものらしいですが、これはどんなWEBサービスがあるかを検索するものなので、今回のプロジェクトでは使う必要がなさそうなのでスルーです。

さて、調べてみると Apache Axis2 ってのが比較的よく使われているようなのでこれで環境を構築してみることにしました。

Axis2 は Apahce SOAPApache Axis という経緯を経てるようです。

Axis2Tomcat 上で動かすものらしいので、まず Tomcat6 を入れてみました。

OSはLinux(CentOS 5.3)です。

これが意外にてこずりました。

この件は詳しくはCentOS5.3 に Tomcat6 を入れてみたにまとめました。

Tomcatがインストールできたら、次にAxis2 を配備します。

Axix2はここから "WAR (Web Archive) Distribution" をダンロードして、WARファイルを Tomcat に配備します。

http://server:8080/axis2/ にアクセスすると、Services ってリンクがあるので、ここを押下するとAxis2の上で動いてるWebサービスの一覧が見えるようですね。デフォルトで Version というWebサービスが配備されており、WSDLも見れるようです。

また、AdiministrationのリンクからWebサービスの配備等の管理ができるようです。

この時のログインのアカウントは、/webapps/axis2/WEB-INF/conf/axis2.xml に定義されています。

name="userName">admin>

name="password">axis2>

デフォルトのアカウントはuser:admin,pass:axis2みたいですね。

SOAPを動かすサーバ環境としてはこれだけで構わないようです。

後は、実際のWebサービスの開発ですが、今回は担当しないんで環境構築だけで終わりそうです。。。

参考:

Apache Axis2 を インストール:[SE@HUMAN]$ reboot:So-netブログ:

Apache Axis2セットアップ : メモ貯蔵庫

イロイロな分散処理技術とイマドキのWebサービス (1/2) - @IT javaでの各種分散技術の概略がまとめられています。