Hi Simon,
Yes this is a known problem, although I don't think there's a bugzilla open
for it. I guess WSIF isn't closing its queues properly. The
WSIFJMSDestination is cached inside the WSIFPort (for soap, axis and native
jms), and the WSIFJMSDestination is where the Queue handles are stored.
Assuming that the WSIFJMSDestination is being reused correctly, WSIF should
keep reusing the same queue handle for the request queue. So the problem is
more likely to be in one of the WSIFJMSDestination.setReplyToQueue methods.
When using a temporary replyTo queue, there should only be one temporary
replyTo queue that is reused for every request. The queue handle for a
permanent replyTo queue should be reused if the permanent replyTo queue
isn't changed. However the setReplyToQueue methods don't close the queue
properly when changing replyTo queues, so that may be the problem; but the
problem was found previously using a single permanent replyTo queue.
Are you using temporary or permanent replyTo queues?
Thanks
Mark
Mark Whitlock, IBM Hursley Web Services
----- Forwarded by Mark Whitlock/UK/IBM on 31/03/03 09:55 -----
"Simon Solomon"
<[EMAIL PROTECTED]> To: [EMAIL PROTECTED]
cc:
28/03/03 21:08 Subject: Soap Over JMS
Please respond to
wsif-user
Hi,
I am successfully using WSIF to execute SOAP over JMS.
However, when I use the same WSIFPort object to execute numerous
consecutive "wsifOperation.executeInputOnlyOperation"
method calls, I get the following exception
WSIF Jms support caught 'javax.jms.ResourceAllocationException: MQJMS2008:
failed to open MQ queue'
This happens when the execution count exceeds the "Maximum Open Handles"
settings in IBM
MQ Series.
Is there any way to get around this with out increasing the "Maximum Open
Handles" setting?
Configuration Information:
WSIF 2.0 Nightly build 3/21/03
IBM MQ Series 5.3 on WIN 2K
Soap Provider: WSIFDynamicProvider_ApacheAxis
Binding and Port Portion in WSDL:
<binding name='XTCP211JMS_SOAPServiceBinding' type
='tns:XTCP211JMS_PortType'>
<soap:binding style='document' transport
='http://schemas.xmlsoap.org/soap/jms' />
<operation name='Execute'>
<soap:operation soapAction='http://soap.fsg.com/fedgate/RPC/XTCP211JMS'
style='document' />
<input>
<soap:body use='literal' namespace
='http://www.fds.com/schemas/XTCP211JMS' />
</input>
</operation>
</binding>
<service name='XTCP211JMS_Service'>
<port name='XTCP211JMS_SOAPServicePort' binding
='tns:XTCP211JMS_SOAPServiceBinding'>
<jms:address destinationStyle="queue"
jndiDestinationName="MPSI_TEST_2"
jndiConnectionFactoryName="MpsiConnectionFactory"
initialContextFactory
="com.sun.jndi.fscontext.RefFSContextFactory"
jndiProviderURL="file://C:/JNDIDirectory/mpsi">
</jms:address>
</port>
</service>
Thanks
Simon Solomon
[EMAIL PROTECTED]