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

エラー「java.lang.RuntimeException: java.lang.NullPointerException」で SAML 構成で IDP を作成できません

written-by

Aaron Wang

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • エラー「java.lang.RuntimeException: java.lang.NullPointerException」で SAML 構成で IDP を作成できません
2021-01-08 18:31:29.437 DEBUG [default task-193][SamlAdminPortlet:74] java.lang.NullPointerException
java.lang.RuntimeException: java.lang.NullPointerException
at com.liferay.portlet.expando.model.impl.ExpandoBridgeImpl.getAttributeType(ExpandoBridgeImpl.java:334)
at com.liferay.portal.util.PortalImpl.getExpandoBridgeAttributes(PortalImpl.java:2214)
at com.liferay.portal.util.PortalImpl.getExpandoBridgeAttributes(PortalImpl.java:2238)
at com.liferay.portal.kernel.util.PortalUtil.getExpandoBridgeAttributes(PortalUtil.java:936)
at com.liferay.portal.kernel.service.ServiceContextFactory.getInstance(ServiceContextFactory.java:510)

Environment

  • Liferay DXP 7.1

解決策

  • このエラーの根本的な原因は、デフォルトの keepAliveURL 関連レコードが expandocolumn テーブルにないことです。 参考までに: デフォルトの keepAliveURLレコードは、データベースでは次のようになります。
35101 20099 34002 keepAliveURL 15 keepAliveURL 
35102 20099 34005 keepAliveURL 15 keepAliveURL
  • この問題は、SAML lpkg を再デプロイすることで解決できます。 不足しているレコードは、SAML lpkg を再デプロイした後に追加されます。 ステップ:

1. サーバー
2 をシャットダウンします。 現在インストールされている SAML LPKG ファイルを LIFERAY_HOME/osgi/marketplace
3 から削除します。 osgi/state フォルダーを削除し、liferay_home/work フォルダーをクリーンアップします
4. サーバー
5 を起動します。 SAML LPKG
6 を再デプロイします。 のような情報がある場合、ファイルのインストールを完了するには、ポータル インスタンスを再起動する必要があります:/D:/Bundles/liferay-dxp-tomcat-7.1.10-ga1-20180703090613030/liferay-dxp-7.1.10-ga1/osgi /marketplace/Liferay%20Connector%20to%20SAML%202.0%20-%20API.lpkg がログで確認できます。サーバーを再起動して、レコードを生成できるかどうかを確認します

  • クラスター化された環境にいる場合は、SAML が各ノードに適切にデプロイされているかかを確認してください。 次に、次の手順を使用して、不足しているレコードを生成します:
  1. すべてのクラスタ ノードをシャットダウンする
  2. 両方のノードで、現在インストールされている SAML LPKG ファイルを LIFERAY_HOME/osgi/marketplace から削除します。
  3. osgi/state フォルダを削除し、両方のノードで liferay_home/work フォルダを消去します
  4. ノード 1 を開始し、SAML LPKG を再度デプロイします
  5. のような情報がある場合、ファイルのインストールを完了するためにポータル インスタンスを再起動する必要があります:/D:/Bundles/liferay-dxp-tomcat-7.1.10-ga1-20180703090613030/liferay-dxp-7.1.10-ga1/osgi /marketplace/Liferay%20Connector%20to%20SAML%202.0%20-%20API.lpkg がログで確認できます。ノード 1 を再起動します。
  6. ノード 1 が正しく開始されたら、データベースをチェックして、レコードが expandocolumn テーブルに存在するかどうかを確認します。
  7. ノード 1 を開いたままにして、残りのノードで上記の手順 4 ~ 5 を繰り返します。
did-this-article-resolve-your-issue

legacy-knowledge-base