i am submitting data from a form using enctype=multipart/form-data. i am not able to get the value of text field using request.getParameter() method. but i am able to save the file which is uploaded. is there any other methods to get the value of text field.
When you set the form enc type as multipart form data, all the form contents (textboxes,radiobuttons,hiddenfields,....) are encoded in the binary mode and sent to the Server. Each form controls binary data is seperated by a boundary data.
So you need to implement a MIME Parser, which identifies the binary boundary data. and use this boundary to parse the individual form contents.
So instead of re-inventing the wheel, you can use a 3rd party tool.something like Apache's FileUpload component. It has proper documentation. It is been widely used.
Work like you don't need the money. Love like you've never been hated. Dance like nobody's watching. Sing like nobody's listening. Live like it's Heaven on Earth.
Currently I Reside HereWEBlog
Originally posted by Pradeep Chandrasekharan Nair: i am submitting data from a form using enctype=multipart/form-data. i am not able to get the value of text field using request.getParameter() method. but i am able to save the file which is uploaded. is there any other methods to get the value of text field.
There are many solutions to your problem if you are ready to embrace some libraries. The solutions and their advantages are as follows:
Solution A: (Advantage: Free Distribution & Widely used)
1. Download one of the versions of UploadFile from http://jakarta.apache.org/commons/fileupload/ 2. Invoke parseRequest(request) on org.apache.commons.fileupload.FileUploadBase which returns list of org.apache.commons.fileupload.FileItem objects. 3. Invoke isFormField() on each of the FileItem objects. This determines whether the file item is a form paramater or stream of uploaded file. 4. Invoke getFieldName() to get parameter name and getString() to get parameter value on FileItem if it's a form parameter. Invoke write(java.io.File) on FileItem to save the uploaded file stream to a file if the FileItem is not a form parameter.