今回はinvoiceAgent Connect for Java APIを使った実装の第一歩としてログイン、セッション管理、ログアウトについてご説明します。
ログイン
初めに覚えていただきたいのは以下の2つのクラスです。
- com.wingarc.svf.pdfarchiver.client.api.SpaClient
- com.wingarc.svf.pdfarchiver.client.api.resource.AuthenticationResource
SpaClientはinvoiceAgent 文書管理の接続先とログイン認証後のセッション情報を保持するクラスです。
AuthenticationResourceは認証を行うためのリソースクラスです。
コンストラクタでSpaClientを引数にインスタンス化しloginメソッドでログイン処理を行います。
認証エラーが発生した場合は、SpaClientExceptionがスローされます。
ログインの処理は以下のように実装します。
// アカウント情報
String userName = "admin";
String pass = "admin";
//ベースとなるURLを設定します。通常は http://<hostname>:44230/spa/service/ になります。
URL url = new URL("http://localhost:44230/spa/service");
SpaClientConfiguration config = new SpaClientConfiguration();
//SpaClientのインスタンスを生成
SpaClient client = new SpaClient(url, config);
//認証処理
AuthenticationResource auth;
auth = new AuthenticationResource(client);
auth.login(userName, pass, "local");
SpaClientはこの後の処理でも必要となります。
他のメソッドへは引数で渡すか、クラスフィールドとして保持する等して利用することになります。
AuthenticationResourceはその後の処理ではログアウトするまで利用されることはありません。
セッション管理
ログイン後のセッション管理はSpaClientの中で行うため、ユーザーアプリケーション側では特に意識することはありません。
ログアウト
ログイン処理でインスタンス化したAuthenticationResourceに対して以下の通りlogoutメソッドを呼び出します。
この1行のみです。
ログイン/セッション管理/ログアウト まとめ
いかがだったでしょう。
Web APIの記事を読んだ方にとっては、とても簡単に感じられたのではないでしょうか。
実際にinvoiceAgent Connect for Java APIのJavaライブラリを使うことでコーディング量が大幅に削減されていることもおわかりいただけると思います。
今回記述したソースは、invoiceAgent Connect Packに内包されたサンプルから抜粋しました。
ぜひ確認してみてください。
${invoiceAgent Connect Packメディア}:\JavaAPI\Sample\sample.zip
解凍して展開された「Sample.java」が該当のファイルになります。
※実行の際は必ず「Connect for Java APIを使ってみる1 invoiceAgent Connect for Java APIとは」でご説明したライブラリへクラスパスを通してください。
※本記事の情報は、2023年04月13日現在のものです。(invoiceAgent V10.8.1 / invoiceAgent Cloud Ver.Ver.10.8.1.1302)