간단한 JMS 애플리케이션을 AIX 서버 아래의 OC4J에 애플리케이션을 배치했습니다. 일부 대기열을 듣고 AS400 서버 아래에 배치 된 Websphere MQ의 다른 대기열로 보냅니다. .JMS를 사용하는 Websphere MQ, MQ에서 닫힌 연결 닫기
문제는 이러한 큐에 내 연결이 (이것은 문제가되지 않습니다)는 오류 MQJMS1016
와 약간의 시간 동안 유휴 상태 유지시 마감/를 종료되었는지, 그리고 그렇게되면 내가 연결 복구를 시도하고 그러나 이전 연결은 MQ에서 중단되어 수동으로 종료 될 때까지 종료되지 않습니다. (MQ 측에 붙어 연결) 메시지 (즉, 그들은 메시지를 사용하지 않는) 처리 그대로, 우리가 일을 왼쪽에 영향을주지 않습니다를 고아 연결 이후
public void recover() {
cleanup();
init();
}
public void cleanup(){
if (session != null) {
try {
session .close();
} catch (JMSException e) {
}
}
if (connection != null) {
try {
connection.close();
} catch (JMSException e) {
}
}
}
public void init(){
// typical initialization of the connection, session and queue...
}
하지만 무엇이 문제이며, "멈추지 않습니다"- session.close()에 있습니까? – nos
문제는 Websphere MQ 측에서 기존 수신기/프로듀서가 작동하지 않아 추가 작업을 MQ에 연결 한 것으로 보입니다. 복구 코드가 문제없이 실행됩니다. –