Looks like weblogic's filters get run on a forward. So I had to implement a stack counter to get around the exception check in doFilter (I could of removed it altogether, but its a nice check).