title: Declaring custom PDF servlets collides with .xhtml extension
body: <p>I'm trying to implement a custom PDF file servlet (<code>/fileprovider/name?param1=value&amp;param2=otherValue</code>) on a JSF 2 web application, but when declaring it on <code>web.xml</code> the application always adds <code>.xhtml</code> extension to every request. I believe due to the <code>DEFAULT_SUFFIX</code> context-param.</p>
  
  <pre><code>&lt;!-- ... --&gt;
  &lt;context-param&gt;
      &lt;param-name&gt;javax.faces.DEFAULT_SUFFIX&lt;/param-name&gt;
      &lt;param-value&gt;.xhtml&lt;/param-value&gt;
  &lt;/context-param&gt;
  &lt;context-param&gt;
      &lt;param-name&gt;org.omnifaces.FACES_VIEWS_SCAN_PATHS&lt;/param-name&gt;
      &lt;param-value&gt;/*.xhtml&lt;/param-value&gt;
  &lt;/context-param&gt;
  
  &lt;servlet&gt;
      &lt;servlet-name&gt;faces&lt;/servlet-name&gt;
      &lt;servlet-class&gt;javax.faces.webapp.FacesServlet&lt;/servlet-class&gt;
      &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
  &lt;/servlet&gt;
  &lt;servlet&gt;
      &lt;servlet-name&gt;MyPDFServlet&lt;/servlet-name&gt;
      &lt;servlet-class&gt;com.company.servlet.MyPDFServlet&lt;/servlet-class&gt;
  &lt;/servlet&gt;
  &lt;servlet-mapping&gt;
      &lt;servlet-name&gt;MyPDFServlet&lt;/servlet-name&gt;
      &lt;url-pattern&gt;/fileprovider/name&lt;/url-pattern&gt;
  &lt;/servlet-mapping&gt;
  &lt;servlet-mapping&gt;
      &lt;servlet-name&gt;faces&lt;/servlet-name&gt;
      &lt;url-pattern&gt;*.xhtml&lt;/url-pattern&gt;
  &lt;/servlet-mapping&gt;
  &lt;!-- ... --&gt;
  </code></pre>
  
  <p>The exception thrown is:</p>
  
  <blockquote>
    <p>FacesFileNotFoundException: /name.xhtml Not Found in ExternalContext as a Resource</p>
  </blockquote>
  
  <p>So I believe that the path is not mapped correctly, maybe I'm missing something.</p>
  
  <p>Is there any way to specify that I want specific paths to point to custom servlets without adding <code>.xhtml</code> extension?</p>