2014-10-24 4 views
7

Der Tomcat-Server protokolliert die folgende Warnung auf dem Server-Terminal beim Zugriff auf Seiten aus dem Browser nach der Aktualisierung von Tomcat von 8.0.5 auf 8.0.9.0.MonitorFilter :: WARNUNG: Der Monitorfilter muss der erste Filter in der Kette sein

MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
WARNING *********** NetBeans HTTP Monitor ************ 
The request cannot be recorded most likely because the NetBeans HTTP Monitor module is disabled. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 
MonitorFilter::WARNING: the monitor filter must be the first filter in the chain. 

Die entsprechende Software:

  • Frühling 4.0.0 GA
  • Spring Security 3.2.0 GA.
  • JSF 2.2.8-02
  • PrimeFaces 5.1 final
  • PrimeFaces Erweiterung 2.1.0
  • JDK 8u25
  • NetBeans 8.0.1

Die web.xml-Datei:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
     http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> 

    <context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value> 
      /WEB-INF/applicationContext.xml 
      /WEB-INF/spring-security.xml 
     </param-value> 
    </context-param> 

    <context-param> 
     <param-name>javax.faces.FACELETS_LIBRARIES</param-name> 
     <param-value>/WEB-INF/my.taglib.xml</param-value> 
    </context-param> 

    <context-param> 
     <param-name>javax.faces.PROJECT_STAGE</param-name> 
     <param-value>Production</param-value> 
    </context-param> 
    <context-param> 
     <param-name>javax.faces.STATE_SAVING_METHOD</param-name> 
     <param-value>server</param-value> 
    </context-param> 

    <context-param> 
     <param-name>log4jConfigLocation</param-name> 
     <param-value>/WEB-INF/log4j.properties</param-value> 
    </context-param> 
    <context-param> 
     <param-name>log4jExposeWebAppRoot</param-name> 
     <param-value>false</param-value> 
    </context-param> 

    <filter> 
     <filter-name>springSecurityFilterChain</filter-name> 
     <filter-class> 
      org.springframework.web.filter.DelegatingFilterProxy 
     </filter-class> 
    </filter> 
    <filter-mapping> 
     <filter-name>springSecurityFilterChain</filter-name> 
     <url-pattern>/*</url-pattern> 
     <dispatcher>REQUEST</dispatcher> 
     <dispatcher>FORWARD</dispatcher> 
    </filter-mapping> 

    <filter> 
     <filter-name>loginNocacheFilter</filter-name> 
     <filter-class>filter.LoginNocacheFilter</filter-class> 
    </filter> 
    <filter-mapping> 
     <filter-name>loginNocacheFilter</filter-name> 
     <url-pattern>/utility/*</url-pattern> 
    </filter-mapping> 

    <filter> 
     <filter-name>NoCacheFilter</filter-name> 
     <filter-class>filter.NoCacheFilter</filter-class> 
    </filter> 
    <filter-mapping> 
     <filter-name>NoCacheFilter</filter-name> 
     <url-pattern>/admin_side/*</url-pattern> 
    </filter-mapping> 

    <listener> 
     <listener-class> 
      org.springframework.web.context.ContextLoaderListener 
     </listener-class> 
    </listener> 
    <listener> 
     <listener-class> 
      org.springframework.web.context.request.RequestContextListener 
     </listener-class> 
    </listener> 
    <listener> 
     <listener-class> 
      org.springframework.security.web.session.HttpSessionEventPublisher 
     </listener-class> 
    </listener> 
    <listener> 
     <listener-class> 
      org.springframework.web.util.Log4jConfigListener 
     </listener-class> 
    </listener> 

    <filter> 
     <filter-name>PrimeFaces FileUpload Filter</filter-name> 
     <filter-class> 
      org.primefaces.webapp.filter.FileUploadFilter 
     </filter-class> 
    </filter> 
    <filter-mapping> 
     <filter-name>PrimeFaces FileUpload Filter</filter-name> 
     <servlet-name>Faces Servlet</servlet-name> 
    </filter-mapping> 

    <servlet> 
     <servlet-name>Faces Servlet</servlet-name> 
     <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.jsf</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.xhtml</url-pattern> 
    </servlet-mapping> 

    <security-constraint> 
     <display-name>Restrict direct access to XHTML files</display-name> 
     <web-resource-collection> 
      <web-resource-name>XHTML files</web-resource-name> 
      <url-pattern>*.xhtml</url-pattern> 
     </web-resource-collection> 
     <auth-constraint/> 
    </security-constraint> 
    <session-config> 
     <session-timeout> 
      120 
     </session-timeout> 
    </session-config> 
    <welcome-file-list> 
     <welcome-file>/utility/Login.jsf</welcome-file> 
    </welcome-file-list> 
     <resource-ref> 
     <res-ref-name>jdbc/social_networking</res-ref-name> 
     <res-type>javax.sql.DataSource</res-type> 
     <res-auth>Container</res-auth> 
    </resource-ref> 
</web-app> 

Dies ist auf dem vorherigen Tomcat-Server (8.0.5) nicht passiert. Gibt es eine Lösung?

Hinweis: In meinem previous question (vor einem Jahr) habe ich den HTTP-Monitor deaktiviert, um nur die Warnung zu unterdrücken. Es war keine Lösung.

EDIT: habe ich vergessen zu erwähnen, aber es ist klar, dass diese Warnung erscheint nach Filter s Spring Security betreffen in web.xml registriert sind.

+0

Ich konfrontiert das gleiche Problem nach dem Hinzufügen von Feder Sicherheitsfilter in web.xml bitte jemand beantworten! –

+0

Deaktivieren Sie vorübergehend den HTTP-Monitor in der IDE als temporäre Problemumgehung, es sei denn,/bis es in der Zukunft auf einen potenziellen legitimen Ansatz/eine mögliche Lösung stößt. – Tiny

+0

Der letzte Test wurde mit Tomcat 8.0.27.0 durchgeführt und reproduziert die gleichen Warnungen, außer der HTTP-Monitor ist deaktiviert. – Tiny

Antwort

0

Es ist ein bekannter NB Fehler bei der Verwendung von HttpMonitor zum Debuggen:

https://netbeans.org/bugzilla/show_bug.cgi?id=204775

HttpMonitor funktionieren wird, aber es wird einige Teile einer Anfrage überspringen, wenn sie durch die Feder vor verarbeitet werden (wie Federsicherheits Kette)

Sie können versuchen, Spring Security Filter eine extrem hohe Ordnung geben und wünschen, dass es funktioniert, was ich bezweifle.

Verwandte Themen