AbstractMethodError

Hi I keep on getting this error:

Exception in thread “REFORMAT0” java.lang.AbstractMethodError: oracle.jdbc.driver.OraclePreparedStatement.getParameterMetaData()Ljava/sql/ParameterMetaData;
at org.jetel.lookup.DBLookupTable.get(DBLookupTable.java:179)
at Transform_PNEU.transform(Transform_PNEU.java:63)
at org.jetel.component.Reformat.execute(Reformat.java:191)
at org.jetel.graph.Node.run(Node.java:364)
at java.lang.Thread.run(Unknown Source)

My Transformation Code is :

// automatically generated on Thu Mar 08 13:40:55 SGT 2007
import org.jetel.component.DataRecordTransform;
import org.jetel.data.DataRecord;
import org.jetel.data.NumericDataField;
import org.jetel.data.RecordKey;
import org.jetel.data.lookup.LookupTable;
import org.jetel.exception.ComponentNotReadyException;
import org.jetel.exception.TransformException;

public class Transform_PNEU extends DataRecordTransform
{
// CONSTANTS definition of input fields
private final static int IN0_FIELD0 = 0;
private final static int IN0_FIELD5 = 5;
private final static int IN0_FIELD18 = 18;
private final static int IN0_FIELD19 = 19;
private final static int IN0_FIELD6 = 6;

// CONSTANTS definition of output fields
private final static int OUT0_CAI_CODE = 0;
private final static int OUT0_CAI_WEIGHT = 1;
private final static int OUT0_CAI_DIAMETER = 2;
private final static int OUT0_CAI_TICKNESS = 3;
private final static int OUT0_CAI_NAILS_NB = 4;
private final static int OUT0_CAI_CODE_TEMP = 5;

LookupTable myLookUp;

/**
* Initializes reformat class/function. This method is called only once at then
* beginning of transformation process. Any object allocation/initialization should
* happen here.
*/
public boolean init() throws ComponentNotReadyException
{
try
{
myLookUp = graph.getLookupTable(“LookupTable0”);
myLookUp.init();
} catch (Exception e) {
e.printStackTrace();
}

String lookupKeyStr={“Field0”};
RecordKey key=new RecordKey(lookupKeyStr, sourceMetadata[0]);
key.init();
myLookUp.setLookupKey(key);
return true; }

/**
* Performs reformat of source records to target records.
* This method is called as one step in transforming flow of
* records.
*/
public boolean transform(DataRecord inputRecords, DataRecord outputRecords) throws TransformException {
DataRecord tb_ref_cai;
tb_ref_cai = myLookUp.get(inputRecords[0]);

if (tb_ref_cai != null) return false;

try {
// user’s code STARTs from here !

(outputRecords[0].getField(OUT0_CAI_CODE)).setValue( (inputRecords[0].getField(IN0_FIELD0).toString()));
((NumericDataField)outputRecords[0].getField(OUT0_CAI_WEIGHT)).setValue( (((NumericDataField)inputRecords[0].getField(IN0_FIELD5)).getDouble()));
((NumericDataField)outputRecords[0].getField(OUT0_CAI_DIAMETER)).setValue( (((NumericDataField)inputRecords[0].getField(IN0_FIELD18)).getDouble()));
((NumericDataField)outputRecords[0].getField(OUT0_CAI_TICKNESS)).setValue( (((NumericDataField)inputRecords[0].getField(IN0_FIELD19)).getDouble()));
((NumericDataField)outputRecords[0].getField(OUT0_CAI_NAILS_NB)).setValue( (((NumericDataField)inputRecords[0].getField(IN0_FIELD6)).getDouble()));
//(outputRecords[0].getField(OUT0_CAI_CODE_TEMP)).setValue( (inputRecords[0].getField(IN0_FIELD0).toString()));

} catch(Exception e) {
throw new TransformException("Error in extern transformation class " + Transform_PNEU.class.getName() + ": " + e.getMessage());
}
return true;
}

public void finished() {
myLookUp.free();
}
}

I already got the odbc driver given to me by Martin. what seems to be the problem. Hope you can help me. thank you…

As I told you, in this code snippet is not hidden any problem. Your problem is somewhere else. I’ll send you DBLookupTable.class, please replace it in your latest engine 2.1 and try it again.

Martin