Backpedal on previous changes. Instead, check if value returned by

ResultSet.getBigDecimal() is null.
This commit is contained in:
hns 2002-11-18 14:58:30 +00:00
parent b2159e9aef
commit 396a2ce634

View file

@ -277,19 +277,11 @@ public final class Node implements INode, Serializable {
continue; continue;
Property newprop = new Property (rel.propName, this); Property newprop = new Property (rel.propName, this);
switch (rel.getColumnType()) { switch (rel.getColumnType()) {
case Types.BIT: case Types.BIT:
String tmp = rs.getString (rel.getDbField()); newprop.setBooleanValue (rs.getBoolean(rel.getDbField()));
if (tmp == null)
newprop.setBooleanValue (false);
else if (tmp.equalsIgnoreCase ("true") ||
tmp.equalsIgnoreCase ("yes") ||
tmp.equals ("1"))
newprop.setBooleanValue (true);
else
newprop.setBooleanValue (false);
break; break;
case Types.TINYINT: case Types.TINYINT:
@ -307,11 +299,13 @@ public final class Node implements INode, Serializable {
case Types.DECIMAL: case Types.DECIMAL:
case Types.NUMERIC: case Types.NUMERIC:
BigDecimal num = new BigDecimal (rs.getString (rel.getDbField())); BigDecimal num = rs.getBigDecimal (rel.getDbField());
if (num == null)
break;
if (num.scale() > 0) if (num.scale() > 0)
newprop.setFloatValue (rs.getDouble(rel.getDbField())); newprop.setFloatValue (num.doubleValue ());
else else
newprop.setIntegerValue (rs.getLong(rel.getDbField())); newprop.setIntegerValue (num.longValue ());
break; break;
case Types.LONGVARBINARY: case Types.LONGVARBINARY: