2年以上にわたる私のコンテンツリポジトリには、多くの古いコンポーネントリソースが蓄積されています。コンポーネントノードにsling:resourceTypeプロパティがありません。これらのコンポーネントのノードは次のようになります。AEMリソースが抜けている:resourceType
このような悪いリソースに、ページが例外の下に投げている:
14.09.2017 12:33:21.079 *ERROR* [172.21.142.98 [1505392399461] GET /content/xx/en_ca/home.html HTTP/1.1]
org.apache.sling.servlets.get.impl.DefaultGetServlet No renderer for extension html, cannot render resource Paragraph,
path=/content/xx/en_ca/home/jcr:content/par-sidebar/contentbox_c540/rightRailContentPar/contentbox_f1fd,
type=nt:unstructured, cssClass=default, column=0/0, diffInfo=[null],
resource=[JcrNodeResource, type=nt:unstructured, superType=null,
path=/content/xx/en_ca/home/jcr:content/par-sidebar/contentbox_c540/rightRailContentPar/contentbox_f1fd]
さらに掘り、私は誰かがtool to cleanup、このような時代遅れの資源を書いていた見つけました。
このような無効なノードをクエリしてクリーンアップするのは簡単ですが、そのようなリソースはどのようにしてリポジトリに格納されましたか?私は、コンポーネントを移動して、ページからコンポーネントを削除して、しかし無駄にシミュレーションしようとしました。 sling:resourceTypeを削除するカスタムスクリプトはありません。この問題は私だけが直面していますか?または、リソースの種類をクリアできる製品の問題/用途がありますか?
私はAEM 6.0 SP2を実行しています。
私は複数のプロジェクトで同じ問題に直面しているので、これらの問題の原因にも非常に関心があります。デバッグが難しいのは、ソースが不明なためです。 – d33t