legacy-knowledge-base
公開されました Jul. 2, 2025

MarketplaceからElasticsearch 6へのConnectorをインストールすると、NullPointerExceptionがスローされる。

投稿者

Adam Zsolnay

knowledge-article-header-disclaimer-how-to

knowledge-article-header-disclaimer

legacy-article

learn-legacy-article-disclaimer-text

問題

  • LiferayのMarketplaceからElasticsearch 6へのLiferay Connectorをfix Pack 11のパッチレベルでインストールしました。 パック12の修正に移行してから、以下のような例外が発生するようになりました。
    WARN [liferay/search_writer/SYSTEM_ENGINE-3][ProxyMessageListener:88] java.lang.NullPointerException
    at com.liferay.portal.search.elasticsearch6.internal.ElasticsearchIndexWriter.updateDocument(ElasticsearchIndexWriter.java:249)
    at sun.reflect.GeneratedMethodAccessor291.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)

    /*cut for brevity*/

環境への配慮

  • Liferay DXP 7.1
  • スタンドアロンのElasticsearchに接続(対応バージョン

決議

  • 理由。 DXP 7.1では、Liferay Connector to Elasticsearch 6がデフォルトでインストールされており、Liferay DXP Fix Packsを通して更新されます。 Liferay Marketplaceを使用してLiferay 7.1でアプリをアップデートすると、 Marketplaceアプリの説明を参照してエラーが発生します。
  • 解決(2つの方法があります)。
    a) コアのosgiモジュールをオリジナルのものに置き換える
    b) ゼロからポータルを再インストールする
  • 解決a) OSGiのコアモジュールをオリジナルのものに置き換える

    • ステップ。

      1. ('Source')からコアモジュールを取るために、修正パック11でパッチを適用したバニラDXP 7.1バンドルを作成します。

      2. ポータルを元に戻してパック11を修正 ('Target')

      3. TargetのコアモジュールをSourceのコアモジュールに置き換えます。

        LR_home/osgi/core
        LR_home/LR_home/ 6/marketplace
        LR_home/osgi/target-プラットフォーム
        LR_home/osgi/test
        LR_home/osgi/configs

        カスタム設定ファイルをLR_home/osgi/configsに保存しておくことをお勧めします。

      4. フィックスパック 12 でポータルにパッチを当てましょう

did-this-article-resolve-your-issue

legacy-knowledge-base