0
私は私のプロジェクトに画像を追加しようとすると、上記のこのエラーを取得していますjava.lang.IllegalStateException:Request.getPartはマルチパート構成なしで呼び出されます。どちらのサーブレットに@MultipartConfigを追加、またはマルチパート-config要素は、web.xmlにRequest.getPartはマルチパートjspなしで呼び出されます
MY HTMLである
<form action="../include/crud.jsp" method="POST">
<input type='file' onchange="readURL(this);" style="display:none;" name="photo" />
</form>
私crud.jspは目を取り除くためにどのように
<%@page import="java.text.DateFormat"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.sql.PreparedStatement"%>
<%@ include file="dbconfig.jsp" %>
<%@ page import="java.io.*,java.util.*, javax.servlet.*" %>
<%@ page import="javax.swing.*" %>
<%@page
import="org.apache.commons.fileupload.FileItem"
import="org.apache.commons.fileupload.FileUploadException"
import="org.apache.commons.fileupload.disk.DiskFileItemFactory"
import="org.apache.commons.fileupload.servlet.ServletFileUpload"
%>
<%
Part filePart = request.getPart("photo"); // Retrieves <input type="file" name="file">
String fileName = filePart.getSubmittedFileName();
InputStream fileContent = filePart.getInputStream();
try {
conn.setAutoCommit(false);
PreparedStatement preparedStatement = null;
String act = request.getParameter("btncrud");
if (act == null) {
//no button has been selected
} else if (act.equals("Add")) {
//Add button was pressed
String add_disbursement = "INSERT INTO photo_table "
+ "(ri_photo,ri_photo_name)"
+ " VALUES (?,?)";
preparedStatement.setBlob(1,fileContent);
preparedStatement.setString(2,fileName);
preparedStatement.executeUpdate();
} else if (act.equals("Update")) {
//update button was pressed
} else {
//someone has altered the HTML and sent a different value!
}
%>
- ですメディアブロブとしてデータベースに写真ファイルを保存する方法Eエラー
FYI
列ri_photo
はタイプMEDIUMBLOBである
UPDATE
はcos-multipart.jar
とimport=" com.oreilly.servlet.MultipartRequest"
まだ同じエラーを追加しました
@MultipartConfig
をJSPページに追加する
が自動生成されたweb.xml'ファイル 'です私は 'web \ WEB-INF'でそれを探しますlibのフォルダ以外は何もありません –
私はJSPの代わりにサーブレットのJavaファイルに行くことをお勧めします。あなたのcrud.jspにhtmlコードのように、web.xmlなしでjavaファイルに@MultipartConfigを指定することができます。そして、あなたのアプリケーションはweb.xmlを必要とするServelt仕様、またはjavaサーブレットコードの関連注釈にも準拠します。 – vvtx