Vincent, Last first: "multipart/form-data" : My knowledge of this is not complete, but if you have a FORM with the usual INPUT elements and one or more of these are of type="file" ( which is when the client wishes to upload a file to the server ), the "multipart/form-data" is what you need. The Request the server receives from this will contain the the file(s) for upload as well as all the other FORM elements ( which otherwise would be retrieved using request.getParameter() ). I use this in an application where the user submits FORM data with shipping freight data + also has the possiblity of submitting one or more files as attachments along with other the data as in a e-mail. The intent is to be able to send form data mixed with ex. file(s). Done by using a declared delimiter between elements in a buffer. The http://www.servlets.com/cos/index.html site contains a library, cos.jar, for reading multipart form data from a request into a multipart object with getParameter() and getFile() methods.
Had a brief look at Jakarta Commons HttpClient: uncertain, maybe "chunked" transfer etc.. When time permits I will look into it more closely. However, I see no html parsing going on here. HttpUnit : does support multipart, so the symetry if poss.. : when time allows I will see if HttpUnit's stuff could be used to build the multipart request and thereafter extract it as a buffer for setUserData().... bypassing any grave issues.. Binary files: can be sent in a multipart Thanks for your answer Gunnar -----Original Message----- From: Vincent Massol [mailto:[EMAIL PROTECTED]] Sent: 15. mars 2002 20:06 To: 'Cactus Users List' Subject: RE: setUserData ( multipart/form-data ) :=> low levelstuff Gunnar, Thanks for your proposition. This is indeed interesting. I remember that when I introduced the HttpUnit WebReponse integration I also thought about using the HttpUnit's features to send HTTP requests. However, I think there will be issues. But I haven't looked in details. Maybe they can be overcome ? WRT your proposition about a higher level API to send HTML, I think it is interesting although I'd like to see some more details. Also, does it work for sending XML in the same way ? What about binary files ? Or is geared specifically for multipart/form-data ? Also, do you know if Jakarta Commons HttpClient already provides this feature. If not, wouldn't it be best to implement it in that project (especially as Cactus is already using HttpClient) ? I'd love not to have to maintain this feature as part of Cactus as it is not really related to Cactus's core business. I'm quite sure there would be interest for it on Jakarta-Commons. If you're interested, can you post a message on Commons-dev ? I don't much about multipart/form-data. What is the intent ? When is it used over simple form data (POST) ? I have never had the need to use it in all my web projects which is probably why I am so ignorant of it ! :-) Thanks -Vincent > -----Original Message----- > From: Gunnar Ole Skogen [mailto:[EMAIL PROTECTED]] > Sent: 28 February 2002 07:29 > To: [EMAIL PROTECTED] > Subject: setUserData ( multipart/form-data ) :=> low levelstuff > > Hi, > > Proposal for new feature: > > Using setUserData to sent a multipart/form ( or other) means one has to do > what a browser does when sending a request from a form with ContentType = > multipart/form-data. I did this low level stuff ( inserting parameter > element, boundaries, reading files into the buffer etc) and it works. > > What would be time saving is to be able to simply input the html code in > the > request in the future. > Using HttpUnit's request class as one can use it's response class would > make > things symetric ( have not checked if the above is possible with HttpUnit > ) > There probably are some 3rd party libs for transforming html into a > request-object ? > > If you are interested and this, in that case, needs to be implemented in > Cactus itself, I can send you the code I use for inserting > multipart/form-data into setUserData . > > -Gunnar Skogen > > -- > To unsubscribe, e-mail: <mailto:cactus-user- > [EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:cactus-user- > [EMAIL PROTECTED]> > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
