5

Struts 2 とそのファイル アップロード インターセプターに問題があります。コンテンツ タイプとファイル サイズは検証済みですが、アップロード プロセスが停止しません。例 私のアップロード制限は 2Mb で、ユーザーが 500MB のファイルを送信すると、インターセプターはファイルが大きすぎることをログに記録しますが、ファイルのアップロードを続行します

ファイルの送信が終了したときにのみ struts2 が私のページに戻ってきたので、エラーの場合はアップロード プロセスを停止したいと思います。

ありがとう

4

2 に答える 2

3

Struts ではできません。Struts は、サーブレット コンテナーが応答オブジェクトの処理を完了するまで応答オブジェクトを取得しないためです。

ただし、ほとんどのコンテナにはアップロードファイルのサイズを制御する手段があり、Tomcat の場合、これは maxPostSize パラメータ (デフォルトは 2GB) です。Tomcat が着信バイト数をカウントし、この値を超えると終了することがわかる限り. つまり、Tomcat は maxPostSize を超えて読み取りを続行しません。他のコンテナーには、同様の構成パラメーターがあります。私はそれを使用したことがないので、ここでこれ以上助けになることはできません。

ネストされたコンテナー/サーブがある場合 (たとえば、Tomcat が Apache Web サーバーの背後にある場合)、正しいものを構成していることを確認してください。

于 2012-10-24T11:41:08.753 に答える