Search code examples
javajakarta-eewildflywildfly-8

Property dLQMaxResent is not respected using WildFly-8.1.0.Final


I have a problem using message-driven beans, since the dlQMaxResent does not seem to be respected, using WildFly-8.1.0.Final as application server.

My jboss-ejb3.xml contains the following settings

<?xml version="1.1" encoding="UTF-8"?>
<jboss:ejb-jar xmlns:jboss="http://www.jboss.com/xml/ns/javaee"
               xmlns="http://java.sun.com/xml/ns/javaee"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:s="urn:security:1.1"
               xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-ejb3-2_0.xsd http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
               impl-version="2.0" version="3.1">
    <jboss:enterprise-beans>
        <message-driven id="DequeuerBean">
            <ejb-name>DequeuerBean</ejb-name>
            <activation-config>
                <activation-config-property>
                    <activation-config-property-name>dLQMaxResent</activation-config-property-name>
                    <activation-config-property-value>2147483647</activation-config-property-value>
                </activation-config-property>
                <activation-config-property>
                    <activation-config-property-name>maxSession</activation-config-property-name>
                    <activation-config-property-value>20</activation-config-property-value>
                </activation-config-property>
            </activation-config>
        </message-driven>
        <...>
</jboss:ejb-jar>

Anyone got an idea?


Solution

  • After doing a ton of research/investigation, I found out that dlQMaxResent is not respected anymore. The only way to achieve something similar is adding a default configuration to <subsystem xmlns="urn:jboss:domain:messaging:2.0">:

    <address-settings>
        <address-setting match="#">
            <dead-letter-address>jms.queue.DLQ</dead-letter-address>
            <expiry-address>jms.queue.ExpiryQueue</expiry-address>
            <redelivery-delay>5000</redelivery-delay>
            <max-delivery-attempts>2147483647</max-delivery-attempts>
            <max-size-bytes>10485760</max-size-bytes>
            <page-size-bytes>2097152</page-size-bytes>
            <address-full-policy>PAGE</address-full-policy>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
        </address-setting>
    </address-settings>
    

    ...which works pretty good (for me).