@ITが提供している「ITプロフェッショナルのためのコンピュータ用語事典(Insider’s Computer Dictionary)」のWebサービスを利用してみました。
このサービスでは、googleのようにAPIは公開されていない。
よって、インターフェース定義(WSDL)を使うことになる。
今回も、Apache axisを利用して作成する。
開発環境は、もちろんEclipseを使用する。
APIの作成
axisの最新版と、WSDLをダウンロードする。
axisは解凍しておく。
- Eclipseにて新規にプロジェクトを作成する。
- ビルドパスのライブラリに、axisのLibフォルダ配下にあるJarファイル全てを追加する。
- プロジェクトのカレントフォルダへダウンロードしたWSDLファイルをコピーする。
-
Javaアプリケーションの実行で下記の内容を新規追加する。
Nama : 任意
Project : 新規に作成したプロジェクト
Include external jars when searching for a main class : チェックする
Main class : org.apache.axis.wsdl.WSDL2Java
Program arguments : -v -W -p net.iwebmethod.icd.soap.netdic WSDLファイル名
以上で、net.iwebmethod.icd.soap.netdic というパッケージ配下にAPIが作成された。
通常の開発では、ソース用のフォルダを作成しているだろうから、そちらへ移動してコンパイルする。
APIを利用して辞書データへアクセス
ここでは、簡単に説明します。
細かく説明するよりソースを見た方が早いだろうからプロジェクトごとアップするのでダウンロードしてみて下さい。
各種のJarファイルは入ってないので各自で取得してlibフォルダへ放り込んでください。
Download IDCDemo
使用するインタフェースは、下記の通りです。
詳細は、メソッドの詳細を参照してください。
見出し語の検索 : ICDSoap.searchWord(SearchWord)
本文の取得 : ICDSoap.getItemById(GetItemById)
見出し語全ての一覧取得 : ICDSoap.enumWords(EnumWords)
本文の検索 : ICDSoap.fullTextSearch(FullTextSearch)
利用方法は下記のような感じになるだろう。
- enumWords()又は、searchWord()又は、fullTextSearch()を使って見出し語の一覧を取得する。
- 取得した見出し語に対応するIDを元に、getItemById()を使って意味、関連用語等を取得する。