できるサーブレットするかどうかを判断します投稿データがmultipart/form-data?
-
09-06-2019 - |
質問
しているサーブレットに使用される多くの異なる行動を使用していますが、 フロントコントローラーのパターン.なんだろうけど、日本人にできるのであれば教えてくれるデータを掲載し、ワークショップをおこなうにはenctype="multipart/form-data"?読んでいる、リクエストパラメータまではどうしたらよろしいですかこんな派遣の要請に適切にコントローラです。
そのアイデア?
解決
あり、 Content-type
ヘッダーのユーザーエージェントの要求すべき multipart/form-data
に記載のとおり(少なくとも)HTML4の仕様:
http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.2
他のヒント
っている場合は受け付けていません。getContentType()メソッドは、上記注意:
- ます。getContentType()がnullを返します。
- ます。getContentType()がないこと 等しい には"multipart/form-data"があるとして無料でご利用いただけます。
そこで、チェックボックスはチェックするには:
if (request.getContentType() != null && request.getContentType().toLowerCase().indexOf("multipart/form-data") > -1 ) {
// Multipart logic here
}
できるメソッドの呼び出しのコンテンツタイプです。
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletRequest.html#getContentType()
による http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.2, のコンテンツタイプは"multipart/form-data".
ることを忘れないでください:
ます。getContentType()がnullを返します。
ます。getContentType()が等しくないことがある"multipart/form-data"があるとして無料でご利用いただけます。
そこで、この点にご留意ください。
if (request.getContentType() != null &&
request.getContentType().toLowerCase().indexOf("multipart/form-data") > -1 )
{
<< code block >>
}
ServletFileUploadを実装しisMultipartContent().かもしれませんのでこの実装はリフトとの架をServletFileUpload)にお任せください。
http://www.docjar.com/html/api/org/apache/commons/fileupload/servlet/ServletFileUpload.java.html
きのリクエストパラメータを決めるため、少なくとも 一部の ます。は、ServletRequestクラスは、getContentTypeる方法を見ると良いでしょう。
を拡充 awm129の回答 -Apache commons"実行に対応するこ
if (request != null
&& request.getContentType() != null
&& request.getContentType().toLowerCase(Locale.ENGLISH).startsWith("multipart/")) {
...
}
できると言われている多くの短縮をApache commons' org.apache.commons.lang3.StringUtils
:
if (StringUtils.startsWithIgnoreCase(request.getContentType(), "multipart/")) {
...
}
https://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html#getParts()
java.util.収集getParts()
戻り値:ServletException-この要求はしない型のmultipart/form-data