User: oberg
Date: 01/02/09 02:34:39
Modified: src/main/org/jboss/ejb/plugins/jaws/jdbc
JDBCDefinedFinderCommand.java
Log:
Now uses correct type mapping. Thanks to Gabor Herr for the patch!
Revision Changes Path
1.11 +8 -2
jboss/src/main/org/jboss/ejb/plugins/jaws/jdbc/JDBCDefinedFinderCommand.java
Index: JDBCDefinedFinderCommand.java
===================================================================
RCS file:
/products/cvs/ejboss/jboss/src/main/org/jboss/ejb/plugins/jaws/jdbc/JDBCDefinedFinderCommand.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- JDBCDefinedFinderCommand.java 2001/02/07 07:12:34 1.10
+++ JDBCDefinedFinderCommand.java 2001/02/09 10:34:39 1.11
@@ -15,6 +15,7 @@
import java.sql.PreparedStatement;
import org.jboss.ejb.plugins.jaws.metadata.FinderMetaData;
+import org.jboss.ejb.plugins.jaws.metadata.TypeMappingMetaData;
/**
* JAWSPersistenceManager JDBCDefinedFinderCommand
@@ -25,19 +26,22 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Joe Shevland</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Justin Forder</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Michel de Groot</a>
- * @version $Revision: 1.10 $
+ * @version $Revision: 1.11 $
*/
public class JDBCDefinedFinderCommand extends JDBCFinderCommand
{
// Attributes ----------------------------------------------------
private int[] parameterArray;
+ private TypeMappingMetaData typeMapping;
// Constructors --------------------------------------------------
public JDBCDefinedFinderCommand(JDBCCommandFactory factory, FinderMetaData f)
{
super(factory, f.getName());
+
+ typeMapping = jawsEntity.getJawsApplication().getTypeMapping();
// Replace placeholders with ?, but only if query is defined
String query = "";
@@ -174,7 +178,9 @@
for (int i = 0; i < parameterArray.length; i++)
{
- stmt.setObject(i+1, args[parameterArray[i]]);
+ Object arg = args[parameterArray[i]];
+ int jdbcType = typeMapping.getJdbcTypeForJavaType(arg.getClass());
+ setParameter(stmt,i+1,jdbcType,arg);
}
}
}