以下のエラーが発生する Java アプリケーションを実行しようとしています。
java.lang.NoSuchMethodError: com/crossview/commerce/dataload/reader/OfferReader.getNode()Lorg/w3c/dom/Node;
at com.wkus.taa.commerce.dataload.reader.OfferReader.init(OfferReader.java:57)
at com.ibm.commerce.foundation.dataload.AbstractBusinessObjectLoader.initializeDataReaders(AbstractBusinessObjectLoader.java:1220)
at com.ibm.commerce.foundation.dataload.AbstractBusinessObjectLoader.init(AbstractBusinessObjectLoader.java:353)
at com.ibm.commerce.foundation.dataload.BusinessObjectLoader.init(BusinessObjectLoader.java:65)
at com.ibm.commerce.foundation.dataload.DataLoaderMain.execute(DataLoaderMain.java:428)
at com.ibm.commerce.foundation.dataload.DataLoaderMain.main(DataLoaderMain.java:213)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:600)
at com.ibm.ws.bootstrap.WSLauncher.main(WSLauncher.java:260)
ただし、メソッドgetNode()
はコード内に存在します。このエラーが表示される理由の手がかりはありますか?
スーパークラスから getNode() を呼び出す子クラス OfferReader.java があります。
public void init() throws DataLoadException {
super.init();
node = super.getNode();
}
親クラスの OfferReaderParent.java には、以下のメソッド シグネチャがあります。
public Node getNode() {
return node;
}
public void setNode(Node node) {
this.node = node;
}