I'm running the Waffle servlet filter in JBoss 5.1.0.GA with Java 1.6.0_20. My application refused to start due to the error, "Unsupported protocol: Negotiate NTLM". I assumed a corrupt web.xml file, but nothing I did fixed the problem.
Finally I changed this line in the NegotiateSecurityFilterProvider initParameter method and now the app starts without error. I have no idea why my environment is so sensitive - maybe because it's a virtual machine.
String protocolNames = parameterValue.split("\\s+");
The split("\\s+") matches any white space, so this is a bit more hardened than the original implementation: