0

簡単なアプレット ( Java 1.7.0_07) を作成しました。このアプレットで Oracle データベース ( ) に接続しようとしていますojdbc6.jar。アプレットは IDE のアプレット ビューアでは正常に動作しますが、Web からは正しく実行されません。

セキュリティ例外が発生しているため、それを修正できると考えて jar ファイルに署名しましたが、まだセキュリティ例外が発生しています。

java.security.AccessControlException: access denied ("java.util.PropertyPermission" "oracle.jdbc.RetainV9LongBindBehavior" "read")
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
    at java.lang.System.getProperty(Unknown Source)
    at oracle.jdbc.driver.PhysicalConnection$1.run(PhysicalConnection.java:3147)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.jdbc.driver.PhysicalConnection.getSystemProperty(PhysicalConnection.java:3143)
    at oracle.jdbc.driver.PhysicalConnection.readConnectionProperties(PhysicalConnection.java:736)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:519)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at com.ericr.signedApplet.SignedApplet.init(SignedApplet.java:61)
    at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.init(Unknown Source)
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

私は物事を整理しようとして壁に頭をぶつけていましたが、これを設定する方法について矛盾する情報があるようです.

だから...私がやろうとしていることをすることさえ可能ですか? その場合、Web からアクセスしたときにアプレットを正しく動作させるために、セキュリティに関して何をする必要があるかを教えてくれるガイドはありますか?

ありがとう...

4

5 に答える 5

2

問題はAccessControlException. oracle.jdbc.RetainV9LongBindBehaviorプロパティを読み取るには、アプレットが信頼されている必要があるようです。

OTOH では、一般に、DB を Web サービスの背後に配置して、DB へのアクセスを制限することをお勧めします。その場合、アプレットは単純に同じサイトの Web サービスに接続して、必要な処理を実行できます。

于 2012-12-05T03:39:39.573 に答える
0

アプレットから JDBC を介して Oracle データベースに接続できる、またはできるはずです。手順については、 『 Oracle Database JDBC Developer's Guide and Reference for Oracle 10g Release 1 』の第 24 章「JDBC in Applets」参照してください。

于 2012-12-05T03:32:29.887 に答える
0

また、 VJDBCプロジェクトを確認することもできます。それはあなたが探しているものかもしれません。

于 2012-12-05T07:34:16.917 に答える
0

2 つの環境の違いは、JVM に使用しているパラメーターに関連している可能性があります。NetBeans で、私のApache Tomcatサーバーに対して、[セキュリティ マネージャーを使用] オプションをクリックして有効にしました。その後、Web サーバーで発生していたのとまったく同じエラーが発生していることに気付きました。

このオプションを見つけるには、トップ メニューに移動し、[ツール] > [サーバー] をクリックします。次に、左側のメニューの [サーバー] の下にある Web サーバーをクリックします。右側のメニューで [プラットフォーム] タブをクリックし、[セキュリティ マネージャーの使用] を無効にすると、問題が解決する場合があります。

于 2013-02-27T21:54:21.450 に答える
-1

oracleフォルダにアクセスする権限を確認するか、ユーザーをoracleグループに追加する必要があります

于 2012-12-05T04:57:07.010 に答える