나는 바우어/tcp 전송 프로토콜을 통한 브로커/퍼블리셔의 자바 액티브 MQ 구현 방식을 가지고있다. 파이썬 클라이언트에 연결하려고 합니다만, "stomp"기반의 모든 문서는 stomp protcol이 아닌 것 같습니다. 그리고 기본 예제를 시도하면 Java 브로커 측에서 오류가 발생합니다 :ActiveMQ 자바 브로커, 파이썬 클라이언트
String localVMurl = "vm://localhost";
String remoterURL = "tcp://localhost:5001";
BrokerService broker = new BrokerService();
broker.addConnector(localVMurl);
broker.addConnector(remoterURL);
broker.setAdvisorySupport(true);
broker.start();
ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(localVMurl+"?create=false");
Connection connection = connectionFactory.createConnection();
및 파이썬은 실패
[ActiveMQ Transport: tcp:///127.0.0.1:[email protected]] WARN org.apache.activemq.broker.TransportConnection.Transport - Transport Connection to: tcp://127.0.0.1:62860 failed: java.io.IOException: Unknown data type: 80
브로커 코드는 자바에서 매우 바닐라입니다. 나는 파이썬에서 기본적인 "tcp : // localhost :"연결을 사용하여 온라인으로 아무것도 찾을 수 없다. 내가 여기서 뭔가 잘못하고있는거야?
import stomp
class MyListener(stomp.ConnectionListener):
def on_error(self, headers, message):
print('received an error "%s"' % message)
def on_message(self, headers, message):
print('received a message "%s"' % message)
conn = stomp.Connection(host_and_ports = [('localhost', 5001)])
conn.start()
conn.connect('admin', 'password', wait=True)
나는 오류 얻을 : 그것은 까다로운 조금 대답을하지만 오류에서 난 당신이에 STOMP 클라이언트를 연결하려고 생각 것입니다 브로커 구성을 보지 않고
IndexError: list index out of range
:
당신의 라인을 따라 뭔가를 할 거라고 내장 된 브로커 STOMP 지원을 추가합니다. – user1772250당신이 알아야 할 모든 것은 문서에 있습니다. 브로커에 STOMP 전송을 추가하고 STOMP 클라이언트가 해당 끝점을 가리 키도록합니다. –