2009-10-08 8 views
5

Gibt es eine Begrenzung für die Anzahl der Warteschlangen, die ich innerhalb einer einzelnen Verbindung und einer einzigen Sitzung öffnen kann? Ich kann derzeit 128 Warteschlangen öffnen und Nachrichten an sie senden. Wenn ich versuche, 129 ich die folgende Fehlermeldung erhalten zu öffnen ...WSMQ-Warteschlangenlimit

Dank

Fehler:

com.ibm.msg.client.jms.DetailedResourceAllocationException: JMSWMQ2008: Failed to open MQ queue 'TestQueue_129'. JMS attempted to perform an MQOPEN, but WebSphere MQ reported an error. Use the linked exception to determine the cause of this error. Check that the specified queue and queue manager are defined correctly. 
    at com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(Reason.java:579) 
    at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:219) 
    at com.ibm.msg.client.wmq.internal.WMQMessageProducer.checkJmqiCallSuccess(WMQMessageProducer.java:1000) 
    at com.ibm.msg.client.wmq.internal.WMQMessageProducer.checkJmqiCallSuccess(WMQMessageProducer.java:956) 
    at com.ibm.msg.client.wmq.internal.WMQMessageProducer.access$800(WMQMessageProducer.java:59) 
    at com.ibm.msg.client.wmq.internal.WMQMessageProducer$SpiIdentifiedProducerShadow.initialise(WMQMessageProducer.java:727) 
    at com.ibm.msg.client.wmq.internal.WMQMessageProducer.<init>(WMQMessageProducer.java:931) 
    at com.ibm.msg.client.wmq.internal.WMQSession.createProducer(WMQSession.java:783) 
    at com.ibm.msg.client.jms.internal.JmsSessionImpl.createProducer(JmsSessionImpl.java:1122) 
    at com.ibm.msg.client.jms.internal.JmsQueueSessionImpl.createSender(JmsQueueSessionImpl.java:131) 
    at com.ibm.mq.jms.MQQueueSession.createSender(MQQueueSession.java:147) 
    at com.ibm.mq.jms.MQQueueSession.createProducer(MQQueueSession.java:248) 
    at MyQueue.<init>(MyQueue.java:25) 
    at Main.main(Main.java:54) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at com.ibm.ws.client.applicationclient.launchClient.createContainerAndLaunchApp(launchClient.java:788) 
    at com.ibm.ws.client.applicationclient.launchClient.main(launchClient.java:493) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at com.ibm.wsspi.bootstrap.WSLauncher.launchMain(WSLauncher.java:213) 
    at com.ibm.wsspi.bootstrap.WSLauncher.main(WSLauncher.java:93) 
    at com.ibm.wsspi.bootstrap.WSLauncher.run(WSLauncher.java:74) 
    at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at org.eclipse.core.launcher.Main.invokeFramework(Main.java:340) 
    at org.eclipse.core.launcher.Main.basicRun(Main.java:282) 
    at org.eclipse.core.launcher.Main.run(Main.java:981) 
    at com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLauncher.java:330) 
    at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:108) 
Caused by: com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2017' ('MQRC_HANDLE_NOT_AVAILABLE'). 
    at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:206) 
    ... 39 more 
WSCL0100E: Exception received: java.lang.reflect.InvocationTargetException 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at com.ibm.ws.client.applicationclient.launchClient.createContainerAndLaunchApp(launchClient.java:788) 
    at com.ibm.ws.client.applicationclient.launchClient.main(launchClient.java:493) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at com.ibm.wsspi.bootstrap.WSLauncher.launchMain(WSLauncher.java:213) 
    at com.ibm.wsspi.bootstrap.WSLauncher.main(WSLauncher.java:93) 
    at com.ibm.wsspi.bootstrap.WSLauncher.run(WSLauncher.java:74) 
    at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at org.eclipse.core.launcher.Main.invokeFramework(Main.java:340) 
    at org.eclipse.core.launcher.Main.basicRun(Main.java:282) 
    at org.eclipse.core.launcher.Main.run(Main.java:981) 
    at com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLauncher.java:330) 
    at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:108) 
Caused by: java.lang.NullPointerException 
    at MyQueue.sendMessage(MyQueue.java:39) 
    at Main.main(Main.java:55) 
    ... 27 more 
+0

Alle Informationen oder Vorschläge sind willkommen. – x1a0

Antwort

4

Dies wird gesteuert durch den MAXHANDS Attribut des WS-Managers.

Der Standardwert ist 256. Je nachdem, wie Sie auf die Warteschlangen zugreifen, können die Klassen jeweils zweimal geöffnet werden, was zu maximal 128 offenen Warteschlangen führt.

Sie können die Warteschlangengriffe in runmqsc mit dem Befehl DIS QSTATUS anzeigen.