The destroy() method is called only once at the end of the life cycle of a filter
The destroy() method is called after the filter has executed doFilter method
The destroy() method is called only once at the begining of the life cycle of a filter
The destroyer() method is called after the filter has executed