Lior,

Basically, I think that you need to handle the response by yourself.

For instance, if you want to send an image :

***
RenderedImage rimg = ImageIO.read(new File(img));
           OutputStream os = response.getOutputStream(); // <=== get the
response to be able to re-write it
           ImageIO.write(rimg, "jpg", os);
           os.close();
***


In my example I assumed that the MIME content-type was set to the relevant
value, since you said that your headers were OK. But anyway, here is my
stuff to do so :


***
response.setContentType("image/jpg");
***



But if you want to be able to send a file for the browser to download it, or
to be able to send several different types of data all in one response, you
need a multi-part response :


***
response.setHeader("Content-Disposition", "attachment;filename=\"test.doc\"");
// <=== here
response.setContentType("text/doc");
out = response.getWriter();
out.print("what you wish");

response.setContentType("image/png");
out = response.getWriter();
out.print("what you wish too");
out.close();
***


Be aware that without a multi-part response, you can only set one
content-type. If you try and set it a second time, Tomcat will give you a
(beautiful) exception saying something like (can't remember exactly)
"content-type has already been set".

Here is a list of MIME-types, FYI :

http://plugindoc.mozdev.org/winmime.html

With this technique of multi-part response, you can for instance turn a JSP
to a Word file : you set the response type to .doc and let Tomcat render its
JSP compiled to HTML into it. Then the browser received a .doc file with
regular HTML into it, which word is able to read... et voilà !


Regards,


Pierre



2007/7/4, lior grinfeld <[EMAIL PROTECTED]>:

you were right, 10X.

now i am facing yet one more challenge.
i made filter  to overwrite the response, i added headers as i want and it
works fine.
now i want to manipulate the content , to do zip or to chunk the data.

i tried to do StreamResponseWrapper that extends
HttpServletResponseWrapper, without success.
any ideas on how to implement it?

10X
Lior


On 7/4/07, David Delbecq <[EMAIL PROTECTED]> wrote:
>
> Could it be you forgot to call filterChain.doFilter(request.response)
> after adding your headers?
>
> En l'instant précis du 04/07/07 14:18, lior grinfeld s'exprimait en ces
> termes:
> > Thanks for the tip, i used filters.
> >
> > now i facing other problem. if I use filter with request to static
> > content (
> > i did not write servlet for it , i want the defaultServlet to handle
it)
> > for some reason i do not get the content, it looks like the
> > defaultServlet
> > is doing nothing now, without filter it return the file i ask, with
> > filter
> > just the data the filter added.
> > any ideas?
> >
> > 10X
> > Lior
> >
> > On 7/4/07, David Delbecq <[EMAIL PROTECTED]> wrote:
> >>
> >> Either map to '/*' your custom servlet that returning the static
> content
> >> with your custom headers, either write a servletfilter that add
> >> additional header before processing request.
> >>
> >> En l'instant précis du 04/07/07 09:52, lior grinfeld s'exprimait en
ces
> >> termes:
> >> > Hi,
> >> >
> >> > i am new at using tomcat.
> >> > I want to use tomcat as a server to test our proxy. to do that i
> >> need to
> >> > manipulate the response headers, i did that without problems using
> >> > servlets.
> >> > now i want to manipulate the http response headers or content of
> >> requests
> >> > for static content.
> >> > Ex. if i will do "GET myServer/somefile.txt" the tomcat will know
to
> >> > return
> >> > the file and manipulate the response http headers as i want, or to
do
> >> > zip or
> >> > to do chunks on the content.
> >> > is it possible and how? where can i configure tomcat to refer to
the
> >> > directory where all my files are stored?
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To start a new topic, e-mail: users@tomcat.apache.org
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


--

Regards
Lior Grinfeld




--
"Mon horizon était désormais les pétales courbés,
Ma nouvelle demeure resplendissait de flèches d'herbes folles
Et d'oreillers de pollens odorants."

(Naïmah, le philosophe Fémereif)

Reply via email to