title: In Tomee cxf is intercepting calls to struts - how can I stop requests to struts URLs being intercepted?
body: <p>Our application was previously running in Tomee 1.5.2 and it worked fine.
  It has a mix of some legacy struts code (referenced by URLs ending in .do), some new JSF code and some jax-rs Restful services.</p>
  
  <p>What I am getting is a 404 not found for the struts URL.</p>
  
  <p>I updated to Tomee 1.7.2 Plus, and so have the CXF version 2.6.16 jaxrs libs. Now when I try to access a struts URL, the CXF code intercepts that URL and can't match it to anything and so throws an exception.</p>
  
  <p>Is there any way to specify which paths CXF will intercept?
  (We don't use spring, so all the cxf docs that mention spring are of no use)</p>
  
  <p>The version of struts is 1.2.9.
  The web.xml is below.</p>
  
  <p>This is my web.xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
      &lt;web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"&gt;
  
  
      &lt;filter-mapping&gt;
          &lt;filter-name&gt;EncodingRequestFilter&lt;/filter-name&gt;
          &lt;url-pattern&gt;*.do&lt;/url-pattern&gt;
      &lt;/filter-mapping&gt;
  
      &lt;filter-mapping&gt;
          &lt;filter-name&gt;PrimeFaces FileUpload Filter&lt;/filter-name&gt;
          &lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
      &lt;/filter-mapping&gt;
  
      &lt;session-config&gt;
          &lt;session-timeout&gt;60&lt;/session-timeout&gt;
      &lt;/session-config&gt;
  
      &lt;context-param&gt;
          &lt;param-name&gt;primefaces.THEME&lt;/param-name&gt;
          &lt;param-value&gt;rmt_theme&lt;/param-value&gt;
      &lt;/context-param&gt;
  
       .....
  
      &lt;servlet&gt;
          &lt;servlet-name&gt;action&lt;/servlet-name&gt;
          &lt;servlet-class&gt;org.apache.struts.action.ActionServlet&lt;/servlet-class&gt;
          &lt;init-param&gt;
              &lt;param-name&gt;debug&lt;/param-name&gt;
              &lt;param-value&gt;2&lt;/param-value&gt;
  
          &lt;/init-param&gt;
          &lt;init-param&gt;
              &lt;param-name&gt;config&lt;/param-name&gt;
              &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/param-value&gt;
  
          &lt;/init-param&gt;
          &lt;load-on-startup&gt;2&lt;/load-on-startup&gt;
  
      &lt;/servlet&gt;
  
      &lt;servlet&gt;
          &lt;servlet-name&gt;Faces Servlet&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-mapping&gt;
          &lt;servlet-name&gt;action&lt;/servlet-name&gt;
          &lt;url-pattern&gt;*.do&lt;/url-pattern&gt;
      &lt;/servlet-mapping&gt;
  
      &lt;servlet-mapping&gt;
          &lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
          &lt;url-pattern&gt;*.jsf&lt;/url-pattern&gt;
          &lt;url-pattern&gt;/faces/*&lt;/url-pattern&gt;
      &lt;/servlet-mapping&gt;
  
      ... a lot of servlet mappings
  
      &lt;mime-mapping&gt;
      ...a whole lot of mime mappings deleted here for readability.
      ... 
  
  
      ...
  
      &lt;welcome-file-list&gt;
          &lt;welcome-file&gt;index.jsf&lt;/welcome-file&gt;
      &lt;/welcome-file-list&gt;
  &lt;/web-app&gt;
  </code></pre>
  
  <p>This is the logs with the FINE level activated.</p>
  
  <pre><code>    Sep 09, 2015 2:59:43 PM org.apache.cxf.transport.http.AbstractHTTPDestination invoke
      FINE: Create a new message for processing
      Sep 09, 2015 2:59:43 PM org.apache.cxf.transport.http.Headers copyFromRequest
      FINE: Request Headers: {Accept=[text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8], accept-encoding=[gzip, deflate, sdch], accept-language=[en,es;q=0.8,en-GB;q=0.6,en-US;q=0.4,es-419;q=0.2], cache-control=[no-cache], connection=[keep-alive], Content-Type=[null], cookie=[treeOpenStatex-userStockSites=; JSESSIONID=9303FA8BA796D5C8E224C9AC546675BA; jpreLoader=loaded; primefaces.download=true; oam.Flash.RENDERMAP.TOKEN=-6lb69gdo9], host=[localhost:8080], pragma=[no-cache], referer=[http://localhost:8080/chemalert/], upgrade-insecure-requests=[1], user-agent=[Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36]}
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain add
      FINE: Adding interceptor org.apache.cxf.transport.https.CertConstraintsInterceptor@34848be9 to phase pre-stream
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain outputChainToLog
      FINE: Chain org.apache.cxf.phase.PhaseInterceptorChain@7351c0b4 was created. Current flow:
        receive [PolicyInInterceptor, SaajInFaultInterceptor]
        pre-stream [CertConstraintsInterceptor]
        unmarshal [JAXRSInInterceptor]
        pre-logical [OneWayProcessorInterceptor]
        invoke [ServiceInvokerInterceptor]
        post-invoke [SaajInInterceptor, OutgoingChainInterceptor]
  
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.ws.policy.PolicyInInterceptor@35ca0cf
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.openejb.server.cxf.client.SaajInFaultInterceptor@121fe3c8
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.transport.https.CertConstraintsInterceptor@34848be9
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor@3239ff45
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: Trying to select a resource class, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.AdminResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.QueryResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.BasicTagRepositoryResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.InfoResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.FilterRepositoryResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.SessionResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.StatisticsResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for au.com.blah.analytics.web.rest.PredefinedQueryResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.DataSourceResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.ExporterResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.OlapDiscoverResource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.BasicRepositoryResource2, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.utils.JAXRSUtils selectResourceClass
      FINE: No resource class match for org.saiku.web.rest.resources.Query2Resource, request path : /admin/adminHome.do
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor processRequest
      WARNING: No root resource matching request path /chemalert/admin/adminHome.do has been found, Relative Path: /admin/adminHome.do. Please enable FINE/TRACE log level for more details.
      Sep 09, 2015 2:59:43 PM org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper toResponse
      WARNING: javax.ws.rs.WebApplicationException
          at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:162)
          at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:91)
          at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
          at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
          at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:240)
          at org.apache.openejb.server.cxf.rs.CxfRsHttpListener.doInvoke(CxfRsHttpListener.java:227)
          at org.apache.tomee.webservices.CXFJAXRSFilter.doFilter(CXFJAXRSFilter.java:94)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
          at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
          at au.com.blah.web.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:29)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
          at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44)
          at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)
          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
          at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
          at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
          at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
          at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
          at java.lang.Thread.run(Thread.java:745)
  
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.interceptor.OneWayProcessorInterceptor@5fd546d4
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.interceptor.ServiceInvokerInterceptor@74a3639c
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.openejb.server.cxf.client.SaajInInterceptor@6dbba9fa
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.interceptor.OutgoingChainInterceptor@6f91c6a5
      Sep 09, 2015 2:59:43 PM org.apache.cxf.interceptor.OutgoingChainInterceptor getChain
      FINE: Interceptors contributed by bus: [org.apache.cxf.ws.policy.PolicyOutInterceptor@6cad111a, org.apache.openejb.server.cxf.client.SaajOutInterceptor@9bc91f]
      Sep 09, 2015 2:59:43 PM org.apache.cxf.interceptor.OutgoingChainInterceptor getChain
      FINE: Interceptors contributed by service: []
      Sep 09, 2015 2:59:43 PM org.apache.cxf.interceptor.OutgoingChainInterceptor getChain
      FINE: Interceptors contributed by endpoint: [org.apache.cxf.interceptor.MessageSenderInterceptor@73183b04]
      Sep 09, 2015 2:59:43 PM org.apache.cxf.interceptor.OutgoingChainInterceptor getChain
      FINE: Interceptors contributed by binding: [org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor@343caabe]
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain outputChainToLog
      FINE: Chain org.apache.cxf.phase.PhaseInterceptorChain@5173e983 was created. Current flow:
        setup [PolicyOutInterceptor, SaajOutInterceptor]
        prepare-send [MessageSenderInterceptor]
        marshal [JAXRSOutInterceptor]
  
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.ws.policy.PolicyOutInterceptor@6cad111a
      Sep 09, 2015 2:59:43 PM org.apache.cxf.ws.policy.PolicyOutInterceptor handle
      FINE: No binding operation info.
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.openejb.server.cxf.client.SaajOutInterceptor@9bc91f
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.interceptor.MessageSenderInterceptor@73183b04
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain add
      FINE: Adding interceptor org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor@575a516b to phase prepare-send-ending
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain outputChainToLog
      FINE: Chain org.apache.cxf.phase.PhaseInterceptorChain@5173e983 was modified. Current flow:
        setup [PolicyOutInterceptor, SaajOutInterceptor]
        prepare-send [MessageSenderInterceptor]
        marshal [JAXRSOutInterceptor]
        prepare-send-ending [MessageSenderEndingInterceptor]
  
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor@343caabe
      Sep 09, 2015 2:59:43 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
      FINE: Invoking handleMessage on interceptor org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor@575a516b
      Sep 09, 2015 2:59:43 PM org.apache.cxf.ws.addressing.ContextUtils retrieveMAPs
      FINE: retrieving MAPs from context property javax.xml.ws.addressing.context.inbound
      Sep 09, 2015 2:59:43 PM org.apache.cxf.ws.addressing.ContextUtils retrieveMAPs
      FINE: WS-Addressing - failed to retrieve Message Addressing Properties from context
  </code></pre>