This is a very special issue...
The code:
private static final Long ELEMENT_TYPE = Long.valueOf("0");
looks like there is some misunderstanding - might be triggered by other findings or to workaround the magic number finder.
If you look what this code does, it stores a value as String and then parses it to a Long. Please store this value directly in a long and then wrap it to a Long:
up to JDK1.4.2:
private static final Long ELEMENT_TYPE = new Long(0L);
Starting with JDK1.5:
private static final Long ELEMENT_TYPE = Long.valueOf(0L);
