Skip to Content
avatar image
Former Member

JMS HERMES v1.15 Issue on getting Queue Properties

Dear All,

we are facing an issue regarding JMS and HERMES v1.15.

We followed exactly the tutorial http://www.hermesjms.com/demos/hermes_sapee5.html which explains how accessing a SAP JMS queue.

This tutorial is based on HERMES v1.11. The PI system accessed is PI 7.11 SP8.

Clathpath libraries entered as indicated in tutorial.

The solution runs correctly except on one point:

When trying to access a queue properties we get the following error:

hermes.HermesException:
RuntimeException invoking method getData

at hermes.ext.sap.SAPJMSAdmin.<init>(SAPJMSAdmin.java:95)

    at hermes.ext.sap.SAPJMSAdminFactory.createSession(SAPJMSAdminFactory.java:41)
    at hermes.impl.HermesAdminAdapter.getAdmin(HermesAdminAdapter.java:64)
    at hermes.impl.HermesAdminAdapter.getStatistics(HermesAdminAdapter.java:137)
    at hermes.impl.DefaultHermesImpl.getStatistics(DefaultHermesImpl.java:1103)
    at hermes.swing.actions.GetDestinationStatisticsAction$1.run(GetDestinationStatisticsAction.java:85)
    at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170)
    at java.lang.Thread.run(Thread.java:619)

hermes.HermesException:
RuntimeException invoking method getData
  
    at hermes.ext.sap.SAPJMSAdmin.getData(SAPJMSAdmin.java:216)
    at hermes.ext.sap.SAPJMSAdmin.<init>(SAPJMSAdmin.java:86)
    at hermes.ext.sap.SAPJMSAdminFactory.createSession(SAPJMSAdminFactory.java:41) 
    at hermes.impl.HermesAdminAdapter.getAdmin(HermesAdminAdapter.java:64)  
    at hermes.impl.HermesAdminAdapter.getStatistics(HermesAdminAdapter.java:137) 
    at hermes.impl.DefaultHermesImpl.getStatistics(DefaultHermesImpl.java:1103)  
    at hermes.swing.actions.GetDestinationStatisticsAction$1.run(GetDestinationStatisticsAction.java:85) 
    at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170)  
    at java.lang.Thread.run(Thread.java:619)

javax.management.RuntimeMBeanException:
RuntimeException invoking method getData
 
    at com.sap.engine.services.jmx.MBeanServerConnectionImpl.invokeMbsInternal(MBeanServerConnectionImpl.java:687)  
    at com.sap.engine.services.jmx.MBeanServerConnectionImpl.invoke(MBeanServerConnectionImpl.java:464)  
    at hermes.ext.sap.SAPJMSAdmin.getData(SAPJMSAdmin.java:213)  
    at hermes.ext.sap.SAPJMSAdmin.<init>(SAPJMSAdmin.java:86)  
    at hermes.ext.sap.SAPJMSAdminFactory.createSession(SAPJMSAdminFactory.java:41) 
    at hermes.impl.HermesAdminAdapter.getAdmin(HermesAdminAdapter.java:64) 
    at hermes.impl.HermesAdminAdapter.getStatistics(HermesAdminAdapter.java:137) 
    at hermes.impl.DefaultHermesImpl.getStatistics(DefaultHermesImpl.java:1103) 
    at hermes.swing.actions.GetDestinationStatisticsAction$1.run(GetDestinationStatisticsAction.java:85) 
    at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170) 
    at java.lang.Thread.run(Thread.java:619)

Caused by:
java.lang.NullPointerException
 
    at com.sap.jms.gui.JMSMonitoringManager.getDestinationContainerMonitoringData(JMSMonitoringManager.java:195) 
    at com.sap.jms.gui.JMSManagementInterfaceImpl.getData(JMSManagementInterfaceImpl.java:218) 
    at sun.reflect.GeneratedMethodAccessor516.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:592)  
    at com.sap.pj.jmx.introspect.DefaultMBeanInvoker.invoke(DefaultMBeanInvoker.java:58)  
    at com.sap.pj.jmx.mbeaninfo.AdditionalInfoProviderMBean.invoke(AdditionalInfoProviderMBean.java:289)  
    at com.sap.pj.jmx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:944)  
    at com.sap.pj.jmx.server.interceptor.MBeanServerWrapperInterceptor.invoke(MBeanServerWrapperInterceptor.java:288) 
    at com.sap.engine.services.jmx.CompletionInterceptor.invoke(CompletionInterceptor.java:461) 
    at com.sap.pj.jmx.server.interceptor.BasicMBeanServerInterceptor.invoke(BasicMBeanServerInterceptor.java:277) 
    at com.sap.jmx.provider.ProviderInterceptor.invoke(ProviderInterceptor.java:340)  
    at com.sap.engine.services.jmx.RedirectInterceptor.invoke(RedirectInterceptor.java:340)  
    at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:330) 
    at com.sap.engine.services.jmx.MBeanServerSecurityWrapper.invoke(MBeanServerSecurityWrapper.java:288)  
    at com.sap.engine.services.jmx.MBeanServerInvoker.invokeMbs(MBeanServerInvoker.java:154) 
    at com.sap.engine.services.jmx.ClusterInterceptor.invokeMbs(ClusterInterceptor.java:220) 
    at com.sap.engine.services.jmx.ClusterInterceptor.invoke(ClusterInterceptor.java:803) 
    at com.sap.engine.services.jmx.MBeanServerInterceptorInvoker.invokeMbs(MBeanServerInterceptorInvoker.java:102) 
    at com.sap.engine.services.jmx.connector.p4.P4ConnectorServerImpl.invokeMbs(P4ConnectorServerImpl.java:60) 
    at com.sap.engine.services.jmx.connector.p4.P4ConnectorServerImplp4_Skel.dispatch(P4ConnectorServerImplp4_Skel.java:64) 
    at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:362) 
    at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:69) 
    at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:67)  
    at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:41)  
    at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:977) 
    at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:57)
    at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:55) 
    at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122) 
    at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101) 
    at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:327)


although getting the popup window with queue statistics.

Could you please help for finding a solution. Thanks to you all. Christophe. 
   

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • avatar image
    Former Member
    Feb 04, 2013 at 05:58 PM

    Hi Christophe,

    Are you sure that the user account you're working with has all the necessary permissions? My experience has been that you definitely need an admin account to scan the JNDI context, create sessions, and so on.

    Also, depending on what you're trying to do, I would point you in the direction of this blog:

    http://scn.sap.com/people/james.wood/blog/2010/09/28/sap-jms-provider-management-console. This tool provides a WDJ alternative to Hermes that can be easier to work with in some cases.

    Thanks,

    James

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi James, Thanks a lot for your fast reply. I will investigate @customer side and keep you informed. We will see if your solution can be used in our case. Best regards. Christophe.