JP1サポート技術者ブログ

ジョブ管理

【JP1/AJS3】JP1/AJS3 × HULFT Square 連携ソリューションを試してみた

公開日:
更新日:
ジョブ管理
#AJS3
#HSQ
#開発
#Tips
#クラウド

2026年3月6日、JP1×HULFT Squareのジョブ管理連携ソリューションが提供されました。

ソリューションでは、JP1とHULFT Square連携で課題となる「認証」や「タイムアウト」をクリアするテンプレートやスクリプトが用意されています。本記事では、実際にこれらを使用して動作確認を行った内容をご紹介します。

◎関連サイト

<株式会社セゾンテクノロジー>

<株式会社日立製作所>

HULFT Squareとの連携に使用するJP1製品

今回の連携では、JP1/AJS3 for Cloud Service Applications(以下、JP1/AJS3 for CSA)、またはJP1 CS ジョブ管理のクラウドサービス連携を使用します。 JP1/AJS3 for CSAは、JP1/AJS3やジョブ管理からクラウドに対して処理を実行するための連携製品です。

JP1/AJS3 for CSAを利用することで、クラウドサービスとの連携に必要な認証・実行・監視・結果確認の一連の流れをGUI上で定義することができ、ローコードで連携用ジョブの作成が可能です。そのため、業務内容やサービス側の仕様変更にも、安全かつスピーディーに対応できます。

JP1/AJS3 for CSAを利用する理由

JP1とHULFT Squareの連携では、APIジョブの処理完了までステータスチェックのリトライを行い、取得したステータスを基に終了判定をします。しかし、JP1/AJS3単体ではこの実装が困難です。JP1/AJS3 for CSAを利用することで、1つのジョブ内で柔軟な終了判定が可能になります。

なぜ「テンプレート」が必要なのか?

JP1とHULFT Squareを連携させる際、標準的なREST API呼び出しだけでは解決できない2つの課題があります。これをクリアするために、テンプレートやスクリプトが提供されています。

1. タイムアウトの対応(29秒ルールと非同期実行)

HULFT Square(Amazon API Gateway)の仕様により、REST API経由でスクリプトを実行する場合、実行時間が29秒を超えるとタイムアウトエラーが発生します。

そのため、リクエストヘッダーに「X-HSQ-Async: true」を指定して非同期実行を行う必要があります。しかし、非同期実行にするとAPIリクエストを受け付けた後、ジョブの完了を待たずにレスポンスが返されるため、「そのジョブが本当に成功したのか?」をJP1側で判断できません。

この対応のため、ジョブ実行後に実行状況を確認するためのポーリング用APIが必要です。今回のソリューションでは、HULFT Square側で終了判定スクリプトを組み込んだテンプレートが用意されており、JP1側ではそれを実行するスクリプトが提供されています。

2. 認証の対応(2段階認証のプロセス)

HULFT Squareへのアクセスには、セキュアな2段階の認証プロセスが必要です。

1. ログイン :Login APIでアクセストークンを取得。
2. 実行用トークンの取得:取得したアクセストークンとリフレッシュトークンを用いて、
REST APIジョブを実行するためのアクセストークンを取得。

JP1/AJS3 for CSAでは2段階の認証設定をするGUIは提供されていません。そのため、JP1では一連の認証処理を行うシェルスクリプトが提供されています。そのスクリプトをJP1/AJS3 for CSAの定義画面で設定することにより、2段階の認証への対応が可能となります。

今回は、実際に提供されているテンプレートとスクリプトを使って実行してみました。

提供テンプレートとシェルスクリプトの連携構成

HULFT Squareで提供されているJP1連携テンプレートと、JP1で提供されているシェルスクリプトの連携フローは以下の通りです。個別のスクリプトの詳細については次章で説明します。

HULFT Square側の準備:テンプレートのインストール

HULFT Squareでは非同期の問題を解決するために、ジョブ実行結果をCSVに出力し、そのCSVからステータスを判定するためのデータ連携テンプレート(アプリケーション)が提供されています。テンプレートをインストールし、プロジェクトにコピーすると以下のようなスクリプトが確認できます。

1.実行用スクリプト(JP1_main_script)

JP1_main_scriptは、JP1/AJS3で実行するスクリプトです。
このスクリプトは、実際に実行したいHULFT Squareのスクリプトを呼び出し、その実行結果をCSVに出力します。出力したCSVファイルは、終了判定で利用します。利用者は、JP1_main_script内の「call_subScript(スクリプト呼び出し処理)」に、実行したいスクリプトを指定します。

2.終了判断用のポーリングスクリプト(JP1_polling_script)

1.のJP1_main_scriptで実行したsubScriptが終了したかどうか、また終了している場合は、その結果を確認するためにJP1/AJS3で実行するスクリプトです。このスクリプトを実行して、終了判定を行います。

これらのプロジェクトをREST APIとして実行するためのAPIマネジメント設定は、HULFT Squareの情報を参考に設定してください。今回は、以下のエンドポイントURLになるように設定しています。

URLの形式
https://<お客様ドメイン名>.square.hulft.com/<プロファイル名>/<基本パス>/<リソースパス>

実行スクリプトのURL
https://<お客様ドメイン名>.square.hulft.com/jp1blog_Profile/jp1blog_hulft_execrestapi
終了判断用のポーリングスクリプトのURL
https://<お客様ドメイン名>.square.hulft.com/jp1blog_Profile/JP1BLOG_HULFT_CHECKRESTAPI

テンプレートの詳細は、こちら (新しいタブで外部サイトに遷移します)の「仕様書ダウンロード」と「インストール方法と使い方はこちら」で確認できます。

JP1/AJS3 for CSAの設定

JP1ではHULFT Squareの連携用にシェルスクリプトが提供されています。
これらのスクリプトをJP1/AJS3 for CSAの定義画面で設定します。

スクリプト名

用途

説明

login_get_accesstoken.sh

認証

2段階認証を行うスクリプトです。

exec_restjob.sh

ジョブ実行

実行用スクリプト(JP1_main_script)を呼び出します。HULFT Squareで実行したいスクリプトが実行されます。

check_restjob.sh

終了判断

終了判断用のポーリングスクリプト(JP1_polling_script)を呼び出します。実行用スクリプトが実行中かどうかを確認します。

1.認証定義画面

認証定義では、クラウド接続に使うユーザー名・パスワードなどの認証情報を登録します。
ここでは、HULFT Squareにログインするためのメールアドレスとパスワードを指定します。

ID/ユーザー

ログインで使用するメールアドレス

セキュリティ情報/パスワード

ログインで使用するパスワード

2.接続定義画面

接続定義では、認証定義で設定した認証情報を使い、ログイン処理を行います。
ここでは、認証用のスクリプト(login_get_accesstoken.sh)を設定します。このスクリプトにより、2段階認証が行われて、ジョブ実行のためのアクセストークンが取得されます。

共通環境変数設定

実行時の環境変数

リフレッシュトークンを設定
「REFRESH_TOKEN=リフレッシュトークン」

接続処理

コマンドラインの指定有無

する

コマンドライン

/path/login_get_accesstoken.sh @CSA(?CSAAIDINFO?)ASC@ @CSA(?CSAAPWDINFO?)ASC@ ?CSASUUID?

標準出力の格納

実行用アクセストークンを格納する変数
変数名「?CSACTOKEN?」となるように「TOKEN」を入力します。

3.実行定義画面

<実行開始処理>
実行開始処理は、クラウドで実行するコマンドを設定します。
ここでは、ジョブ実行用のスクリプト(exec_restjob.sh)を指定します。

コマンドライン

/Path/exec_restjob.sh ?CSAEHTTPTYPE? @CSA(?CSAEDOMAIN?)ASC@ @CSA(?CSAEPROFILE?)ASC@ @CSA(?CSAEJOBNAME?)ASC@ @CSA(?CSACTOKEN[0]?)ASC@ ?CSASUUID?

標準出力の格納

実行IDを格納する変数
変数名「?CSAEEXECID?」となるように「EXECID」を入力します。

出力内容の判定(標準出力)

「常に正常」を選択

<終了確認処理>
終了確認処理は、実行開始処理で実行したコマンドの終了確認処理を実施します。
ここでは、終了判断用スクリプト(check_restjob.sh)を設定します。

状態確認を設定

「する」を選択

コマンドライン

/Path/check_restjob.sh ?CSAEHTTPTYPE? @CSA(?CSAEDOMAIN?)ASC@ @CSA(?CSAEPROFILE?)ASC@ @CSA(?CSAECHKJOBNAME?)ASC@ @CSA(?CSAEEXECID[0]?)ASC@ @CSA(?CSACTOKEN[0]?)ASC@ ?CSASUUID?

標準出力の格納

ポーリング結果を格納する変数
変数名「?CSAERESULT?」となるように「RESULT」を入力します。

「CSAERESULT」の値を基に、正常終了(NORMALEND)か実行中(RUNNING)かを判別します。

出力内容の判定(標準出力)

「終了判定による判定」を選択

処理正常終了条件

変数:?CSAERESULT[0]? 値:NORMALEND

リトライ設定

「する」を選択

リトライ条件の値

RUNNING

繰り返し間隔

1

繰り返し回数

20

JP1/AJS3 - Viewの設定

JP1/AJS3 - Viewでは、JP1/AJS3 for CSAの定義をJP1/AJS3 - Viewのカスタムジョブとして登録します。登録したカスタムジョブの詳細定義情報に、REST APIジョブを実行するための値を入力します。

ここでは、前述の「実行スクリプトのURL」「終了判断用のポーリングスクリプトのURL」に含まれる、お客様ドメイン名、プロファイル名、REST APIジョブ名を各項目に指定しています。

項目

設定値

設定値の説明

認証定義名

HULFT

認証定義画面で設定した定義名

HTTPメソッド名

GET

RESTAPIジョブのHTTPメソッド(GET/POST等)

ドメイン名

環境に合わせて入力

HULFT Squareのお客様ドメイン名

プロファイル名

jp1blog_Profile

プロファイル名

実行先REST APIジョブ名

jp1blog_hulft_execrestapi

実行先のREST APIジョブ名

結果確認先REST APIジョブ名

JP1BLOG_HULFT_CHECKRESTAPI

結果確認を行うREST APIジョブ名

JP1/AJS3 - ViewとHULFT Squareでの実行結果の確認

JP1/AJS3 - ViewとHULFT Squareのそれぞれで実行結果を確認します。JP1/AJS3 - Viewでの正常終了し、
HULFT Squareでも実行した処理が問題なく終了していることが確認できました。

<JP1/AJS3 - Viewでの実行結果>

HULFT Squareの実行結果

まとめ

今回の検証を通じて、HULFT SquareのテンプレートやJP1のスクリプトを活用することで、認証や非同期実行といった処理を一から作りこむ必要がなく、パラメータなど処理に合わせたカスタマイズのみで実行できることを確認しました。

今回、連携用のスクリプトが提供されていることで、HULFT Squareとの連携において導入のハードルは大きく下がったと思います。

一方で、処理のスクリプトである以上、エラー発生時のデバッグや問題の切り分けには工数がかかるという課題があります。今後は、これらのスクリプトで対応している処理をJP1/AJS3 for CSAのGUIに組み込むなど、ご利用いただくお客様により使いやすい改善を開発元に要望したいと思っています。

JP1/AJS3 for CSAとHULFT Squareの連携をご検討されている方は、弊社にお問い合わせください。

製品正式名称(略称表記)

JP1/Automatic Job Management System 3(JP1/AJS3)13-00以降
JP1 Cloud Service/Job Management(JP1 CS ジョブ管理)02-20以降
JP1/Automatic Job Management System 3 for Cloud Service Applications(JP1/AJS3 for CSA)13-00以降
JP1/Automatic Job Management System 3 - View (JP1/AJS3 - View)13-00 以降
HULFT Square

※記載されている会社名や製品名は、各社の登録商標です。
※本ブログは2026年3月時点の情報です。

JP1ブログをご覧いただいているみなさまへご案内

いつもJP1サポート技術者ブログをご覧いただきありがとうございます。

本ブログの執筆を担当しているアシストJP1サポートセンターは、「JP1認定技術者」の資格を持つサポート技術者の対応が支持され、お客様満足度は10年連続90%以上を維持しています。

紹介サイトでは、サポートセンターが誇る3つの特徴とJP1の最新情報満載の提供サービスを、お客様の声とともにご紹介しています。是非ご覧ください。

また、アシストとJP1保守契約を締結されている方は、Webサポートセンター「AWSC-2」をご利用いただけます。本ブログサイトではご紹介しきれない2,000件以上のFAQを公開していますので、是非ご利用ください。詳細は、下記リンクよりご確認ください。

ページトップへ戻る


この記事をシェアする

この記事を書いたスタッフ

著者の顔写真

保木 紗知子

保木 紗知子