問題点

クラシック UI サイト管理者(/siteadmin)で実行される検索の検索と置換は一部のコンテンツパスで失敗します。以下と同様のエラーが error.log に記録されます。

01.06.2017 11:36:28.122 *ERROR* [0:0:0:0:0:0:0:1 [1496331387272] GET /content/geometrixx/en.find.json HTTP/1.1] org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught Throwable
java.lang.NullPointerException: null
	at com.day.cq.wcm.core.impl.servlets.FindReplaceServlet.findPages(FindReplaceServlet.java:264)
	at com.day.cq.wcm.core.impl.servlets.FindReplaceServlet.doGet(FindReplaceServlet.java:144)
	at com.day.cq.commons.servlets.AbstractPredicateServlet.doGet(AbstractPredicateServlet.java:68)
	at org.apache.sling.api.servlets.SlingSafeMethodsServlet.mayService(SlingSafeMethodsServlet.java:269)
	at org.apache.sling.api.servlets.SlingAllMethodsServlet.mayService(SlingAllMethodsServlet.java:140)
	at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service(SlingSafeMethodsServlet.java:345)

原因

この問題は、ページのノード jcr:content(cq:PageContent)の下に nt:unstructured を保存する代わりに cq:Page ノードの直下に nt:unstructured を保存したことが原因である可能性があります。

例えば:
不正解:
/content/geometrixx/en/footer/copyright

正解:
/content/geometrixx/en/jcr:content/footer/copyright

解決策

問題のあるノードを cq:Page ノードの直下に保存する代わりに jcr:content ページのサブノードの下に移動します。  cq:PageContent(jcr:content)ノード構造の下にコンテンツを保存することはベストプラクティスアプローチです。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー