Ya, this sucks. The spec only acknowledges int, long, double, and float. This means that big decimal is considered a DVC. To make this worse the spec does not allow comparison between DVCes. I think this will work if you declare the query using jboss-ql in the jbosscmp-jdbc.xml file. If you don't know how to do this, take a look a the JBossOne-JBossCMP slides at our SourceForge site.