我得到了一個返回Vector的函數的錯誤。在每件事情都正常工作之前,我將Vector []的返回類型更改爲Vector。線程「AWT-EventQueue-0」中的異常java.lang.NoSuchMethodError在Swing方法中
異常的堆棧跟蹤如下:
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: DB.DBEngine.getComboDataAllQry(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Vector;
at jewelleryerpapplication.GUI.Orders.Orders.GetComboData(Orders.java:313)
at jewelleryerpapplication.GUI.Orders.Orders.formWindowOpened(Orders.java:3323)
at jewelleryerpapplication.GUI.Orders.Orders.access$800(Orders.java:70)
at jewelleryerpapplication.GUI.Orders.Orders$10.windowOpened(Orders.java:1936)
at java.awt.AWTEventMulticaster.windowOpened(AWTEventMulticaster.java:339)
at java.awt.Window.processWindowEvent(Window.java:2042)
at javax.swing.JFrame.processWindowEvent(JFrame.java:296)
at java.awt.Window.processEvent(Window.java:2003)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
代碼的SSCCE是如下
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.util.Vector;
import java.util.logging.Level;
import java.util.logging.Logger;
class DBUtil.DBEngine {
public static Vector<Object> getComboDataAllQry(String colId,String colName,String tblName) throws Exception {
Vector<Vector<String>> comboVector = new Vector<Vector<String>>();
Vector<Object> test = new Vector<Object>();
Connection conn = dbConnection(dbName);
ResultSet rsCombo=GetResultSetForQry(" Select"+colId+","+colName+" from "+tblName);
ResultSet rsAllData=GetResultSetForQry(" Select * from "+tblName);
Vector<String> colNames = getColumnNamesFromResultSet(rsAllData);
Vector<Vector<String>> comboVector = GetVctFromResultSet(rs_);
Vector<Vector<String>> compResultSet = GetVctFromResutSet(rsAllData;
test.add(comboVector);
test.add(compResultSet);
test.add(colNames);
return test;
}
}
import DBUtil.DBEngine;
public class jewelleryerpapplication.GUI.Orders.Orders{
JComboBox orders=null;
Vector<Vector<String> dataAll=null;
public static void GetComboData(){
Vector<Object> obj= DBUtil.DBEngine.getComboDataAllQry("OrderID","OrderName"+"OrdersNew.dbo.Orders");
Vector<Vector<String>> ComboData =(Vector<Vector<String>>)obj.get(0);
Vector<Vector<String>> data =(Vector<Vector<String>>)obj.get(1);
orders =New JComboBox(new DefaultComboBoxModel(ComboData))'
}
public void formWindowOpened(){
GetComboData();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
formWindowOpened();
}
});
}
}
}
你能發表'getComboDataAllQry()'方法嗎? – NINCOMPOOP 2013-04-29 11:42:14
奇怪:SSCCE代表簡短,獨立,完整,可編輯的例子。我想你錯過了5個單詞中的3個。 – 2013-04-29 11:42:28
@GuillaumePolet實際上我有3個項目目錄(主項目)。 2)DBUtil 3)訂單(目錄和訂單具有DBUtil)以及getComboDataAllQry()在DBUtil中定義。訂單項目中出現此異常。我已經清理了每一件事。我已經將庫添加爲項目的dist文件夾的引用路徑 – 2013-04-29 12:05:04