URL patterns use an extremely simple syntax. Every character in a pattern must match the corresponding character in the URL path exactly, with two exceptions. At the end of a pattern, /* matches any sequence of characters from that point forward. The pattern *.extension matches any file name ending with extension. No other wildcards are supported, and an asterisk at any other position in the pattern is not a wildcard.
First, the container prefers an exact path match over a wildcard path match. Second, the container prefers to match the longest pattern. Third, the container prefers path matches over filetype matches. Finally, the pattern <url-pattern>/</url-pattern> always matches any request that no other pattern matches
F. Scharffe, and D. Fensel. Proc. 16th International Conference, EKAW 2008, Acitrezza, Italy, volume 5268 of Lecture Notes in Computer Science, page 83-92. Springer, (2008)
M. Hetland, and P. Saetrom. Proceedings of the 4th International Conference on
Recent Advances in Soft Computing, page 182--188. Nottingham, United Kingdom, The Nottingham Trent University, (12-13 December 2002)