2016-12-23 9 views
0

ページコンテンツをストリームとして取得するか、Page.classから直接文字列を取得します。現時点で [Apache Tapestry]:ページコンテンツをストリームまたは文字列として返します。

:私はルートを通過する必要があります。このアプローチの問題は、フレームワークは 外部から作られている要求のように感じさせる toAbsoluteURI()への呼び出しがある

String uri = linkSource.createPageRenderLink(AnotherPage.class).toAbsoluteURI(); 
IOUtils.toString(uri, "UTF-8") 

。ユーザーに再度ログインするように要求します。その1つのタペストリー・ページが同じアプリケーション内の他のタブ・ページにアクセスするときにはそうではありません。

注:私はAnotherPage.classに "リダイレクト"しようとしていません。 toAbsoluteURI()などを経由することなく、別のページのコンテンツをStringとして取得したいのです。

また、ストリームとして別のページのコンテンツを取得することもできます。私はApache Tapestry 5.4.1

答えて

0

を使用しています

は、タペストリー、オフラインモジュールを見てみましょう。これにより、Tapeatryで生成されたページからHTMLを簡単に取得できます。

https://github.com/uklance/tapestry-offline

0

方法は、例えば、StreamResponseの実装を返すonActivate持ち

public StreamResponse onActivate(Long productId) { 
    return new TextStreamResponse("text/csv", convertProductToCsv(productId)); 
} 

デフォルトでは、ページはテンプレートを返しますが、この方法ではその動作が上書きされます。

このページをチェックアウト:https://wiki.apache.org/tapestry/Tapestry5HowToStreamAnExistingBinaryFile

関連する問題