Tôi nhận được dưới đây ngoại lệXuân AMQP + RabbitMQ 3.3.5 ACCESS_REFUSED - Đăng nhập bị từ chối sử dụng cơ chế xác thực PLAIN
org.springframework.amqp.AmqpAuthenticationException: com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile.
Cấu hình: RabbitMQ 3.3.5 trên cửa sổ
Mở tập tin cấu hình trong %APPDATA%\RabbitMQ\rabbit.config
tôi đã thực hiện thay đổi dưới đây theo số https://www.rabbitmq.com/access-control.html
[{rabbit, [{loopback_users, []}]}].
Tôi cũng đã cố gắng tạo người dùng/pwd - kiểm tra/kiểm tra dường như không phải là ma ke nó hoạt động.
Đã thử các bước từ this bài đăng.
Chi tiết cấu hình khác là như sau:
Tomcat tổ chức ứng dụng Spring Context:
<!-- Rabbit MQ configuration Start -->
<!-- Connection Factory -->
<rabbit:connection-factory id="rabbitConnFactory" virtual-host="/" username="guest" password="guest" port="5672"/>
<!-- Spring AMQP Template -->
<rabbit:template id="rabbitTemplate" connection-factory="rabbitConnFactory" routing-key="ecl.down.queue" queue="ecl.down.queue" />
<!-- Spring AMQP Admin -->
<rabbit:admin id="admin" connection-factory="rabbitConnFactory"/>
<rabbit:queue id="ecl.down.queue" name="ecl.down.queue" />
<rabbit:direct-exchange name="ecl.down.exchange">
<rabbit:bindings>
<rabbit:binding key="ecl.down.key" queue="ecl.down.queue"/>
</rabbit:bindings>
</rabbit:direct-exchange>
Trong điều khiển Lớp tôi
@Autowired
RmqMessageSender rmqMessageSender;
//Inside a method
rmqMessageSender.submitToECLDown(orderInSession.getOrderNo());
Trong tin nhắn tôi gửi:
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component("messageSender")
public class RmqMessageSender {
@Autowired
AmqpTemplate rabbitTemplate;
public void submitToRMQ(String orderId){
try{
rabbitTemplate.convertAndSend("Hello World");
} catch (Exception e){
LOGGER.error(e.getMessage());
}
}
}
Trên ngoại lệ khối cung cấp cho bên dưới Exception
org.springframework.amqp.AmqpAuthenticationException: com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile.
Lỗi Log
=ERROR REPORT==== 7-Nov-2014::18:04:37 ===
closing AMQP connection <0.489.0> (10.1.XX.2XX:52298 -> 10.1.XX.2XX:5672):
{handshake_error,starting,0,
{amqp_error,access_refused,
"PLAIN login refused: user 'guest' can only connect via localhost",
'connection.start_ok'}}
Xin vui lòng tìm thấy bên dưới mục pom.xml
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit</artifactId>
<version>1.3.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-amqp</artifactId>
<version>4.0.4.RELEASE</version>
</dependency>
Xin vui lòng cho tôi biết nếu bạn có bất kỳ suy nghĩ/gợi ý nào
Đảm bảo rằng bạn đã chỉnh sửa cấu hình đã tải. – pinepain
zaq178miami, tôi đã thực hiện một vài bước để đảm bảo tải nó. Khởi động lại dịch vụ, khởi động lại máy và thậm chí cài đặt lại RabbitMQ. – Javaboy