<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=magnus" rel="nofollow">Magnus Heino</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-7478?redirect=false" rel="nofollow">SPR-7478</a></strong> and commented</p>
<p dir="auto">Hi. I just upgraded from 3.0.2 to 3.0.4 and my log is flooded with WARN messages. The app still seems to work, but jms communication seems to take some extra time...</p>
<p dir="auto">Looking at the code in the debugger, and the error message, a session seems to be null where expected not to. Is there a workaround, or something that I have missed in my config that is exposed now in 3.0.4, or is this a bug?</p>
<p dir="auto">&lt;bean id="transactionalMessageListenerContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer" abstract="true"&gt;<br>
&lt;property name="cacheLevelName" value="CACHE_NONE"/&gt;<br>
&lt;property name="concurrentConsumers" value="1"/&gt;<br>
&lt;property name="connectionFactory" ref="connectionFactory"/&gt;<br>
&lt;property name="sessionTransacted" value="true"/&gt;<br>
&lt;property name="transactionManager" ref="transactionManager"/&gt;<br>
&lt;property name="autoStartup" value="false" /&gt;<br>
&lt;/bean&gt;<br>
&lt;bean id="addressDefectTrackerContainer" parent="transactionalMessageListenerContainer"&gt;<br>
&lt;property name="concurrentConsumers" value="#{settings.addressDefectTracker.messageListener.concurrentConsumers}" /&gt;<br>
&lt;property name="maxConcurrentConsumers" value="#{settings.addressDefectTracker.messageListener.maxConcurrentConsumers}" /&gt;<br>
&lt;property name="idleTaskExecutionLimit" value="#{settings.addressDefectTracker.messageListener.idleTaskExecutionLimit}" /&gt;<br>
&lt;property name="maxMessagesPerTask" value="#{settings.addressDefectTracker.messageListener.maxMessagesPerTask}" /&gt;<br>
&lt;property name="destination" ref="jmsAddressDefectTrackerChannel" /&gt;<br>
&lt;/bean&gt;</p>
<p dir="auto">&lt;si-jms:message-driven-channel-adapter<br>
channel="defectTrackerChannel" container="addressDefectTrackerContainer" acknowledge="transacted" connection-factory="connectionFactory"/&gt;</p>
<p dir="auto">2010-08-20 12:00:44,312 [addressDefectTrackerContainer-2] DEBUG Initiating transaction rollback on listener exception at org.springframework.jms.listener.DefaultMessageListenerContainer.rollbackOnException(AbstractPollingMessageListenerContainer.java:388)<br>
java.lang.NullPointerException<br>
at org.springframework.jms.listener.AbstractMessageListenerContainer.commitIfNecessary(AbstractMessageListenerContainer.java:571)<br>
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:354)<br>
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:241)<br>
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1056)<br>
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1048)<br>
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)<br>
at java.lang.Thread.run(Thread.java:619)<br>
2010-08-20 12:00:49,349 [addressDefectTrackerContainer-2] WARN Setup of JMS message listener invoker failed for destination 'Queue[LM.UTV_maghei.ORIGO.GEODATA.ADDRESS.DEFECTTRACKER]' - trying to recover. Cause: null at org.springframework.jms.listener.DefaultMessageListenerContainer.handleListenerSetupFailure(DefaultMessageListenerContainer.java:818)<br>
java.lang.NullPointerException<br>
at org.springframework.jms.listener.AbstractMessageListenerContainer.commitIfNecessary(AbstractMessageListenerContainer.java:571)<br>
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:354)<br>
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:241)<br>
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1056)<br>
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1048)<br>
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)<br>
at java.lang.Thread.run(Thread.java:619)<br>
2010-08-20 12:00:49,350 [addressDefectTrackerContainer-2] INFO  Successfully refreshed JMS Connection at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:862)</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 3.0.4</p>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398108115" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/12306" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/12306/hovercard" href="https://github.com/spring-projects/spring-framework/issues/12306">#12306</a> NPE in DefaultMessageListenerContainer while committing and no message was received (<em><strong>"is duplicated by"</strong></em>)</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398107789" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/12259" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/12259/hovercard" href="https://github.com/spring-projects/spring-framework/issues/12259">#12259</a> NPE in AbstractPollingMessageListenerContainer when committing transaction after message receive timeout (<em><strong>"is duplicated by"</strong></em>)</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398106175" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/12024" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/12024/hovercard" href="https://github.com/spring-projects/spring-framework/issues/12024">#12024</a> DefaultMessageListenerContainer transacted session race condition if no messages for a while when using shared/cached sessions</li>
</ul>
<p dir="auto"><strong>Referenced from:</strong> commits <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/spring-projects/spring-framework/commit/3e5aca86d58f37ffd225c9e43e08296bdd12a638/hovercard" href="https://github.com/spring-projects/spring-framework/commit/3e5aca86d58f37ffd225c9e43e08296bdd12a638"><tt>3e5aca8</tt></a></p>
<p dir="auto">4 votes, 9 watchers</p>
<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=cbeams" rel="nofollow">Chris Beams</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-8203?redirect=false" rel="nofollow">SPR-8203</a></strong> and commented</p>
<p dir="auto">Early in Spring 3.1 M1 a reserved 'default' profile name was introduced.  We backed it out under the rationale that it's less magical to express defaults explicitly through <code class="notranslate">spring.profiles.default</code> or <code class="notranslate">ConfigurableEnvironment#setDefaultProfiles</code>.</p>
<p dir="auto">This can be (re-)introduced; just wanted to keep it simple to start and see if it's truly wanted/needed.</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 3.1 M1</p>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398118358" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/13919" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/13919/hovercard" href="https://github.com/spring-projects/spring-framework/issues/13919">#13919</a> Add ability to specify whether a bean profile is active by default (<em><strong>"is duplicated by"</strong></em>)</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398108948" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/12434" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/12434/hovercard" href="https://github.com/spring-projects/spring-framework/issues/12434">#12434</a> Support 'default' profile (<em><strong>"supersedes"</strong></em>)</li>
</ul>
<p dir="auto"><strong>Referenced from:</strong> commits <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/spring-projects/spring-framework/commit/c4a13507f0bcb10bd870543e8a1f1f130505c321/hovercard" href="https://github.com/spring-projects/spring-framework/commit/c4a13507f0bcb10bd870543e8a1f1f130505c321"><tt>c4a1350</tt></a></p>
<p dir="auto">4 votes, 6 watchers</p>