Skip to Content
0
Former Member
Apr 22, 2008 at 10:56 AM

Deployment JMS Properties not handled.

36 Views

Hi.

Apologies if this is something wrong on my part - it could very well be.

I have been trying to implement the jms queue properties, as detailed here:

[http://help.sap.com/saphelp_nwce10/helpdata/en/46/b10fcade5c0763e10000000a1553f6/frameset.htm]

I have a simple ejb module to receive a message and rollback immediately in order to test this.

Upon deployment, the deliveryAttemptsLimited and maxDeliveryAttempts are implemented and perform as the document states.

[http://help.sap.com/saphelp_nwce10/helpdata/en/46/3156399f1214dfe10000000a155369/frameset.htm]

However, the deliveryDelayInterval and errorDestination properties seem to be ignored.

With the following jms-resources.xml, a message placed on the queue is processed twice (remember the ejb module just rolls back), and then disappears, and does not use any kind of delay before retrying and does not use the errorQueue specified.

Here is the jms-resources.xml.

<?xml version="1.0" encoding="UTF-8"?>

http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="jms-resources.xsd">

<application-name>dts-jms</application-name>

<connection-factory>

<name>MortyQueueFactoryTest</name>

<sap-local-factory-type>

<type>javax.jms.XAQueueConnectionFactory</type>

<virtual-provider>default</virtual-provider>

<property>

<description>Client ID</description>

<config-property-name>clientID</config-property-name>

<config-property-value>

myClientApp

</config-property-value>

</property>

</sap-local-factory-type>

</connection-factory>

<destination>

<name>MortyQueueTest</name>

<type>javax.jms.Queue</type>

<sap-local-destination-type>

<virtual-provider>default</virtual-provider>

<property><config-property-name>deliveryAttemptsLimited</config-property-name><config-property-value>True</config-property-value></property>

<property><config-property-name>maxDeliveryAttempts</config-property-name><config-property-value>2</config-property-value></property>

<property><config-property-name>deliveryDelayInterval</config-property-name><config-property-value>60000</config-property-value></property>

<property><config-property-name>errorDestination</config-property-name><config-property-value>MortyErrorDestinationTest</config-property-value></property>

</sap-local-destination-type>

</destination>

<destination>

<name>MortyErrorDestinationTest</name>

<type>javax.jms.Queue</type>

<sap-local-destination-type>

<virtual-provider>default</virtual-provider>

</sap-local-destination-type>

</destination>

</jms-resources>

I just cannot see what is wrong with the file.

Any pointers? Im more than happy to be completely wrong here...

Does it require a restart of the application server?

Regards,

Andrew