VMware Cloud Community
nathanielvs
Contributor
Contributor
Jump to solution

Incorrect JVM WebSphereUtil

I just picked up maintaining Hyperic at work from some one else.  I went to look into the agent logs on a server that Hyperic had a recent alert for.  Once there I saw the logs were being filled with EDT Error sender thread and EDT ERROR Collector Thread WebSphereUtil Incorrect JVM. Both are followed by java.lang.NoClassDefFoundError: com/ibm/ws/runtime/util/utilHandlerClass .  When I asked the person who was working with Hyperic what to do to fix this problem they suggested poking around and that all previous fixes had been different so they could not give any advice.  Is there a good way to tell if this problem is coming up because WebSphere correctly or Hyperic is configured wrong? Is this something someone has run into before?

0 Kudos
1 Solution

Accepted Solutions
nathanielvs
Contributor
Contributor
Jump to solution

I have solved my problem. I changes the environment variable to point towards the jvm located in web sphere and then had to change hyperic/agent/conf/agent.properties to work with web sphere 6.1

http://monitor.innovatedigital.com:7080/ui_docs/DOC/WebSphere.html

Thank you for your help.

View solution in original post

0 Kudos
3 Replies
admin
Immortal
Immortal
Jump to solution

Hi,

Will be more helpfully if you add more details:

  • HQ version
  • WebSphere version
  • OS
  • What do you see in WebSphere logs
  • What user experience
  • Is it work before you picked up

From your post, looks like as missing class ( java.lang.NoClassDefFoundError: com/ibm/ws/runtime/util/utilHandlerClass), in addition seems as WebSphere issue.

Here is similar issue - http://www-01.ibm.com/support/docview.wss?uid=swg1PM85252

Another thing wrong JVM, so you should run with IBM JAVA

Good luck

0 Kudos
nathanielvs
Contributor
Contributor
Jump to solution

HQ 5.0

WS 6.1

AIX

I changed to using the IBM java in my path before starting up the hyperic agent.  Now I am getting the stack overflow as described in the link you provided.  I am not sure how to implement there small fix however.

The fix they suggest is to "

Inside application code, load the class explicitly in the

code prior to the error.

Class.forName("com.ibm.ws.runtime.util.utilHandlerClass");"

The  tail end of the hyperic agent log looks something like "

  at sun.net.www.protocol.jar.JarURLConnection.<init>(JarURLConnection.java:90)

        at sun.net.www.protocol.jar.Handler.openConnection(Handler.java:42)

        at java.net.URL.openConnection(URL.java:977)

        at sun.misc.URLClassPath$Loader.getResource(URLClassPath.java:758)

        at sun.misc.URLClassPath.getResource(URLClassPath.java:323)

        at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:959)

        at java.security.AccessController.doPrivileged(AccessController.java:274)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:487)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:604)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:561)

        at com.ibm.ws.runtime.util.URLHandlerFactory.createURLStreamHandler(URLHandlerFactory.java:140)

        at java.net.URL.getURLStreamHandler(URL.java:1138)

        at java.net.URL.<init>(URL.java:606)

        at java.net.URL.<init>(URL.java:498)

        at java.net.URL.<init>(URL.java:447)

        at java.net.JarURLConnection.parseSpecs(JarURLConnection.java:181)

        at java.net.JarURLConnection.<init>(JarURLConnection.java:164)

        at sun.net.www.protocol.jar.JarURLConnection.<init>(JarURLConnection.java:90)

        at sun.net.www.protocol.jar.Handler.openConnection(Handler.java:42)

        at java.net.URL.openConnection(URL.java:977)

        at sun.misc.URLClassPath$Loader.getResource(URLClassPath.java:758)

        at sun.misc.URLClassPath.getResource(URLClassPath.java:323)

        at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:959)

        at java.security.AccessController.doPrivileged(AccessController.java:274)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:487)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:604)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:561)

        at com.ibm.ws.runtime.util.URLHandlerFactory.createURLStreamHandler(URLHandlerFactory.java:140)

        at java.net.URL.getURLStreamHandler(URL.java:1138)

        at java.net.URL.<init>(URL.java:606)

        at java.net.URL.<init>(URL.java:498)

        at java.net.URL.<init>(URL.java:447)

        at com.ibm.jsse2.ac$a_.a(ac$a_.java:81)

        at com.ibm.jsse2.ac$a_.engineInit(ac$a_.java:43)

        at javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:3)

        at org.apache.http.conn.ssl.SSLSocketFactory.createSSLContext(SSLSocketFactory.java:186)

        at org.apache.http.conn.ssl.SSLSocketFactory.createDefaultSSLContext(SSLSocketFactory.java:209)

        at org.apache.http.conn.ssl.SSLSocketFactory.<init>(SSLSocketFactory.java:333)

        at org.apache.http.conn.ssl.SSLSocketFactory.getSocketFactory(SSLSocketFactory.java:165)

        at org.apache.http.impl.conn.SchemeRegistryFactory.createDefault(SchemeRegistryFactory.java:45)

        at org.apache.http.impl.client.AbstractHttpClient.createClientConnectionManager(AbstractHttpClient.java:294

)

        at org.apache.http.impl.client.AbstractHttpClient.getConnectionManager(AbstractHttpClient.java:445)

        at org.hyperic.util.http.HQHttpClient.<init>(HQHttpClient.java:38)

        at org.hyperic.lather.client.LatherHTTPClient.<init>(LatherHTTPClient.java:89)

        at org.hyperic.hq.bizapp.client.AgentCallbackClient.invokeLatherCall(AgentCallbackClient.java:160)

        at org.hyperic.hq.bizapp.client.AgentCallbackClient.invokeLatherCall(AgentCallbackClient.java:146)

        at org.hyperic.hq.bizapp.client.MeasurementCallbackClient.measurementSendReport(MeasurementCallbackClient.j

ava:62)

        at org.hyperic.hq.measurement.agent.server.SenderThread.sendBatch(SenderThread.java:446)

        at org.hyperic.hq.measurement.agent.server.SenderThread.sendData(SenderThread.java:614)

        at org.hyperic.hq.measurement.agent.server.SenderThread.run(SenderThread.java:604)

        at java.lang.Thread.run(Thread.java:797)

"

Any advice on where in the install directory I would find a file to change?

0 Kudos
nathanielvs
Contributor
Contributor
Jump to solution

I have solved my problem. I changes the environment variable to point towards the jvm located in web sphere and then had to change hyperic/agent/conf/agent.properties to work with web sphere 6.1

http://monitor.innovatedigital.com:7080/ui_docs/DOC/WebSphere.html

Thank you for your help.

0 Kudos