Using the Script Engine
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

スクリプトコンソールからのスクリプトの実行

スクリプトコンソールは、Groovyスクリプトを実行し、その出力を印刷するための単一のビューを提供します。 ウィジェットとユーザーの操作を容易にする定義済みの変数があります。 次のトピックでは、スクリプトコンソールの使用を開始します。

重要

スクリプト コンソールはシステムの操作とメンテナンス用であり—エンド ユーザー用ではありません。 スクリプトコンソールへのアクセスをポータル管理者に制限してください。

まず、スクリプトコンソールのサンプルスクリプトを実行します。

スクリプトコンソールでサンプルスクリプトを実行する

スクリプトコンソールでサンプルスクリプトを実行する方法は次のとおりです。

  1. 管理者としてログインします。

  2. 製品メニューで、 コントロール パネル に移動し、 システムサーバー管理を選択します。

  3. スクリプトをクリックします。 これがスクリプトコンソールです。 デフォルトのサンプルスクリプトは、ユーザー数をコンソール出力に出力します。

    // ### Groovy Sample ###
    
    number = com.liferay.portal.kernel.service.UserLocalServiceUtil.getUsersCount();
    
    out.println(number);
    
  4. 実行 をクリックし、スクリプト コンソール 出力 でユーザー数を確認します。

    スクリプトコンソールのサンプルのGroovyスクリプトは、ユーザー数をスクリプトコンソールの出力に出力します。

Groovy サンプルは、Liferay サービス ユーティリティ UserLocalServiceUtil を呼び出してユーザー数を取得します。 次に、out(組み込みのPrintWriter)を使用して、スクリプトコンソールに数を書き込みます。

System.out.printlnout.printlnの代わりに使用すると、出力はスクリプトコンソールではなく Liferay のログファイルに出力されます。

定義済みのスクリプトコンソール変数

スクリプトコンソールのスクリプトで使用できる定義済みの変数は次のとおりです。

クラス
outjava.io.PrintWriter
actionRequestjavax.portlet.ActionRequest
actionResponsejavax.portlet.ActionReponse
portletConfigjavax.portlet.PortletConfig
portletContextjavax.portlet.PortletContext
preferencesjavax.portlet.PortletPreferences
userInfojava.util.Map<String, String>

変数の使用

次のスクリプトは、actionRequest変数を使用してポータルインスタンスのCompanyを取得する方法を示しています。

import com.liferay.portal.kernel.util.*

company = PortalUtil.getCompany(actionRequest)
out.println("Current Company:${company.getName()}\n")

out.println("User Info:")
userInfo.each {
        k,v -> out.println("${k}:${v}")
}

以下は、事前定義されているout、actionRequest、およびuserInfo変数を使用して、会社とユーザーに関する情報を出力するGroovyスクリプトを呼び出す例です。

ヒント

スクリプトコンソールを使用するときは、次の点に注意してください。

  • 元に戻すことはできません。
  • プレビューはありません。
  • アクセス許可のチェックは、ローカルサービスには適用されません。
  • スクリプトは同期的に実行されます。 時間がかかる可能性のあるスクリプトの実行は避けてください。

スクリプトコンソールを慎重に使用し、スクリプトを本番環境で実行する前に非運用システムでテストしてください。

スクリプトエンジンは、Kaleoワークフローなど、スクリプトコンソールの外部で使用できます。 ワークフローでスクリプトエンジンを使用する方法は次回学びます。