0

トランスフォーマーに次のようなものが含まれているパイプラインを使用した Cocoon セットアップがあります。

<cinclude:include src="https://my-app/get-some-data" />

現在、そこに含まれている URL は実際には Cocoon からのものであり、Java が信頼しない TLS 証明書を持っているため、PKI 証明書パスに関するエラーが発生します。サーバーのTLS証明書を含むJVMプロセスのトラストストアを指定することで、それを「簡単に」解決できます(そして、しばらく前からそうでした)。

少なくとも次の 2 つの理由から、それをやめたいと思います。

  1. サーバー証明書の更新が必要な場合、トラスト ストアを更新して Cocoon をバウンスする必要があります
  2. より効率的である可能性があります(ループバック HTTP リクエストなし、TLS ハンドシェイクなしなど)。

cinclude は Cocoon 相対パスを認識しますか?

私はこのようなものを探しています:

<cinclude:include src="cocoon://get-some-data" />

そのようなものは存在しますか?

4

1 に答える 1

0

はい、まさにこれを行うことができます。必要な構文は、わずかな変更を加えて、すでに問題になっています。たとえば、これをmatch内で構成したとしますsitemap

<map:match pattern="get-some-data">
   ...
</map:match>

<map:match pattern="primary-request">
  ...
  <map:transform type="cinclude" />
  ..
</map:match>

「プライマリリクエスト」パイプライン内で使用<cinclude>して、他のパイプラインから含めるには、次のことが必要です。

<cinclude:include src="cocoon:/get-some-data?parameters" />

これは、同じサイトマップ内のパイプラインに対してのみ機能します。他のサイトマップでパイプラインを参照する必要がある場合は、もう少し設定が必要ですが、それは質問の範囲外です。

于 2016-05-31T18:51:59.703 に答える