The EL parser is converting constructs of the form "\uXXXX" into their equivalent Unicode values. For example: ... value="\u0040" gets converted to ... value="@" I just noticed that the ELParser.jj has JAVA_UNICODE_ESCAPE set to true. The fix should be as simple as setting it to false and regenerating the parser.
Fixed by setting JAVA_UNICODE_ESCAPE to false