Blue Prism で公開したWebサービスをJavaプログラムから呼び出す
- この記事は、コーディング(プログラミング)の話題を含みます。
- 苦手な方はブラウザバックをお薦めします。
- 言語はJavaです。内容は・・・あんまりBlue Prism、関係なくね?
Blue Prism でプロセスをWeb API公開するやり方は以下の通り。
この記事は、上記で公開したWeb APIを、Javaプログラムから呼ぶ方法について記述しています。
あ、あと、いま、詳細で丁寧な記事を書いている余裕が本当にない。
・・・シンプルがいい!
オレはオレのやりたい方法で・・・
手順を書かせてもらうぜッ!
Eclipseのインストール
まずはEclipseをインストール。
https://www.eclipse.org/downloads/
Javaで旧石器時代の技術SOAP Webサービスのクライアントを記述する方法が複数ある・・・
・・・複数あるが、
- テキスト・エディタでガチる ⇒ 比較的若い方向け。ロートルは黙って右クリックからの自動生成
- IntelliJ ⇒ コミュニティ・エディションはSOAP Clientに未対応
- NetBeans ⇒ あれ、NetBeansって、こんな・・・あれ・・・?
というわけで、Eclipseを使おう!
EclipseでのClient作成手順
Eclipseで動的Webプロジェクト(Dynamic Web Project)を作って、
プロジェクトを右クリック ⇒ New ⇒ Other ⇒ Web Service Client で、Service Definition に Blue Prism で公開した WSDL を設定し、よろしくJavaのソースを自動生成します。
以下のJavaクラスができると思います。
- 【Webサービス名】PortType.java
- 【Webサービス名】PortTypeProxy.java
- 【Webサービス名】Service.java
- 【Webサービス名】ServiceLocator.java
- 【Webサービス名】SoapBindingStub.java
実際にWebサービスを呼び出すコードに関しては、以下のように記載していきます。新しいJavaクラスを作成して、
public static void main(String[] args) {
【Webサービス名】ServiceLocator locator = new 【Webサービス名】ServiceLocator();
【Webサービス名】SoapBindingStub sample = null;
try {
sample = (【Webサービス名】SoapBindingStub) locator.get【Webサービス名】Soap();
} catch (ServiceException e3) {
e3.printStackTrace();
}
【Webサービス名】ServiceLocatorで、クライアントの基本情報を設定し、
クライアント本体を【Webサービス名】SoapBindingStub として作成します。
次に
sample.setUsername("【ユーザー名】");
sample.setPassword("【パスワード】");
と設定します。
Blue Prism で公開したWebサービスにはBasic認証が必要なので、
このようにユーザー名とパスワードを設定します。
最後に
String output = null;
try {
output = sample.sample("test");
System.out.println(output);
} catch (RemoteException e) {
e.printStackTrace();
}
と入力すれば、引数に "test" と入力してWebサービスにリクエストを投げ、結果をテキストで取得できます。
まとめ
- Javaプログラムで Blue Prism で公開したWebサービスを利用する
- わかりにくい?・・・俺もそう思う!コメントいただければ書き直す・・・かも!
とにかく余裕がない!
抜き差しならぬ状況とは、まさにこのことだッ!
眠い・・・