1

Magnolia が管理するコンテンツを、既存の Web アプリの一部の JSP に埋め込もうとしています。Tomcat では、既存の「アプリ」コンテキストに沿って実行される「magnoliaAuthor」コンテキストをデプロイしてセットアップしました。

したがって、たとえば、既存の JSPに(div のみ)/app/test.jspなどの Magnolia ページを含めたいと考えています。/magnoliaAuthor/footerブラウザでは、パス/magnoliaAuthor/footerは正常にレンダリングされますが、それを使用に含めようとすると問題に直面しています/app/test.jsp:

  • c:import
  • jsp:include

など、/magnoliaAuthor/footer..への相対パスと絶対パスの両方を使用します。

せいぜい次のようになります。

サーバーは HTTP 応答コードを返しました: URL に対して 401: http://localhost:8080/magnoliaAuthor/footer(絶対 URL が使用されている場合)。これは、マグノリアによってリクエストが拒否されたようです..

このユース ケースをどのように組み合わせる必要があるかについての正確な説明は見つかりませんでした。ヒントをいただければ幸いです。

ありがとうございました。

4

1 に答える 1

2

HTTP 401 は許可されていません:

リクエストにはユーザー認証が必要です。

これは理にかなっています: magnoliaAuthor インスタンスは、エディターが作業するインスタンスであるため、ログインできるように常にユーザー名とパスワードを必要とします。

必要なのは、magnoliaAuthor にユーザー名とパスワードを送信することです。私の調査によると、Magnolia は次の 2 つのログイン フィルタを使用しています/server/filters/login/loginHandlers

  • 1 つはHTTP 基本認証を処理します。
  • もう 1 つは、Magnolia ログイン フォームを使用してログインを処理します。

HTTP 基本認証を利用して、Magnolia ページを次のように含めることができます。

<c:import url="http://username:password@example.com/magnoliaAuthor/app/test" />

注:を含めて問題ないと書いてあり/magnoliaAuthor/footerました。これは、これら 2 つのサイトにアクセスするためのセキュリティ構成が異なることを意味します。これを確認することを検討する必要があります。通常は、magnoliaAuthor のリソースに承認なしでアクセスできるようにしたくありません

于 2013-10-24T05:35:25.923 に答える