cancel
Showing results for 
Search instead for 
Did you mean: 

JMS HERMES v1.15 Issue on getting Queue Properties

0 Kudos

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. 
   

Accepted Solutions (0)

Answers (1)

Answers (1)

jwood_bowdark
Active Participant
0 Kudos

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

0 Kudos

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.