mySQL 的 Java Applet 问题

标签 java mysql applet

我制作了一个名为 test.jar 的 .jar 文件,并试图将其放到名为 login.html 的网页上(全部在本地)。在 applet 标记内,我将 mysqlconnector.jar 和 test.jar 放在存档部分。

当我尝试使用以下方式运行小程序时:appletviewer "file:///c:/test/login.html"小程序会加载,但是当我尝试登录并单击“确定”时,出现以下错误

    Exception in thread "AWT-EventQueue-1" java.lang.ExceptionInInitializerError
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java
    :286)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at staffDatabase.queryStaffID(staffDatabase.java:76)
    at searchStaff.readFromLogin(searchStaff.java:14)
    at loginFrame$1.actionPerformed(loginFrame.java:65)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:19
    95)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
    a:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
    .java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242
)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
istener.java:236)
    at java.awt.Component.processMouseEvent(Component.java:6263)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6028)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4630)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574
)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)

    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThre
ad.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.
java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)

    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)

    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.security.AccessControlException: access denied (java.util.Proper
tyPermission file.encoding read)
    at java.security.AccessControlContext.checkPermission(AccessControlConte
xt.java:323)
    at java.security.AccessController.checkPermission(AccessController.java:
546)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
    at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:12
85)
    at java.lang.System.getProperty(System.java:650)
    at com.mysql.jdbc.StringUtils.<clinit>(StringUtils.java:70)
    ... 30 more

我看过其他几个建议的网站

    Caused by: java.security.AccessControlException: access denied (java.util.Proper
tyPermission file.encoding read)

是由于缺少 policytool 的读取权限,但我已经设置了所有权限,这没有任何区别。

任何帮助将不胜感激!到目前为止,我到处都没有找到运气,谢谢!

最佳答案

更改您的策略文件不会削减它,您仍然需要 sign the applet .请注意,您可以选择通过 JNLP 部署您的应用程序。 .这将为您提供更高的默认权限集,但对于您正在执行的操作(请求套接字权限),应用程序仍需要签名。

关于mySQL 的 Java Applet 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9589536/

相关文章:

java - 尽管设置正确,@Autowired @Service Bean 为空

java - ReentrantLock 与嵌套的 tryLock 具有不同的超时时间,实际超时时间是多少?

一个订单和下一个订单之间的 MySQL 天数 > 1 个订单

java - JApplet.getParameter 在向其传递大量数据时返回 null

Java Applet 在 focusLost 和 focusGained 上闪烁

java - 读入 Bufferedimage 像素值,然后操作每个像素值并写入文件

java - Wildfly 13 gzip 过滤器属性

php - 编写查询以获取数组并在子查询中使用该数组

mysqldbcopy结合外键约束?

Java小程序: Caller-Allowable-Codebase does not work