I want to specify 2 url patterns for that same servlet, but not able to do so. <servlet-mapping> <servlet-name>HtmlFilter</servlet-name> <url-pattern>/html/*</url-pattern> <url-pattern>/HtmlFilter</url-pattern> </servlet-mapping>
But, it is taking request only for /HtmlFilter, but not for /html/*. Do i need to give two servlet-mapping and two declarations for servlet using <servlet>. Please tell.
Duc Vo
Ranch Hand
Joined: Nov 20, 2008
Posts: 254
posted
0
You'll need to declare two servlet-mapping tags i.e.
“Everything should be as simple as it is, but not simpler.” Albert Einstein
Duc Vo
Ranch Hand
Joined: Nov 20, 2008
Posts: 254
posted
0
Also, why is your servlet named "filter" but it is not a Filter?
I specified many url-patterns, but it took only one.When i wrote multiple servlet-mappings ,then it worked. Seems like we can not write multiple url-pattern in same servlet-mapping
Originally posted by vijay dadhwal: yes, you can provide as many as mapping you want for a servlet mapping can be done in single mapping block like this
Vijay (SCJP)
This is true, but only in Servlet Spec 2.5 and up. Look at SRV.S.19 (Changes from Servlet 2.4):
SRV.19.0.3 Multiple Occurrences of Servlet Mappings Previous versions of the servlet schema allows only a single url-pattern or servlet name per servlet mapping. For servlets mapped to multiple URLs this results in needless repetition of whole mapping clauses. The deployment descriptor servlet-mappingType was updated to:
So.. If you're writing for containers that don't support the 2.5 spec, you'll need to create multiple servlet-mapping entries. [ December 16, 2008: Message edited by: Ben Souther ]