2014-10-24 13 views
7

Serwer Tomcat rejestruje następujące ostrzeżenie na terminalu serwera podczas uzyskiwania dostępu do stron z przeglądarki po aktualizacji Tomcat z wersji 8.0.5 do wersji 8.0.9.0.MonitorFilter :: OSTRZEŻENIE: filtr monitora musi być pierwszym filtrem w łańcuchu

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. 

Odpowiednie oprogramowanie:

  • Wiosna 4.0.0 GA
  • Wiosna Bezpieczeństwo 3.2.0 GA.
  • JSF 2.2.8-02
  • PrimeFaces 5,1 końcowy
  • PrimeFaces Przedłużenie 2.1.0
  • JDK 8u25
  • NetBeans 8.0.1

pliku web.xml:

<?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> 

Tak się nie stało na poprzednim serwerze Tomcat (8.0.5). Czy jest poprawka?

Uwaga: W moim previous question (rok temu) wyłączyłem monitor HTTP, aby po prostu wyłączyć ostrzeżenie. To nie było rozwiązanie.

EDIT: Zapomniałem wspomnieć, ale jasne jest, że to ostrzeżenie pojawia się po Filter s dotyczące wiosennej Security są zarejestrowane w web.xml.

+0

Napotkałem ten sam problem po dodaniu filtru sprężynowego w web.xml, proszę, odpowiedz! –

+0

Tymczasowo wyłącz monitor HTTP w IDE jako tymczasowe obejście, chyba że/dopóki nie spotka się z potencjalnym uzasadnionym podejściem/rozwiązaniem w przyszłości. – Tiny

+0

Ostatni test został wykonany na serwerze Tomcat 8.0.27.0, wyświetlającym to samo ostrzeżenie, chyba że monitor HTTP jest wyłączony. – Tiny

Odpowiedz

0

Jest to znany NB błędów podczas korzystania HttpMonitor do debugowania:

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

HttpMonitor będzie działać, ale to się dzieje, aby pominąć niektóre części wniosku, jeżeli są one przetwarzane przed wiosny (jak bezpieczeństwo sprężyny łańcuch)

Możesz spróbować dać filtrowi Spring Security wyjątkowo wysokie zamówienie i życzyć sobie, aby działało, co wątpię.