3

I have an applet that worked fine a month ago but now hangs at startup. It locks up any browser so the process must be killed. It is only this single applet that is causing problems.

The console log shows the jnlp file loading and reloading. Not sure if that is a problem. No exceptions are thrown. I never reach the security check. Near the bottom is this:

 basic: Relaunch because: [currently running JRE doesn't satisfy (version/args)]

This is the bottom part of the console log.

network: Created version ID: 1.7.0.21
network: Created version ID: 1.7
network: Created version ID: 2.2.21
network: Cache entry found [url: http://WS001LT9138PRD/web4/lib/configurator.jnlp, version: null] prevalidated=false/0
cache: Adding MemoryCache entry: http://WS001LT9138PRD/web4/lib/configurator.jnlp
temp: new XMLParser with source:
temp: <?xml version="1.0" encoding="utf-8"?>
<jnlp spec="6.0+" href="configurator.jnlp">

   <security>
      <all-permissions />
   </security>
   <resources>
      <java version="1.6+" max-heap-size="512m" java-vm-args="-Xss=256K"/>
      <jar href="configurator.jar" />
   </resources>
   <applet-desc name="ConfigApplet" main-class="com.configsc.applet.ConfigApplet"
      width="1152" height="864">
   </applet-desc>
</jnlp>

temp: 

returning ROOT as follows:

<jnlp spec="6.0+" href="configurator.jnlp">

  <security>
    <all-permissions/>
  </security>
  <resources>
    <java version="1.6+" max-heap-size="512m" java-vm-args="-Xss=256K"/>
    <jar href="configurator.jar"/>
  </resources>
  <applet-desc name="ConfigApplet" main-class="com.configsc.applet.ConfigApplet" width="1152" height="864"/>
</jnlp>
network: Created version ID: 1.6+
network: Created version ID: 1.9
temp: returning LaunchDesc from XMLFormat.parse():

<jnlp spec="6.0+" codebase="http://WS001LT9138PRD/web4/lib/" href="http://WS001LT9138PRD/web4/lib/configurator.jnlp">

  <security>
    <all-permissions/>
  </security>
  <update check="timeout" policy="always"/>
  <resources>
    <java max-heap-size="536870912" java-vm-args="-Xss=256K" version="1.6+"/>
    <jar href="http://WS001LT9138PRD/web4/lib/configurator.jar" download="eager" main="false"/>
  </resources>
  <applet-desc name="ConfigApplet" main-class="com.configsc.applet.ConfigApplet" documentbase="http://ws001lt9138prd/cseg/web/ajax/cfg/config_applet2.jsp?ui=applet&cmd=CFG&username=admin&product_id=TTT" width="1152" height="864"/>
</jnlp>
cache: Resource http://WS001LT9138PRD/web4/lib/configurator.jnlp has expired.
network: Connecting http://WS001LT9138PRD/web4/lib/configurator.jnlp with proxy=DIRECT
network: Connecting http://WS001LT9138PRD:80/ with proxy=DIRECT
network: Connecting http://WS001LT9138PRD/web4/lib/configurator.jnlp with cookie "uuid=1a852b20-5ad7-411e-bb1a-837770f71c73; uuidinstance=1"
network: ResponseCode for http://WS001LT9138PRD/web4/lib/configurator.jnlp : 304
network: Encoding for http://WS001LT9138PRD/web4/lib/configurator.jnlp : null
network: Disconnect connection to http://WS001LT9138PRD/web4/lib/configurator.jnlp
temp: new XMLParser with source:
temp: <?xml version="1.0" encoding="utf-8"?>
<jnlp spec="6.0+" href="configurator.jnlp">

   <security>
      <all-permissions />
   </security>
   <resources>
      <java version="1.6+" max-heap-size="512m" java-vm-args="-Xss=256K"/>
      <jar href="configurator.jar" />
   </resources>
   <applet-desc name="ConfigApplet" main-class="com.configsc.applet.ConfigApplet"
      width="1152" height="864">
   </applet-desc>
</jnlp>

temp: 

returning ROOT as follows:

<jnlp spec="6.0+" href="configurator.jnlp">

  <security>
    <all-permissions/>
  </security>
  <resources>
    <java version="1.6+" max-heap-size="512m" java-vm-args="-Xss=256K"/>
    <jar href="configurator.jar"/>
  </resources>
  <applet-desc name="ConfigApplet" main-class="com.configsc.applet.ConfigApplet" width="1152" height="864"/>
</jnlp>
network: Created version ID: 1.6+
network: Created version ID: 1.9
temp: returning LaunchDesc from XMLFormat.parse():

<jnlp spec="6.0+" codebase="http://WS001LT9138PRD/web4/lib/" href="http://WS001LT9138PRD/web4/lib/configurator.jnlp">

  <security>
    <all-permissions/>
  </security>
  <update check="timeout" policy="always"/>
  <resources>
    <java max-heap-size="536870912" java-vm-args="-Xss=256K" version="1.6+"/>
    <jar href="http://WS001LT9138PRD/web4/lib/configurator.jar" download="eager" main="false"/>
  </resources>
  <applet-desc name="ConfigApplet" main-class="com.configsc.applet.ConfigApplet" documentbase="http://ws001lt9138prd/cseg/web/ajax/cfg/config_applet2.jsp?ui=applet&cmd=CFG&username=admin&product_id=TTT" width="1152" height="864"/>
</jnlp>    

cache: JNLPPreverifyClassLoader.initialize: FAILED: http://WS001LT9138PRD/web4/lib/configurator.jar
    basic: Plugin2ClassLoader.addURL2 called for http://WS001LT9138PRD/web4/lib/configurator.jar
    basic: Plugin2ClassLoader.drainPendingURLs addURL called for http://WS001LT9138PRD/web4/lib/configurator.jar
    network: LaunchDownload: concurrent downloads from LD: 4
    network: Total size to download: -1
    security: Security check for progress jars: allSigned=true
    security: Blacklist revocation check is enabled
    security: blacklist: created: NEED_LOAD, lastModified: 1367506003185
    security: blacklist: hasBeenModifiedSince 0 (we have 1367506003185)
    cache: Trying to update in place C:\Users\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\3\149e9b83-2d476b62.idx
    cache: Upgrade writing to disk for C:\Users\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\3\149e9b83-2d476b62
    security: blacklist: check contains 3COxySh3Q4+QRZlBYHxrjd5s0shhO2/5P3Oghwz5s0U=, state now NEED_LOAD
    security: blacklist: loadCache
    security: blacklist: not  found in cache
    security: Trusted libraries list check is enabled
    security: Trusted libraries list file not found
    cache: Create from verifier: JarSigningData{hasOnlySignedEntries=true, hasSingleCodeSource=true, hasMissingSignedEntries=false}
    cache: Upgrade of entry done
    cache: readIndexFile returning success
    network: Cache entry found [url: http://WS001LT9138PRD/web4/lib/configurator.jar, version: null] prevalidated=false/0
    cache: Adding MemoryCache entry: http://WS001LT9138PRD/web4/lib/configurator.jar
    cache: Resource http://WS001LT9138PRD/web4/lib/configurator.jar has expired.
    network: Connecting http://WS001LT9138PRD/web4/lib/configurator.jar with proxy=DIRECT
    network: Connecting http://WS001LT9138PRD/web4/lib/configurator.jar with cookie "uuid=1a852b20-5ad7-411e-bb1a-837770f71c73; uuidinstance=1"
    network: ResponseCode for http://WS001LT9138PRD/web4/lib/configurator.jar : 304
    network: Encoding for http://WS001LT9138PRD/web4/lib/configurator.jar : null
    network: Disconnect connection to http://WS001LT9138PRD/web4/lib/configurator.jar
    network: Download Progress: jarsDone: 1
        Match: beginTraversal
    network: Created version ID: 1.6+
    network: Created version ID: 1.7
    Match: digest selected JREDesc: JREDesc[version 1.6+, heap=-1-536870912, args=-Xss=256K, href=null, sel=false, null, null], JREInfo: JREInfo for index 0:
        platform is: 1.7
        product is: 1.7.0_21
        location is: http://java.sun.com/products/autodl/j2se
        path is: C:\Program Files\Java\jre7\bin\javaw.exe
        args is: 
        native platform is: Windows, amd64 [ x86_64, 64bit ]
        JavaFX runtime is: JavaFX 2.2.21 found at C:\Program Files\Java\jre7\
        enabled is: true
        registered is: true
        system is: true

        Match: selecting maxHeap: 536870912
        Match: ignoring InitHeap: -1
        Match: digesting vmargs: -Xss=256K
    security:  --- parseCommandLine converted : -Xss=256K
    into:
    [-Xss=256K]
        Match: digested vmargs: [JVMParameters: isSecure: true, args: -Xss=256K]
        Match: JVM args after accumulation: [JVMParameters: isSecure: true, args: -Xss=256K]
        Match: digest LaunchDesc: http://WS001LT9138PRD/web4/lib/configurator.jnlp
        Match: digest properties: []
        Match: JVM args: [JVMParameters: isSecure: true, args: -Xss=256K]
        Match: endTraversal ..
        Match: JVM args final: -Xmx512m -Xss=256K
    network: Created version ID: 1.7.0.21
    network: Created version ID: 1.7
    network: Created version ID: 2.2.21
        Match: Running JREInfo Version    match: 1.7.0.21 == 1.7.0.21
         Match: Running JVM args mismatch: have:<-Xmx512m -Xss256K> !satisfy want:<-Xmx512m -Xss=256K>
    basic: LaunchDesc location: http://WS001LT9138PRD/web4/lib/configurator.jnlp
    network: Created version ID: 6.0+
    network: Created version ID: 7.0
    basic: Relaunch because: [currently running JRE doesn't satisfy (version/args)] 
    basic: Saving session state to C:\Users\JONATH~1.BRI\AppData\Local\Temp\session7801545931076966323
    basic: Remote relaunch: LaunchJVMAppletMessage{appletID=1, conversationID=1, javaHome=C:\Program Files\Java\jre7, launchTime=15798419052, sendKill=false, [sun.plugin2.main.client.PluginMain, write_pipe_name=jpi2_pid8472_pipe5,read_pipe_name=jpi2_pid8472_pipe4]}
    security:  --- parseCommandLine converted : 
    into:
    []
    security:  --- parseCommandLine converted : -Xmx512m -Xss=256K
    into:
    [-Xmx512m, -Xss=256K]
    network: Created version ID: 2.0+
    network: Created version ID: 1.6.0.10
    basic: RemoteJVMLauncher.start(), pipe=Pipe{transport=WindowsNamedPipe: server: false; readPipe: jpi2_pid8472_pipe2, readBufferSz: 4096; writePipe: jpi2_pid8472_pipe3, writeBufferSz: 4096, initiatingSide=false} message: LaunchJVMAppletMessage{appletID=1, conversationID=1, javaHome=C:\Program Files\Java\jre7, launchTime=15798419052, sendKill=false, [sun.plugin2.main.client.PluginMain, write_pipe_name=jpi2_pid8472_pipe5,read_pipe_name=jpi2_pid8472_pipe4]}
    basic: Thread[RemoteJVMLauncher-1,5,main] running...
    basic: RemoteJVMLauncher.afterStart(): initializing streamers
    handleLaunchJVM(): RemoteJVMLauncer.setCallBack for 1
    security: blacklist: hasBeenModifiedSince 1367517921973 (we have 1367506003185)
    network: CleanupThread used 36730 us
    handleLaunchJVM(): now unregisterApplet 1
    basic: PluginMain.unregisterApplet: 1 from mananger sun.plugin2.applet.JNLP2Manager@2e8d7a0
Andrew Thompson
  • 168,117
  • 40
  • 217
  • 433
jebrick
  • 339
  • 1
  • 6
  • 14
  • Try following Oracle's [Troubleshooting Guide for Java SE 7 Desktop Technologies](http://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-Desktop/html/plugin.html) and see if it helps to diagnose your issue. From the description, perhaps Java 7u21 is incompatible with your application and an update of the Java system to Java 7u21 has caused your issue. – jewelsea May 02 '13 at 19:56
  • I believe this is the case. We will update to a non-selfsigned applet in the near future. In development, I believe we can work around it by not calling JNLP to launch – jebrick May 03 '13 at 13:20
  • Did you fix this problem? – jsosnowski Aug 02 '17 at 06:40

2 Answers2

1

The answer is that as of Java 7_21, you can no longer use self signed applets with JNLP. Our work around, for development, is to call the applet not using JNLP.

jebrick
  • 339
  • 1
  • 6
  • 14
  • 1
    *"you can no longer use self signed applets with JNLP"* I thought that was incorrect and confirmed it was incorrect by testing one of my own self-signed apps. - it works just fine with the standard security setting so long as the user clicks OK at the appearance of the scary dialog. See [Java 7 Update 21 Security Improvements in Detail](http://blog.eisele.net/2013/04/java-7-update-21-security-improvements.html) for more info. – Andrew Thompson May 03 '13 at 16:14
0

You specified -Xss=256K in your java-vm-args when you should have specified -Xss256K (no equals sign).

Rich
  • 1