Skip to content

Commit ff79138

Browse files
author
Dave Syer
committed
Alternative fix for Rabbit listener transactions
Never inject a transaction manager (user can create his own "rabbitListenerContainerFactory" bean if he wants an actual non-JTA transaction manager. See gh-3432
1 parent 67933ab commit ff79138

File tree

2 files changed

+0
-27
lines changed

2 files changed

+0
-27
lines changed

spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/amqp/RabbitAnnotationDrivenConfiguration.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,10 @@
2020
import org.springframework.amqp.rabbit.config.RabbitListenerConfigUtils;
2121
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
2222
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
23-
import org.springframework.beans.factory.annotation.Autowired;
2423
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
2524
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
2625
import org.springframework.context.annotation.Bean;
2726
import org.springframework.context.annotation.Configuration;
28-
import org.springframework.transaction.PlatformTransactionManager;
2927

3028
/**
3129
* Configuration for Spring AMQP annotation driven endpoints.
@@ -37,19 +35,12 @@
3735
@ConditionalOnClass(EnableRabbit.class)
3836
class RabbitAnnotationDrivenConfiguration {
3937

40-
@Autowired(required = false)
41-
private PlatformTransactionManager transactionManager;
42-
4338
@Bean
4439
@ConditionalOnMissingBean(name = "rabbitListenerContainerFactory")
4540
public SimpleRabbitListenerContainerFactory rabbitListenerContainerFactory(
4641
ConnectionFactory connectionFactory, RabbitProperties config) {
4742
SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
4843
factory.setConnectionFactory(connectionFactory);
49-
if (this.transactionManager != null
50-
&& config.getListener().isUseTransactionManager()) {
51-
factory.setTransactionManager(this.transactionManager);
52-
}
5344
return factory;
5445
}
5546

spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/amqp/RabbitProperties.java

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,6 @@ public class RabbitProperties {
6262
*/
6363
private String addresses;
6464

65-
private Listener listener = new Listener();
66-
67-
public Listener getListener() {
68-
return this.listener;
69-
}
70-
7165
public String getHost() {
7266
if (this.addresses == null) {
7367
return this.host;
@@ -162,16 +156,4 @@ public void setVirtualHost(String virtualHost) {
162156
this.virtualHost = ("".equals(virtualHost) ? "/" : virtualHost);
163157
}
164158

165-
public static class Listener {
166-
private boolean useTransactionManager = false;
167-
168-
public boolean isUseTransactionManager() {
169-
return this.useTransactionManager;
170-
}
171-
172-
public void setUseTransactionManager(boolean useTransactionManager) {
173-
this.useTransactionManager = useTransactionManager;
174-
}
175-
}
176-
177159
}

0 commit comments

Comments
 (0)