3

Play2.0で作成したアプリケーションがあります。いくつかのOAuthサービスを使用するためにscribe-javaライブラリを実装しました。今日まではすべて問題ありませんでしたが、jdkをアップグレードしてサーバーを再起動すると、scribe-javaライブラリを使用できませんでした。sun.securityパッケージのようないくつかのクラスを使用しているようですsun/security/pkcs11/P11Keysun/security/pkcs11/Length、見つかりませんでした。

「java-version」はこれを返します:

Javaバージョン「1.7.0_03」

OpenJDKランタイム環境(IcedTea7 2.1.1pre)(7〜u3-2.1.1〜pre1-1ubuntu3)

OpenJDK 64ビットサーバーVM(ビルド22.0-b10、混合モード)

2.0スタックトレースを再生します。

! @6bk5o8md2 - Internal server error, for request [GET /user/service/google/oauth_callback/?code=[SECRET]] ->

play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[NoClassDefFoundError: sun/security/pkcs11/P11Key]]
        at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [play_2.9.1.jar:2.0.2]
        at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [play_2.9.1.jar:2.0.2]
        at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor.jar:2.0.2]
        at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1.jar:2.0.2]
        at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor.jar:2.0.2]
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor.jar:2.0.2]
Caused by: java.lang.NoClassDefFoundError: sun/security/pkcs11/P11Key
        at sun.security.pkcs11.P11ECKeyFactory.generatePublic(P11ECKeyFactory.java:234) ~[sunpkcs11.jar:na]
        at sun.security.pkcs11.P11ECKeyFactory.implTranslatePublicKey(P11ECKeyFactory.java:103) ~[sunpkcs11.jar:na]
        at sun.security.pkcs11.P11ECKeyFactory.engineGeneratePublic(P11ECKeyFactory.java:152) ~[sunpkcs11.jar:na]
        at java.security.KeyFactory.generatePublic(KeyFactory.java:334) ~[na:1.7.0_03]
        at sun.security.x509.X509Key.buildX509Key(X509Key.java:223) ~[na:1.7.0_03]
        at sun.security.x509.X509Key.parse(X509Key.java:170) ~[na:1.7.0_03]
4

1 に答える 1

2

別の更新&&アップグレードの後、jdkは2.1.1preから2.3.2にアップグレードされ、問題が修正されました。何が起こったのかというと、オラクルは私の2時間を無駄にしてしまいました。:(

于 2012-09-13T21:09:45.000 に答える