{"action":"created","issue":{"url":"https://api.github.com/repos/javaee/servlet-spec/issues/52","repository_url":"https://api.github.com/repos/javaee/servlet-spec","labels_url":"https://api.github.com/repos/javaee/servlet-spec/issues/52/labels{/name}","comments_url":"https://api.github.com/repos/javaee/servlet-spec/issues/52/comments","events_url":"https://api.github.com/repos/javaee/servlet-spec/issues/52/events","html_url":"https://github.com/javaee/servlet-spec/issues/52","id":224353405,"node_id":"MDU6SXNzdWUyMjQzNTM0MDU=","number":52,"title":"Clarify behaviour when the same filter is matched by several filter-mapping elements","user":{"login":"glassfishrobot","id":6104758,"node_id":"MDQ6VXNlcjYxMDQ3NTg=","avatar_url":"https://avatars0.githubusercontent.com/u/6104758?v=4","gravatar_id":"","url":"https://api.github.com/users/glassfishrobot","html_url":"https://github.com/glassfishrobot","followers_url":"https://api.github.com/users/glassfishrobot/followers","following_url":"https://api.github.com/users/glassfishrobot/following{/other_user}","gists_url":"https://api.github.com/users/glassfishrobot/gists{/gist_id}","starred_url":"https://api.github.com/users/glassfishrobot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glassfishrobot/subscriptions","organizations_url":"https://api.github.com/users/glassfishrobot/orgs","repos_url":"https://api.github.com/users/glassfishrobot/repos","events_url":"https://api.github.com/users/glassfishrobot/events{/privacy}","received_events_url":"https://api.github.com/users/glassfishrobot/received_events","type":"User","site_admin":false},"labels":[{"id":592137038,"node_id":"MDU6TGFiZWw1OTIxMzcwMzg=","url":"https://api.github.com/repos/javaee/servlet-spec/labels/Component:%20Filter/Servlet","name":"Component: Filter/Servlet","color":"d932ff","default":false},{"id":592137004,"node_id":"MDU6TGFiZWw1OTIxMzcwMDQ=","url":"https://api.github.com/repos/javaee/servlet-spec/labels/Priority:%20Major","name":"Priority: Major","color":"969ef7","default":false},{"id":592137005,"node_id":"MDU6TGFiZWw1OTIxMzcwMDU=","url":"https://api.github.com/repos/javaee/servlet-spec/labels/Type:%20Improvement","name":"Type: Improvement","color":"acf9a4","default":false}],"state":"open","locked":false,"assignee":{"login":"shingwaichan","id":24552480,"node_id":"MDQ6VXNlcjI0NTUyNDgw","avatar_url":"https://avatars1.githubusercontent.com/u/24552480?v=4","gravatar_id":"","url":"https://api.github.com/users/shingwaichan","html_url":"https://github.com/shingwaichan","followers_url":"https://api.github.com/users/shingwaichan/followers","following_url":"https://api.github.com/users/shingwaichan/following{/other_user}","gists_url":"https://api.github.com/users/shingwaichan/gists{/gist_id}","starred_url":"https://api.github.com/users/shingwaichan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shingwaichan/subscriptions","organizations_url":"https://api.github.com/users/shingwaichan/orgs","repos_url":"https://api.github.com/users/shingwaichan/repos","events_url":"https://api.github.com/users/shingwaichan/events{/privacy}","received_events_url":"https://api.github.com/users/shingwaichan/received_events","type":"User","site_admin":false},"assignees":[{"login":"shingwaichan","id":24552480,"node_id":"MDQ6VXNlcjI0NTUyNDgw","avatar_url":"https://avatars1.githubusercontent.com/u/24552480?v=4","gravatar_id":"","url":"https://api.github.com/users/shingwaichan","html_url":"https://github.com/shingwaichan","followers_url":"https://api.github.com/users/shingwaichan/followers","following_url":"https://api.github.com/users/shingwaichan/following{/other_user}","gists_url":"https://api.github.com/users/shingwaichan/gists{/gist_id}","starred_url":"https://api.github.com/users/shingwaichan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shingwaichan/subscriptions","organizations_url":"https://api.github.com/users/shingwaichan/orgs","repos_url":"https://api.github.com/users/shingwaichan/repos","events_url":"https://api.github.com/users/shingwaichan/events{/privacy}","received_events_url":"https://api.github.com/users/shingwaichan/received_events","type":"User","site_admin":false}],"milestone":null,"comments":3,"created_at":"2013-01-07T03:34:17Z","updated_at":"2018-06-06T07:48:56Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"The chapter 6.2.4 Configuration of Filters in a Web Application defines how a container builds the chain of filters to be applied to a particular request URI.\n\nMy question is what should happen if there are several matching filter-mappings for the same filter (either by different <url-pattern>s, or by an <url-pattern> and a <servlet-name>):\nwhether\na) the filter has to be called several times, as many as how many matching <filter-mapping>s are there.\nor\nb) the filter has to be called only once, honoring the first filter-mapping that matches,\n\nAn example:\n\n<filter-mapping>\n<filter-name>filterA</filter-name>\n<url-pattern>/view/*</url-pattern>\n<url-pattern>*.do</url-pattern>\n</filter-mapping>\n\nIf the requested URI is \"/view/bar.do\", does the filter have to be called twice?\n\nMy own reading is that \"a)\" (multiple calls) is what is implied by that chapter, but I would like this to be mentioned explicitly.\n\nIf actually the requirement is \"b)\" (single call), then I would like someone to clarify what mapping takes priority when there is both an url-pattern and a servlet-name match. As the servlet-name mappings are processed first, it seems that the servlet-name mapping wins, but it is confusing as those filters are positioned later in the resulting filter chain than the ones mapped by url-patterns.\n\nIn Tomcat 7 the \"b)\" behaviour was implemented but with url-patterns having the priority, stemming from the following issue:\n[https://issues.apache.org/bugzilla/show_bug.cgi?id=49922](https://issues.apache.org/bugzilla/show_bug.cgi?id=49922)"},"comment":{"url":"https://api.github.com/repos/javaee/servlet-spec/issues/comments/394974737","html_url":"https://github.com/javaee/servlet-spec/issues/52#issuecomment-394974737","issue_url":"https://api.github.com/repos/javaee/servlet-spec/issues/52","id":394974737,"node_id":"MDEyOklzc3VlQ29tbWVudDM5NDk3NDczNw==","user":{"login":"glassfishrobot","id":6104758,"node_id":"MDQ6VXNlcjYxMDQ3NTg=","avatar_url":"https://avatars0.githubusercontent.com/u/6104758?v=4","gravatar_id":"","url":"https://api.github.com/users/glassfishrobot","html_url":"https://github.com/glassfishrobot","followers_url":"https://api.github.com/users/glassfishrobot/followers","following_url":"https://api.github.com/users/glassfishrobot/following{/other_user}","gists_url":"https://api.github.com/users/glassfishrobot/gists{/gist_id}","starred_url":"https://api.github.com/users/glassfishrobot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glassfishrobot/subscriptions","organizations_url":"https://api.github.com/users/glassfishrobot/orgs","repos_url":"https://api.github.com/users/glassfishrobot/repos","events_url":"https://api.github.com/users/glassfishrobot/events{/privacy}","received_events_url":"https://api.github.com/users/glassfishrobot/received_events","type":"User","site_admin":false},"created_at":"2018-06-06T07:48:56Z","updated_at":"2018-06-06T07:48:56Z","author_association":"CONTRIBUTOR","body":"**Closing this as this issue is migrated to** https://github.com/eclipse-ee4j/servlet-api/issues/52"}}
{"actor":{"display_login":"glassfishrobot"}}