1

非同期の性質のためにActionRequestではないはずのマルチパートhttpリクエストを処理する適切な方法は何ですか?

たとえば、フラッシュアップローダーからのAjaxMultipartリクエスト。アクションフェーズの後にレンダリングフェーズが続くため、これらはアクションリクエストを意味するものではありません。htmlフォームの場合に便利ですので。

Springのような一部のフレームワークは一般的なAjaxリクエストを処理するためにResourceRequestsを使用していますが、マルチパートリクエストを処理することについては何も言及されていません(JSR286)。

次に残っているのはレンダリングフェーズです。これはそのために使用できますが、正しくないようです。spring-portlet-mvcでは、レンダリングフェーズでビューをレンダリングすることが期待されており、リクエストを非同期で処理しないため、実際にはそれを行う方法がない場合があります。

春のフレームワークでは、私が対処する方法がわからないこれらの問題があります

SPR-7662

SPR-7910

私の最後は、非同期リクエストはサーブレットによって処理されるべきであり、ポータルサーブレットをポイントしてポートレットリクエストになるべきではないということです。これは非常に煩わしく、多くの余分な作業を引き起こします。または、Spring-portlet-mvcの場合と同様に、回避策としてResourceRequestsを使用します。

4

1 に答える 1

0

さて、私はすでにこの質問をここで一般的な言葉で説明しました。

Liferayポータルでは、アクションリクエストでwindowState="exclusive"パラメーターも指定する必要があります。

<portlet:actionURL var="actionURL" windowState="<%=LiferayWindowState.EXCLUSIVE.toString()%>" />

これにより、レンダリング応答の場合に必要となるいくつかのhtmlフラグメントによって応答がラップされなくなり、生データは返されませんが、レンダリングされるビュー(JSP)が返されます。

于 2011-01-27T03:41:32.863 に答える