tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andre Prasetya" <andre.prase...@gmail.com>
Subject Re: Servlet with POST Request
Date Wed, 20 Dec 2006 04:51:39 GMT
Why dont you try using PUT instead of POST ? I think put is more suitable
for this as you can stream anything to servlet.
if you insist on using post, i recommend getting the parameter and replace
the newline with some chars like ':'

this is an example on streaming an object using put

        HttpClient client = HTTP_CLIENT;
        PutMethod method = new PutMethod(getUrl().toString());
        ByteArrayOutputStream byter = new ByteArrayOutputStream();
        ObjectOutputStream out = null;
        byte[] response = null;
        try {
            out = new ObjectOutputStream(byter);
            out.writeObject(o);
            RequestEntity entity = new ByteArrayRequestEntity(
byter.toByteArray());
            method.setRequestEntity(entity);
            client.executeMethod(method);
            response = method.getResponseBody();
        } finally {
            if (out != null) {
                out.close();
            }
            method.releaseConnection();
        }



On 12/20/06, Scott Carr <scarr@progbits.com> wrote:
>
> I am creating a client - server application that will process lines like:
>
> startjob
> adduser
> adduser
> adduser
> adduser
> endjob
>
> adduser can be an unlimited amount of times.  I want to process the
> lines as they come into the Servlet, that way a seperate process could
> be doing something to complete each of the tasks, while I am in the
> process of working on reading the lines.
>
> I have written a Socket server of my own to do this before, I am now
> trying to use Tomcat Servlet to do the same thing, because Tomcat
> already some behind the scenes stuff already setup.
>
> Does this make sense?  Am I totally off my rocker?  (My wife would
> definately agree with that last bit.)
>
> Andre Prasetya wrote:
> > Why do you want to read POST by using reader ? I only use the stream
> from
> > request on a PUT request.
> >
> >
> > On 12/16/06, Scott Carr <scarr@progbits.com> wrote:
> >>
> >> Hassan Schroeder wrote:
> >> > On 12/15/06, Scott Carr <scarr@progbits.com> wrote:
> >> >> Does a servlet require the use of a Content-Length for the Reader
> >> to be
> >> >> populated?
> >> >
> >> > A pretty cursory test seems to indicate not, but I could just be
> lucky
> >> > :-)
> >> >
> >> >> ...and I want to read each line as they come in, and handle the
> >> >> request on
> >> >> a line by line basis.
> >> >
> >> > Have you tried this yet? request.getReader() would seem to cover
> >> > your situation, assuming this isn't binary data.
> >> >
> >> Hm, the reason I asked, is because of a test I ran.  strLine is always
> >> null.
> >>
> >> Using the following code for processRequest:
> >>
> >> response.setContentType("text/plain");
> >>
> >>         m_out = response.getWriter();
> >>         m_bufRead = request.getReader();
> >>
> >>         while (true) {
> >>             strLine = m_bufRead.readLine();
> >>
> >>             if (strLine != null) {
> >>                 if (strLine.startsWith("login")) {
> >>                     ProcessLogin();
> >>                 } else if (strLine.startsWith("exit")) {
> >>                     break;
> >>                 }
> >>             } else {
> >>                 try {
> >>                     Thread.sleep(1000);
> >>                 } catch (InterruptedException ex) {
> >>                     ex.printStackTrace();
> >>                 }
> >>             }
> >>         }
> >>
> >>         m_bufRead = null;
> >>         m_out.close();
> >>
> >> ---------------------------------------------------------------------
> >> To start a new topic, e-mail: users@tomcat.apache.org
> >> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> >> For additional commands, e-mail: users-help@tomcat.apache.org
> >>
> >>
> >
> >
>
> --
> Scott Carr
> OpenOffice.org
> Documentation Co-Lead
> http://documentation.openoffice.org
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


-- 
-Andre-

PCs are like air conditioner, if you open Windows, they don't work

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message