2013-11-15 2 views
1

Периодически у нас есть эта проблема, которая предотвращает запуск апплета, процесс javaw.exe кажется заблокированным, убивая их несколько раз, открывая апплет. В файле трассировки я нахожу это (мы JDK 1.6_35, апплет используется веб-приложения J2EE):Процесс javaw.exe зависает при запуске апплета

**server running at port: 50091 
basic: unique id: JavaControlPanel 
basic: server port at: 49187 
basic: getSingleInstanceFilename: C:\Users\amoriconi\AppData\LocalLow\Sun\Java\Deployment\tmp\si\JavaControlPanel-x86_49187 
basic: file should be removed: C:\Users\amoriconi\AppData\LocalLow\Sun\Java\Deployment\tmp\si\JavaControlPanel-x86_50091 
basic: waiting connection 
Exception in thread "main" java.lang.ExceptionInInitializerError 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
    at java.lang.reflect.Constructor.newInstance(Unknown Source) 
    at java.lang.Class.newInstance0(Unknown Source) 
    at java.lang.Class.newInstance(Unknown Source) 
    at sun.security.jca.ProviderConfig$3.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at sun.security.jca.ProviderConfig.doLoadProvider(Unknown Source) 
    at sun.security.jca.ProviderConfig.getProvider(Unknown Source) 
    at sun.security.jca.ProviderList.getProvider(Unknown Source) 
    at sun.security.jca.ProviderList$ServiceList.tryGet(Unknown Source) 
    at sun.security.jca.ProviderList$ServiceList.access$200(Unknown Source) 
    at sun.security.jca.ProviderList$ServiceList$1.hasNext(Unknown Source) 
    at sun.security.jca.GetInstance.getInstance(Unknown Source) 
    at java.security.SecureRandom.getInstance(Unknown Source) 
    at java.security.SecureRandom.getDefaultPRNG(Unknown Source) 
    at java.security.SecureRandom.<init>(Unknown Source) 
    at com.sun.deploy.services.WPlatformService.getSecureRandom(Unknown Source) 
    at com.sun.deploy.si.SingleInstanceImpl.getSecureRandom(Unknown Source) 
    at com.sun.deploy.si.SingleInstanceImpl.access$100(Unknown Source) 
    at com.sun.deploy.si.SingleInstanceImpl$SingleInstanceServer$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at com.sun.deploy.si.SingleInstanceImpl$SingleInstanceServer.createSingleInstanceFile(Unknown Source) 
    at com.sun.deploy.si.SingleInstanceImpl$SingleInstanceServer.<init>(Unknown Source) 
    at com.sun.deploy.si.SingleInstanceImpl.addSingleInstanceListener(Unknown Source) 
    at com.sun.deploy.panel.ControlPanel.<init>(Unknown Source) 
    at com.sun.deploy.panel.ControlPanel.main(Unknown Source) 
Caused by: java.lang.RuntimeException: java.security.NoSuchAlgorithmException: class configured for SecureRandom(provider: SUN)cannot be found. 
    at java.security.SecureRandom.getDefaultPRNG(Unknown Source) 
    at java.security.SecureRandom.<init>(Unknown Source) 
    at com.sun.crypto.provider.SunJCE.<clinit>(DashoA13*..) 
    ... 28 more 
Caused by: java.security.NoSuchAlgorithmException: class configured for SecureRandom(provider: SUN)cannot be found. 
    at java.security.Provider$Service.getImplClass(Unknown Source) 
    at java.security.Provider$Service.newInstance(Unknown Source) 
    at sun.security.jca.GetInstance.getInstance(Unknown Source) 
    at sun.security.jca.GetInstance.getInstance(Unknown Source) 
    at java.security.SecureRandom.getInstance(Unknown Source) 
    ... 31 more 
Caused by: java.lang.ClassNotFoundException: com/sun/deploy/security/WSecureRandom 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Unknown Source) 
    ... 36 more** 

По какой-то причине эта проблема возникла из скрытого обновления Java, установка JDK 7u45 и то удаление решения в течение некоторого времени проблема ..... Я схожу с ума ....

+0

Проверьте панель управления Windows на предмет Java и убедитесь, что она не настроена на автоматическое обновление. Похоже, что Java пытается обновить и пропустить часть пути (возможно, потому, что некоторые файлы используются апплетом). – GregHNZ

ответ

1

Это происходит потому, что в новой версии JRE накладываются дополнительные проверки безопасности, которые были наложены на апплеты (7u45-B18).

http://www.oracle.com/technetwork/java/javase/7u45-relnotes-2016950.html#newft

Его хорошо, чтобы быть на старой JRE или внести изменения, связанные с безопасностью.

Смежные вопросы