Anonymous | Login | Signup for a new account | 10-03-2024 04:35 PDT |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Advanced Details [ Jump to Notes ] | [ View Simple ] [ Issue History ] [ Print ] | ||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||||
0000871 | [Resin] | major | always | 01-17-06 10:06 | 02-02-06 10:09 | ||||
Reporter | koreth | View Status | public | ||||||
Assigned To | ferg | ||||||||
Priority | normal | Resolution | fixed | Platform | |||||
Status | closed | OS | |||||||
Projection | none | OS Version | |||||||
ETA | none | Fixed in Version | 3.0.18 | Product Version | 3.0.17 | ||||
Product Build | |||||||||
Summary | 0000871: Wrong datatype used when EJB container creates an instance with a null LONGVARBINARY column | ||||||||
Description |
I have an Oracle table with a LONG RAW column that's allowed to be null. My resin.ejb has the following definition for the field: <cmp-field> <field-name>methodParametersByteArrayField</field-name> <sql-column>methodparameters</sql-column> <abstract-sql-type>LONGVARBINARY</abstract-sql-type> <sql-type>LONG RAW</sql-type> </cmp-field> But the following code gets generated in the __Amber.java file: if (__caucho_super_get_methodParametersByteArrayField() == null) pstmt.setNull(index++, java.sql.Types.DECIMAL); else pstmt.setBytes(index++, __caucho_super_get_methodParametersByteArrayField()); When I try to create a bean instance where the field in question is null, the JDBC call throws an exception with a message from Oracle, "expected BINARY but found NUMBER". Clearly the setNull() call shouldn't be using java.sql.Types.DECIMAL as its data type. |
||||||||
Steps To Reproduce | |||||||||
Additional Information | |||||||||
Attached Files | |||||||||
|
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
32 total queries executed. 27 unique queries executed. |