Hi Gordon
The code change is to deal with the fact that for @Version field we
are not setting the field type. So for a number field during java2db we
are always creating a field of type BigDecimal and ignoring the type of
the field on which the @Version has been defined.
The solution has been made in
src/java/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.processAccessor()
to set the databasefield type correctly.
If the type is correctly then
src/java/oracle/toplink/essentials/descriptors/VersionLockingPolicy.
initializeProperties() will not set the type of the field to BigDecimal.
I have attached the diffs and jar file. Also ran the
entity-persistence-tests and all passed.
Thanks
Pramod
Index: src/java/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java
===================================================================
RCS file: /cvs/glassfish/entity-persistence/src/java/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java,v
retrieving revision 1.8
diff -r1.8 MetadataProcessor.java
440a441,443
> if (field.getType() == null) {
> field.setType(accessor.getRawClass());
> }