問題タブ [apache-commons-fileupload]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
18715 参照

java - null 値を与える送信ボタンの request.getParameter

Generate PDF/Generate Excel送信ボタンをクリックすると、サーブレットFileUploadに処理を要求しています.今、私が押した送信ボタンの値を取得しようとすると、nullとして値が返されます.なぜそれが起こっているのですか?

ここに私のHTMLコードがあります:

これは私のサーブレットコードです:

0 投票する
2 に答える
12717 参照

java - java.lang.IllegalStateException: ファイルは既に移動されています - 再度転送することはできません

ファイルをアップロードしてサーバーに保存しようとしています。しかし、私は得る:

Commons FileUpload jar(CommonsMultipartFile) を使用しています。ステートメントに対して IllegalStateException が発生します。 user.getFileData().transferTo(new File("/home/xavier/uploads/" + user.getFileData().getOriginalFilename()));

こちらuserが豆です。最初はうまくいきましたが、アップロードフォルダーからファイルを削除して再度テストすると、上記のように例外がスローされました。

スタックトレース:

0 投票する
2 に答える
4359 参照

java - ファイルはファイル フィールドに添付されていますか?

次のコードがあります。

最初にファイルが添付されているかどうかを確認したい。添付されている場合は、ファイルのみをアップロードしてください。私はこれを試しました:

しかし、これはうまくいきません。ファイルが添付されているかどうかを確認するにはどうすればよいですか? ファイルフィールドがあります:

0 投票する
2 に答える
3767 参照

java - commons-io.jar jsp/java のインポート方法

例外が発生しています:

私は使用するコードを持っています

インポートが必要なライブラリは次のとおりです。

私のプロジェクトへのパスは次のとおりです。

プロジェクトフォルダーには、それぞれのフォルダーがあります。

私はコピーしました:

両方に:

--------------- やってみた ---------------

ライブラリを単独でインポートするだけです

ビルド時に jar をクラスパスに追加します。

それらを環境変数 CLASSPATH に追加する

@Scot Shipが提案したように、.javaファイルがあるjarを追加しようとしました

----言及----

IDE を使用していません

コードには認識されない記号が含まれていますが、一度に 1 つずつ解決しようとしています

Apache、Tomcat、JSP を初めて使用します。優しくしてください

0 投票する
1 に答える
683 参照

java - サーブレット ファイルのアップロード

複数のファイルのアップロードを行うためにサーブレットを使用しています (Apache Commons FileUploadを使用)。私のコードの一部を以下に掲載します。私の問題は、ファイルを何度もアップロードすると、アプリサーバーのメモリ消費量が大幅に増加することです。Apache Tomcat サーバーはメモリにハングアップしているようで、決してメモリを返しません。ヒープ領域がメモリ不足です。時々、メモリ不足の例外が発生し、スローされjava heap space errorます。

すべての入力ストリームを閉じました。問題は にあると思いますServletFileUpload。閉じる方法を教えてください。

0 投票する
1 に答える
1689 参照

java - コードページ 1252 の FileItem からユーロ記号を含むコンテンツを読み取る

私の問題の設定は次のとおりです。

Web サービス通信を含むクライアント/サーバー アーキテクチャでは、サーバー側でクライアントから CSV ファイルを取得します。API は私に org.apache.commons.fileupload.FileItem を与えます

これらのファイルに許可されているコードページは、コードページ 850 とコードページ 1252 です。

すべて正常に動作しますが、唯一の問題はユーロ記号 (€) です。コードページ 1252 の場合、私のコードはユーロ記号を正しく処理できません。その代わりに、Unicode U+00A4: ¤ の記号が Eclipse のコンソールに表示されます。

現在、次のコードを使用しています。一部のクラスに分散しています。関連する行を抽出しました。

私は別のものを試しました:

FileItem.getInputStream()

FileItem.getInputStream() を使用して byte[] を取得しましたが、結果は同じでした。

FileItem.getString()

FileItem.getString() を使用すると、コードページ 1252 で完全に動作します。ユーロ記号は正しく読み取られます。Eclipse のコンソールに出力すると表示されます。しかし、コード ページ 850 では、多くの特殊文字が間違っています。

FileItem.getString(文字列エンコーディング)

だから私の考えは FileItem.getString(String encoding) を使うことでした。しかし、コードページ 1252 を使用するように彼に伝えようとしたすべての文字列は例外を生成しませんでしたが、間違った結果が生成されました。

たとえば、getString(Charset.forName("CP1252").name()) は、ユーロ記号ではなく疑問符になります。

org.apache.commons.fileupload.FileItem を使用するときにエンコーディングを指定するにはどうすればよいですか?

それとも、これは間違った方法ですか?

事前にご協力いただきありがとうございます。