同様の質問がありましたが、これまでのところ満足のいく答えが得られませんでした。さらに調査した結果、別の方向にたどり着きました (すべてをログ ファイルに記録し、jira 管理者に処理を任せる)。ただし、この目的に使用できる別のワークフロー プラグイン モジュールを試すことができます:バリデーター モジュール. そのコードは、ユーザーが遷移ダイアログを送信した直後にトリガーされますが、遷移が受け入れられる前にトリガーされます (ダイアログのすべての入力パラメーターが現在の遷移に対して有効かどうかを検証するために使用されます)。そのため、バリデーターを使用してサービスが稼働しているかどうかを確認し、稼働していない場合は例外をスローするというアプローチをとることができます。もちろん、この方法では、リモート サービスが利用できない場合、JIRA での通常のワークフローを妨げています。
もう 1 つの解決策 (ケースにより便利な場合があります) は、Webwork モジュールを追加して JIRA View アクションを拡張することです。最初に、atlassian-plugin.xml ファイルに新しい Webwork モジュールを追加します。
<webwork1 key="view-issue" name="View issue with warnings" class="java.lang.Object">
<description>View issue with warnings</description>
<actions>
<action name="com.my.jira.plugin.blah.blah.ExtendedViewIssue" alias="ViewIssue">
<view name="success">/secure/views/issue/extended-viewissue.jsp</view>
<view name="issuenotfound">/secure/views/issuenotfound.jsp</view>
<view name="permissionviolation">/secure/views/permissionviolation.jsp</view>
<command name="moveIssueLink" alias="MoveIssueLink">
<view name="error">/secure/views/issue/viewissue.jsp</view>
</command>
</action>
</actions>
</webwork1>
次に、クラスViewIssueを ExtendedViewIssue (上記参照) でオーバーライドし、パブリック メソッドを追加して、サービスが利用可能かどうかを確認します。そのメソッドは、問題を表示する JSP ページから呼び出されます。
public boolean isServiceAvailable() {
// TODO your code that checks if the service is available
return false;
}
ファイルextended-viewissue.jspを編集し、条件が満たされた場合に警告を含む div を追加します。
<ww:if test="/isServiceAvailable() == false">
<div class="aui-message warning">
<span class="aui-icon icon-warning">The service is not available!</span>
</div>
</ww:if>
適切に実行すると、次のようになります。

JIRA をアップグレードするたびに、JSP ファイルを再度編集する必要があることに注意してください。JSP ファイルに導入した変更は、アップグレード中に失われる可能性があるためです。