Forum Discussion

CuteDBA_135397's avatar
CuteDBA_135397
Icon for Nimbostratus rankNimbostratus
Oct 10, 2013

Can't open java applet component when connecting to the application through Load balancer F5

Hi

We have one new building and the workstations are connected to our network. There is two systems that has java applet components that when clicked, it does not load the java applet. But when connecting to the application server node directly, these java applet components are opened. Al other buildings in other locations are working fine even through the current F5. Only this site has the issue !!! Our collegues checked for the workstation configurations and also bring one workstation to our IT department building and connected to same applications through the same F5, it Worked without any issues.

I have one system for Oracle applications 12.1 that I enabled the java debugging console. The output showed exception

network: Connecting http://hrms.domain.org:8080/ with proxy=DIRECT
java.lang.InterruptedException
    at java.lang.Object.wait(Native Method)
 at sun.plugin2.message.Queue.waitForMessage(Unknown Source)
 at sun.plugin2.message.Pipe.receive(Unknown Source)
 at sun.plugin2.main.client.MessagePassingExecutionContext.doCookieOp(Unknown Source)
    at sun.plugin2.main.client.MessagePassingExecutionContext.getCookie(Unknown Source)
 at sun.plugin2.main.client.PluginCookieSelector.getCookieFromBrowser(Unknown Source)
    at com.sun.deploy.net.cookie.DeployCookieSelector.getCookieInfo(Unknown Source)
 at com.sun.deploy.net.cookie.DeployCookieSelector.get(Unknown Source)
   at sun.net.www.protocol.http.HttpURLConnection.setCookieHeader(Unknown Source)
  at sun.net.www.protocol.http.HttpURLConnection.writeRequests(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
   at com.sun.deploy.net.DownloadEngine.getJarFileWithoutCache(Unknown Source)
 at com.sun.deploy.net.DownloadEngine.downloadJarWithoutCache(Unknown Source)
    at sun.plugin.PluginURLJarFileCallBack$2.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
   at sun.plugin.PluginURLJarFileCallBack.retrieve(Unknown Source)
 at sun.net.www.protocol.jar.URLJarFile.retrieve(Unknown Source)
 at sun.net.www.protocol.jar.URLJarFile.getJarFile(Unknown Source)
   at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source)
  at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source)
    at sun.plugin.net.protocol.jar.CachedJarURLConnection.connect(Unknown Source)
   at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFileInternal(Unknown Source)
    at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFile(Unknown Source)
    at com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown Source)
  at com.sun.deploy.security.DeployURLClassPath$JarLoader.access$1000(Unknown Source)
 at com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown Source)
  at com.sun.deploy.security.DeployURLClassPath$JarLoader.(Unknown Source)
  at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown Source)
 at java.security.AccessController.doPrivileged(Native Method)
   at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
 at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
 at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source)
   at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
  at java.security.AccessController.doPrivileged(Native Method)
   at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source)
    at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
  at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
 at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
  at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
  at java.lang.ClassLoader.loadClass(Unknown Source)
  at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
   at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
   at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
network: Cookie service is not available - use cache to determine "Cookie"
network: Connecting http://hrms.domain.org:8080/OA_JAVA/oracle/apps/fnd/jar/fndewt.jar with cookie "HRPROD=rClRylxIBeH_r2yj3qbDh_n8:S; BIGipServerPool-NDC-HRMS-8080=269161644.16415.0000; oracle.uix=0^^GMT+3:00^p"
network: Downloading resource: http://hrms.domain.org:8080/OA_JAVA/oracle/apps/fnd/jar/fndewt.jar
  Content-Length: 2,241,848
   Content-Encoding: null

We are using BIG-IP 11.0.0 Build 8037.0 Final

The issue only happen for that building, all other buildings connecting the same F5 are working fine without any issues.

When opening the page directly from the application server, like http://node1.domain.org:8080 , the java applet is downloadable and can be displayed.

Kindly advice

Thank you C.

  • Interesting. So what are the differences between the buildings? Different IP range? Different client software stack/version/push? Different DNS servers? Firewalls? Are there any iRules applied to the F5 VIP? IP filtering?

     

  • Hi Kevin

     

    This new building have different IP type than other buildings. The IP address of this site is 172.20.18.* and all other buildings are 172.16..

     

    But all client software are the same, the DNS server is the same and global to all sites.

     

    Maybe there is firewalls, as the new building clients are able to access to the systems, the only thing that is not accessible from the load balancer is the java components (like OpenView) and Java Applet of Oracle Forms 10g.

     

    I will need to check if there are iRules and/or IP filtering as I am not the administrator of that big IP.

     

    Can you tell me what are you looking for in iRules and IP filtering?

     

    Thanks C.

     

    • Kevin_Stewart's avatar
      Kevin_Stewart
      Icon for Employee rankEmployee
      Basically looking for any iRule and/or any IP filter. It would also help to know how the application works, specifically how the Java client works (what it calls and what ports it uses). This is generally accomplished with a client side capture.
  • Chris_Akker_129's avatar
    Chris_Akker_129
    Historic F5 Account

    Hi CuteDBA, I agree with Kevin that something is probably different about the new building, most likely a firewall setting is blocking a tcp port that the applet needs to connect to the big-ip.

     

    If you need assistance with capturing network traffic and decoding what is missing, you can certainly open a Support case with F5 Support. They are experts with helping capture traffic and decode what is going on ( or what's missing ). If all the other buildings are working fine, it is probably not an F5 issue, unless there are iRules or filters based on client IP addresses on the BIG-IP like Kevin suggested.

     

    Thanx, Chris.