On Thu, 4 Apr 2002, Struts-dev Newsgroup wrote:
> Date: Thu, 4 Apr 2002 18:55:01 -0800
> From: Struts-dev Newsgroup <[EMAIL PROTECTED]>
> Reply-To: Struts Developers List <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED]
> Subject: Re: Servlet 2.3 filter
>
> Subject: Re: Servlet 2.3 filter
> From: Bill Wohler <[EMAIL PROTECTED]>
> ===
> "Craig R. McClanahan" <[EMAIL PROTECTED]> writes:
> > - It's commonly necessary to generate slightly different HTML for
> > different user agents, to deal with the inevitable differences.
> > One approach is to build the knowledge of these differences into
> > every tag that renders HTML. A different approach would be to
> > generate some agent-neutral rendering of the output in XML, and then
> > apply an agent-specific transformation in a response wrapper.
>
> Oh yeah, that would be nice. The "different user agents" applies to
> web browsers and phone browsers alike. I currently maintain two
> trees since the HTML and WML is so different. Within the phone side,
> there are large differences in some widgets which I plan to hide in
> custom tags (normally, I keep markup out of tags). However, what you
> suggest would be preferable.
>
> I'm also planning on using filters to do "resource switching" and
> I'm not sure yet how this will work. A given page "foo.jsp" might be
> found in any number of places depending on:
>
> - the variant in use (companyA, companyB, etc.)
> - the user's locale (en_US, etc.)
> - the markup (HTML, WML, etc.)
>
> I was planning on creating a servlet filter which would intercept
> the request with the virtual page (foo.jsp), find the appropriate
> page, and forward the request with the actual page
> (companyA/en_US/HTML/foo.jsp).
>
> Thoughts?
>
One potential gotcha, especially if you like MVC architectures like the
one Struts advocates -- filters are only invoked on the original request,
not on RequestDispatcher.forward() methods. In retrospect, that probably
wasn't the best approach for *our* purposes, but we have to live with it
for now.
> --
> Bill Wohler <[EMAIL PROTECTED]> http://www.newt.com/wohler/ GnuPG ID:610BD9AD
> Maintainer of comp.mail.mh FAQ and mh-e. Vote Libertarian!
> If you're passed on the right, you're in the wrong lane.
>
Craig
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>