RE: filter jsp:include servletPath?

2002-12-12 Thread Turoff, Steve
Aaron,

I am interested in doing the same thing. Can you post the filter and taglib?

Thanks,

STeve

 -Original Message-
 From: AAron nAAs [mailto:[EMAIL PROTECTED]]
 Sent: Thursday, November 28, 2002 11:45 AM
 To: [EMAIL PROTECTED]
 Subject: Re: filter jsp:include servletPath?
 
 
 Due to the complexity of the question and probably vendor 
 specific-ness of 
 the answer, I've altered course and solved the problem.
 
 I wrote my own small taglib to implement the jsp:include 
 functionality. I 
 just need to change the jsp:include page=/include.html/ tags into 
 mylib:include page=/include.html/
 
 I'm still interested in knowing if a jsp:include intercept is 
 possible, but 
 I'm not waiting for the answer anymore. If there are any die hard 
 coders/detail-ists out there, let me know if it's even 
 possible without 
 modifying Tomcat itself.
 
 -AAron
 
 From: AAron nAAs [EMAIL PROTECTED]
 Reply-To: Tomcat Users List [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Subject: filter jsp:include servletPath?
 Date: Wed, 27 Nov 2002 22:43:28 -0500
 
 Hi all,
 
 This is more clarification about my attempts to 
 automatically intercept and 
 modify a .jsp request's servletPath as well as all the embedded 
 jsp:include files.
 
 Examples:
 http://blah.com/index.jsp would run approot/blah/index.jsp or 
 approot/default/index.jsp based on which was first found to exist.
 jsp:include page=/include.html/ would use 
 approot/blah/include.html 
 or approot/default/include.html based on which was first 
 found to exist.
 
 I'm choosing a directory for the requested .jsp file based 
 on the hostname 
 specified in the request. I've gotten that to work perfectly 
 by adding a 
 filter to my web.xml file, and wrapping the request object 
 before passing 
 on to the next doFilter(). By overriding the request 
 getServletPath() I can 
 change the servlet or JSP file that gets invoked.
 
 Now I want the jsp:include files to also use an alternate 
 directory. So 
 refering to /myfile.jsp in the include would be 
 intercepted and changed 
 to another directory based on the hostname in the original request.
 
 Another view is that I'm creating a path to search through 
 to find the 
 requested (or included) file. If the requested file isn't 
 found in the 
 alternate expected directory, it checks in the default 
 directory which will 
 always have the file for request (or include).
 
 The code shows that once the request is filtered, all the 
 jsp:include's are 
 not.
 
 Private method ApplicationDispatcher.invoke() says:
  * IMPLEMENTATION NOTE: This implementation assumes
  * that no filters are applied to a forwarded or 
 included resource,
  * because they were already done for the original request.
 
 Anyway, I'll let you read my original post below for more 
 details on what 
 I've found.
 
 BTW, I've searched long and hard for anyone doing this sort 
 of thing. But, 
 I'm certainly open to the embarassment of Oh, just do this 
 if I've missed 
 the obvious :-)
 
 Thanks,
 -AAron
 
 My original post:
 
 I'm trying to intercept a jsp:include so that I can adjust 
 the requested 
 file (ie: /include.html) to a different directory/file (ie: 
 /otherdir/otherfile.html). If there is an easy way (Filter, Valve, 
 Listener, ...) just let me know. NOTE: I've already created 
 and installed a 
 request filter in my web.xml to filter the initial request, but this 
 doesn't get invoked for jsp:include references.
 
 Current idea:
 I want to change the javax.servlet.include.servlet_path 
 request attribute 
 so the DefaultServlet.getRelativePath() finds the new file. 
 I can see that 
 the ApplicationDispatcher fires off a list of 
 InstanceEvent's before the 
 DefaultServlet.service() is called.
 
 After days of exploration, I can't figure out how to add to get my 
 InstanceEvent into the InstanceSupport's list (ie: cause a 
 call to the 
 support.addInstanceListener). Is there a configuration that 
 will add my 
 class to my application Context?
 
 Thanks,
 -AAron ([EMAIL PROTECTED])
 
 
 _
 The new MSN 8: smart spam protection and 2 months FREE*  
 http://join.msn.com/?page=features/junkmail
 
 
 --
 To unsubscribe, e-mail:   
 mailto:[EMAIL PROTECTED]
 For additional commands, e-mail: 
 mailto:[EMAIL PROTECTED]
 
 
 _
 The new MSN 8: smart spam protection and 2 months FREE*  
 http://join.msn.com/?page=features/junkmail
 
 
 --
 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]




RE: filter jsp:include servletPath?

2002-12-02 Thread Cox, Charlie
no, filters are only applied on the original request.

Charlie

 -Original Message-
 From: AAron nAAs [mailto:[EMAIL PROTECTED]]
 Sent: Thursday, November 28, 2002 12:45 PM
 To: [EMAIL PROTECTED]
 Subject: Re: filter jsp:include servletPath?
 
 
 Due to the complexity of the question and probably vendor 
 specific-ness of 
 the answer, I've altered course and solved the problem.
 
 I wrote my own small taglib to implement the jsp:include 
 functionality. I 
 just need to change the jsp:include page=/include.html/ tags into 
 mylib:include page=/include.html/
 
 I'm still interested in knowing if a jsp:include intercept is 
 possible, but 
 I'm not waiting for the answer anymore. If there are any die hard 
 coders/detail-ists out there, let me know if it's even 
 possible without 
 modifying Tomcat itself.
 
 -AAron
 
 From: AAron nAAs [EMAIL PROTECTED]
 Reply-To: Tomcat Users List [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Subject: filter jsp:include servletPath?
 Date: Wed, 27 Nov 2002 22:43:28 -0500
 
 Hi all,
 
 This is more clarification about my attempts to 
 automatically intercept and 
 modify a .jsp request's servletPath as well as all the embedded 
 jsp:include files.
 
 Examples:
 http://blah.com/index.jsp would run approot/blah/index.jsp or 
 approot/default/index.jsp based on which was first found to exist.
 jsp:include page=/include.html/ would use 
 approot/blah/include.html 
 or approot/default/include.html based on which was first 
 found to exist.
 
 I'm choosing a directory for the requested .jsp file based 
 on the hostname 
 specified in the request. I've gotten that to work perfectly 
 by adding a 
 filter to my web.xml file, and wrapping the request object 
 before passing 
 on to the next doFilter(). By overriding the request 
 getServletPath() I can 
 change the servlet or JSP file that gets invoked.
 
 Now I want the jsp:include files to also use an alternate 
 directory. So 
 refering to /myfile.jsp in the include would be 
 intercepted and changed 
 to another directory based on the hostname in the original request.
 
 Another view is that I'm creating a path to search through 
 to find the 
 requested (or included) file. If the requested file isn't 
 found in the 
 alternate expected directory, it checks in the default 
 directory which will 
 always have the file for request (or include).
 
 The code shows that once the request is filtered, all the 
 jsp:include's are 
 not.
 
 Private method ApplicationDispatcher.invoke() says:
  * IMPLEMENTATION NOTE: This implementation assumes
  * that no filters are applied to a forwarded or 
 included resource,
  * because they were already done for the original request.
 
 Anyway, I'll let you read my original post below for more 
 details on what 
 I've found.
 
 BTW, I've searched long and hard for anyone doing this sort 
 of thing. But, 
 I'm certainly open to the embarassment of Oh, just do this 
 if I've missed 
 the obvious :-)
 
 Thanks,
 -AAron
 
 My original post:
 
 I'm trying to intercept a jsp:include so that I can adjust 
 the requested 
 file (ie: /include.html) to a different directory/file (ie: 
 /otherdir/otherfile.html). If there is an easy way (Filter, Valve, 
 Listener, ...) just let me know. NOTE: I've already created 
 and installed a 
 request filter in my web.xml to filter the initial request, but this 
 doesn't get invoked for jsp:include references.
 
 Current idea:
 I want to change the javax.servlet.include.servlet_path 
 request attribute 
 so the DefaultServlet.getRelativePath() finds the new file. 
 I can see that 
 the ApplicationDispatcher fires off a list of 
 InstanceEvent's before the 
 DefaultServlet.service() is called.
 
 After days of exploration, I can't figure out how to add to get my 
 InstanceEvent into the InstanceSupport's list (ie: cause a 
 call to the 
 support.addInstanceListener). Is there a configuration that 
 will add my 
 class to my application Context?
 
 Thanks,
 -AAron ([EMAIL PROTECTED])
 
 
 _
 The new MSN 8: smart spam protection and 2 months FREE*  
 http://join.msn.com/?page=features/junkmail
 
 
 --
 To unsubscribe, e-mail:   
 mailto:[EMAIL PROTECTED]
 For additional commands, e-mail: 
 mailto:[EMAIL PROTECTED]
 
 
 _
 The new MSN 8: smart spam protection and 2 months FREE*  
 http://join.msn.com/?page=features/junkmail
 
 
 --
 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]




RE: filter jsp:include servletPath?

2002-12-02 Thread AAron nAAs
FYI, through more digging in google groups, I found out that the Java Server 
spec is vague on this issue. The new Java Server spec is going to explicitly 
allow two options. The default option will be that only the initial request 
is filtered. The other option will filter includes and forwards as well.

-AAron

From: Cox, Charlie [EMAIL PROTECTED]
Reply-To: Tomcat Users List [EMAIL PROTECTED]
To: 'Tomcat Users List' [EMAIL PROTECTED]
Subject: RE: filter jsp:include servletPath?
Date: Mon, 2 Dec 2002 07:50:48 -0500

no, filters are only applied on the original request.

Charlie

 -Original Message-
 From: AAron nAAs [mailto:[EMAIL PROTECTED]]
 Sent: Thursday, November 28, 2002 12:45 PM
 To: [EMAIL PROTECTED]
 Subject: Re: filter jsp:include servletPath?


 Due to the complexity of the question and probably vendor
 specific-ness of
 the answer, I've altered course and solved the problem.

 I wrote my own small taglib to implement the jsp:include
 functionality. I
 just need to change the jsp:include page=/include.html/ tags into
 mylib:include page=/include.html/

 I'm still interested in knowing if a jsp:include intercept is
 possible, but
 I'm not waiting for the answer anymore. If there are any die hard
 coders/detail-ists out there, let me know if it's even
 possible without
 modifying Tomcat itself.

 -AAron

 From: AAron nAAs [EMAIL PROTECTED]
 Reply-To: Tomcat Users List [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Subject: filter jsp:include servletPath?
 Date: Wed, 27 Nov 2002 22:43:28 -0500
 
 Hi all,
 
 This is more clarification about my attempts to
 automatically intercept and
 modify a .jsp request's servletPath as well as all the embedded
 jsp:include files.
 
 Examples:
 http://blah.com/index.jsp would run approot/blah/index.jsp or
 approot/default/index.jsp based on which was first found to exist.
 jsp:include page=/include.html/ would use
 approot/blah/include.html
 or approot/default/include.html based on which was first
 found to exist.
 
 I'm choosing a directory for the requested .jsp file based
 on the hostname
 specified in the request. I've gotten that to work perfectly
 by adding a
 filter to my web.xml file, and wrapping the request object
 before passing
 on to the next doFilter(). By overriding the request
 getServletPath() I can
 change the servlet or JSP file that gets invoked.
 
 Now I want the jsp:include files to also use an alternate
 directory. So
 refering to /myfile.jsp in the include would be
 intercepted and changed
 to another directory based on the hostname in the original request.
 
 Another view is that I'm creating a path to search through
 to find the
 requested (or included) file. If the requested file isn't
 found in the
 alternate expected directory, it checks in the default
 directory which will
 always have the file for request (or include).
 
 The code shows that once the request is filtered, all the
 jsp:include's are
 not.
 
 Private method ApplicationDispatcher.invoke() says:
  * IMPLEMENTATION NOTE: This implementation assumes
  * that no filters are applied to a forwarded or
 included resource,
  * because they were already done for the original request.
 
 Anyway, I'll let you read my original post below for more
 details on what
 I've found.
 
 BTW, I've searched long and hard for anyone doing this sort
 of thing. But,
 I'm certainly open to the embarassment of Oh, just do this
 if I've missed
 the obvious :-)
 
 Thanks,
 -AAron
 
 My original post:
 
 I'm trying to intercept a jsp:include so that I can adjust
 the requested
 file (ie: /include.html) to a different directory/file (ie:
 /otherdir/otherfile.html). If there is an easy way (Filter, Valve,
 Listener, ...) just let me know. NOTE: I've already created
 and installed a
 request filter in my web.xml to filter the initial request, but this
 doesn't get invoked for jsp:include references.
 
 Current idea:
 I want to change the javax.servlet.include.servlet_path
 request attribute
 so the DefaultServlet.getRelativePath() finds the new file.
 I can see that
 the ApplicationDispatcher fires off a list of
 InstanceEvent's before the
 DefaultServlet.service() is called.
 
 After days of exploration, I can't figure out how to add to get my
 InstanceEvent into the InstanceSupport's list (ie: cause a
 call to the
 support.addInstanceListener). Is there a configuration that
 will add my
 class to my application Context?
 
 Thanks,
 -AAron ([EMAIL PROTECTED])
 
 
 _
 The new MSN 8: smart spam protection and 2 months FREE*
 http://join.msn.com/?page=features/junkmail
 
 
 --
 To unsubscribe, e-mail:
 mailto:[EMAIL PROTECTED]
 For additional commands, e-mail:
 mailto:[EMAIL PROTECTED]


 _
 The new MSN 8: smart spam protection and 2 months FREE*
 http://join.msn.com/?page=features/junkmail


 --
 To unsubscribe, e-mail:
mailto:[EMAIL PROTECTED]
For additional

Re: filter jsp:include servletPath?

2002-11-28 Thread AAron nAAs
Due to the complexity of the question and probably vendor specific-ness of 
the answer, I've altered course and solved the problem.

I wrote my own small taglib to implement the jsp:include functionality. I 
just need to change the jsp:include page=/include.html/ tags into 
mylib:include page=/include.html/

I'm still interested in knowing if a jsp:include intercept is possible, but 
I'm not waiting for the answer anymore. If there are any die hard 
coders/detail-ists out there, let me know if it's even possible without 
modifying Tomcat itself.

-AAron

From: AAron nAAs [EMAIL PROTECTED]
Reply-To: Tomcat Users List [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: filter jsp:include servletPath?
Date: Wed, 27 Nov 2002 22:43:28 -0500

Hi all,

This is more clarification about my attempts to automatically intercept and 
modify a .jsp request's servletPath as well as all the embedded 
jsp:include files.

Examples:
http://blah.com/index.jsp would run approot/blah/index.jsp or 
approot/default/index.jsp based on which was first found to exist.
jsp:include page=/include.html/ would use approot/blah/include.html 
or approot/default/include.html based on which was first found to exist.

I'm choosing a directory for the requested .jsp file based on the hostname 
specified in the request. I've gotten that to work perfectly by adding a 
filter to my web.xml file, and wrapping the request object before passing 
on to the next doFilter(). By overriding the request getServletPath() I can 
change the servlet or JSP file that gets invoked.

Now I want the jsp:include files to also use an alternate directory. So 
refering to /myfile.jsp in the include would be intercepted and changed 
to another directory based on the hostname in the original request.

Another view is that I'm creating a path to search through to find the 
requested (or included) file. If the requested file isn't found in the 
alternate expected directory, it checks in the default directory which will 
always have the file for request (or include).

The code shows that once the request is filtered, all the jsp:include's are 
not.

Private method ApplicationDispatcher.invoke() says:
* IMPLEMENTATION NOTE: This implementation assumes
* that no filters are applied to a forwarded or included resource,
* because they were already done for the original request.

Anyway, I'll let you read my original post below for more details on what 
I've found.

BTW, I've searched long and hard for anyone doing this sort of thing. But, 
I'm certainly open to the embarassment of Oh, just do this if I've missed 
the obvious :-)

Thanks,
-AAron

My original post:

I'm trying to intercept a jsp:include so that I can adjust the requested 
file (ie: /include.html) to a different directory/file (ie: 
/otherdir/otherfile.html). If there is an easy way (Filter, Valve, 
Listener, ...) just let me know. NOTE: I've already created and installed a 
request filter in my web.xml to filter the initial request, but this 
doesn't get invoked for jsp:include references.

Current idea:
I want to change the javax.servlet.include.servlet_path request attribute 
so the DefaultServlet.getRelativePath() finds the new file. I can see that 
the ApplicationDispatcher fires off a list of InstanceEvent's before the 
DefaultServlet.service() is called.

After days of exploration, I can't figure out how to add to get my 
InstanceEvent into the InstanceSupport's list (ie: cause a call to the 
support.addInstanceListener). Is there a configuration that will add my 
class to my application Context?

Thanks,
-AAron ([EMAIL PROTECTED])


_
The new MSN 8: smart spam protection and 2 months FREE*  
http://join.msn.com/?page=features/junkmail


--
To unsubscribe, e-mail:   
mailto:[EMAIL PROTECTED]
For additional commands, e-mail: 
mailto:[EMAIL PROTECTED]


_
The new MSN 8: smart spam protection and 2 months FREE*  
http://join.msn.com/?page=features/junkmail


--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]