2013-01-13 31 views
0

我有问题,我的小程序。它在applet查看器中正常工作,但在Web browser它抛出一个异常。连接小程序<->数据库通过浏览器

异常详细信息:

`SQLException: No suitable driver found for jdbc:mysql://s46.eatj.com:3307/cmentarz 
Exception in thread "AWT-EventQueue-2" java.lang.NullPointerException 
at JDBC.LogIn(JDBC.java:49) 
at AdminPanelLogIn$1.actionPerformed(AdminPanelLogIn.java:64) 
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) 
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) 
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) 
at javax.swing.DefaultButtonModel.setPressed(Unknown Source) 
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source) 
at java.awt.Component.processMouseEvent(Unknown Source) 
at javax.swing.JComponent.processMouseEvent(Unknown Source) 
at java.awt.Component.processEvent(Unknown Source) 
at java.awt.Container.processEvent(Unknown Source) 
at java.awt.Component.dispatchEventImpl(Unknown Source) 
at java.awt.Container.dispatchEventImpl(Unknown Source) 
at java.awt.Component.dispatchEvent(Unknown Source) 
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) 
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) 
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) 
at java.awt.Container.dispatchEventImpl(Unknown Source) 
at java.awt.Component.dispatchEvent(Unknown Source) 
at java.awt.EventQueue.dispatchEventImpl(Unknown Source) 
at java.awt.EventQueue.access$200(Unknown Source) 
at java.awt.EventQueue$3.run(Unknown Source) 
at java.awt.EventQueue$3.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) 
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) 
at java.awt.EventQueue$4.run(Unknown Source) 
at java.awt.EventQueue$4.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) 
at java.awt.EventQueue.dispatchEvent(Unknown Source) 
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) 
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) 
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) 
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) 
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) 
at java.awt.EventDispatchThread.run(Unknown Source)` 

我已经使用JARmaker签署我的jar文件。

getConnection方法代码:

public Connection getConnection() throws SQLException { 

    try { 
     Class.forName("com.mysql.jdbc.Driver"); 
    } catch (java.lang.ClassNotFoundException e) { 
     System.err.print("ClassNotFoundException: "); 
     System.err.println(e.getMessage()); 
    } 

    try { 
     con = DriverManager.getConnection(url, userid, password); 
    } catch (SQLException ex) { 
     System.err.println("SQLException: " + ex.getMessage()); 
    } 
    return con; 
} 

Useridpasswordurl是正确的,因为它在applet浏览器。

static String url = "jdbc:mysql://s46.eatj.com:3307/cmentarz";

所以,可能是什么问题呢?

+1

可能的重复:http://stackoverflow.com/questions/5616898/java-sql-sqlexception-no-suitable-driver-found-for-jdbcmicrosoftsqlserver –

+0

另一方面。一个applet不应该直接访问数据库。而是强制它通过调解访问的服务器工作,并限制它可以做的事情。 –

回答

0

在浏览器中运行时,请确保MySQL jar可用于您的小程序。您可以在applet(或object)标签中指定此:

<applet code="org.package.MyApplet" width="800" height="600" archive="myappletjar.jar,mysql-connector-java-5.1.6-bin.jar"> 
</applet> 

还要确保jar文件在同一位置为您的小程序jar文件的存在使得它可供下载。

+0

非常感谢!现在evrything工作正常。 –

相关问题