If you get an "cannot be cast to javax.servlet.Filter" exception likwhen running Tomcat from within Maven, or really from anywhere else, then you probably have an older version of the servlet-api defined in your dependencies or (most likely) have a dependency that depends on an older version of the servlet-api.
You can solve this by manually specifying which version to use in your dependency list: