The invocation of OracleResultSetImpl.getLong() that is shown in the stacktrace puzzles me. It seems that it's not JBoss' CMP engine that is calling this method. Instead the stacktrace tells that KingPackageGeneratorProcess is calling this directly.
Anyway, using java.util.Date with Oracle works fine here (Oracle 18.104.22.168, JDBC driver any of 22.214.171.124, 126.96.36.199, 10.1.0.4).
When speaking of the Oracle DATE type:
You are going to loose precision when mapping java.util.Date to DATE.
The former has a resolution of milliseconds, the latter only keeps full seconds. You might better want to map java.util.Date to Oracle's TIMESTAMP(3) type.