I guess this is because the mechanism of url-pattern match
I remember that ,container will match the url for longest possible matching
first, then try to match the .suffix pattern.
If this is true ,then the answer could be explained.
First a path Recipes/HopsList.do
the container go through the filters for Recipes/HopsList
find 1, 5, maching(The order is in dd)
then for suffix mapping , find 2 .
But this is my own assumption. Hope somebody to clarify this .