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

6.2 から 7.2 にアップグレードした後、サイトマップにページが含まれない

written-by

Rita Schaff

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

問題

  • サイトマップを生成する多くのサイトには、いくつかの問題があります。 新しいページを作成すると、それらのページはサイトマップに含まれますが、ページがサイトマップに含まれるように構成されていても、既存のページは含まれません。

  • これは、これらすべてのページがデータベース テーブル レイアウト にレコードを持ち、 classnameid および classpk 列に対して 0ではなく NULL 値を持つことが原因のようです。

  • NULL 値を持つこれらのレイアウトはすべて、6.2 から Liferay 7.2 にアップグレードする前に作成されたようです。

  • このデータをどのように修復すればよいでしょうか?

Environment

  • DXP 7.2

解決策

サイトマップに含めるレイアウトのサイトマップ クエリは classnameid != <SOME VALUE> をチェックしているようですが、NULL は値ではないため、これらのレコードはすべてサイトマップで無視されます。

続行する前に、データベースと環境のバックアップを必ず作成してください。 また、最初に下位環境で次の手順をテストすることをお勧めします。

  1. 以下の Groovy スクリプトをコピーします。
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import com.liferay.portal.kernel.dao.jdbc.DataAccess;
    import com.liferay.portal.kernel.util.PortalUtil;
    executeUpdate("update Layout set classNameId = 0 where classNameId is null");
    public void executeUpdate(String sql) {
    Connection con = null;
    PreparedStatement ps = null;
    ResultSet rs = null;

    try {
    con = DataAccess.getConnection();
    sql = PortalUtil.transformSQL(sql);

    out.println("SQL: "+sql);

    ps = con.prepareStatement(sql);

    int n = ps.executeUpdate();
    out.println("Updated "+n+" rows");
    }
    catch(Exception e) {
    e.printStackTrace(out);
    }
    finally {
    DataAccess.cleanUp(con, ps, rs);
    }
    }
  2. サーバー管理へスクリプト
  3. スクリプトを貼り付ける → 実行
  4. 結果を確認する
did-this-article-resolve-your-issue

legacy-knowledge-base