This Content Negotiation Filter provides a content negotiation filter for Java EE servlet containers. The content negotiation algorithm is based on the Apache negotiation algorithm but lacks support for the encoding and character set. The variants can be configured through an XML file, negotiation.xml, in the WEB-INF/classes directory. This file can be overriden with the 'xmlInputFile' filter parameter. This XML file is parsed with the class 'com.mattunderscore.filter.contentnegotiation.variantsource.FilterVariantXMLSource'. This class can be overridden with the 'variantSource' filter parameter. The XML parser is implemented as a SAX parser. The SAX handler class can be overridden by the saxHandlerClass filter parameter. The 'variantSource' parameter can take any class that implements the 'com.mattunderscore.filter.contentnegotiation.variantsource.VariantSource'.