Index: /home/clovis/workspace/castor/cpa/src/main/java/org/castor/cpa/persistence/sql/keygen/SequenceKeyGenerator.java =================================================================== --- /home/clovis/workspace/castor/cpa/src/main/java/org/castor/cpa/persistence/sql/keygen/SequenceKeyGenerator.java (revision 8194) +++ /home/clovis/workspace/castor/cpa/src/main/java/org/castor/cpa/persistence/sql/keygen/SequenceKeyGenerator.java (working copy) @@ -62,6 +62,7 @@ import org.castor.cpa.persistence.sql.driver.InterbaseFactory; import org.castor.cpa.persistence.sql.driver.OracleFactory; import org.castor.cpa.persistence.sql.driver.PostgreSQLFactory; +import org.castor.cpa.persistence.sql.driver.SapDbFactory; import org.exolab.castor.mapping.MappingException; import org.exolab.castor.persist.spi.PersistenceFactory; @@ -211,7 +212,8 @@ boolean returning = "true".equals(params.getProperty("returning")); _triggerPresent = "true".equals(params.getProperty("trigger", "false")); - if (!_factoryName.equals(OracleFactory.FACTORY_NAME) && returning) { + if (!(_factoryName.equals(OracleFactory.FACTORY_NAME) + || factory instanceof SapDbFactory) && returning) { throw new MappingException(Messages.format("mapping.keyGenParamNotCompat", "returning=\"true\"", getClass().getName(), _factoryName)); }