2012-04-27 2 views
2

내가 원격는 WebSphere MQ 큐 관리자에 연결하는 간단한 자바 프로그램을 쓰고 있어요에 연결하지만 오류 보여주는 가져옵니다, 내가 WMQ Explorer를 사용하여 연결하는 경우 그러나 MQJE001: Completion Code '2', Reason '2009'간단한 자바 프로그램은 = 2009 RC 원격 큐 관리자

을 그 연결되어 있고 대기열에있는 메시지를 볼 수 있습니다. 친절하게 도와주세요. 내 코드는 다음과 같습니다

 public void init(){ 

    props.put(MQC.HOST_NAME_PROPERTY, "sailmq3d.pok.ibm.com"); 
    props.put(MQC.CHANNEL_PROPERTY, "PLM.SECURE.SVRCONN"); 
    props.put(MQC.PORT_PROPERTY, 1423); // port number 
    props.put(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES); 
    } 

     public void start(){ 
    try { 
    // Create a connection to the queue manager 
qMgr = new MQQueueManager("PLMESB_SBMD2",props); 
+0

PLM.SECURE.SVRCONN의 채널 정의는 어떤 모양입니까? "보안"이란 SSL을 사용할 수 있음을 의미합니까? WMQ Explorer와 동일한 채널입니까? –

+0

@Rob : 여기에 무슨 문제가 있습니까? – Kullu

+0

원격 MQ 대기열 관리자에 연결하는 데 사용되는 간단한 연결과 MQExplorer에 연결할 수있는 동일한 채널이 있습니다. – Kullu

답변

0

와우, 좀 멋지다 - 나는 실제로 을 볼 수 있습니다 일단의 SO 게시 질문에서 QMGR!

PLM.SECURE.SVRCONN 채널 정의는 다음과 같습니다 : 당신이 2009 리턴 코드를받을 이유

AMQ8414: Display Channel details. 
    CHANNEL(PLM.SECURE.SVRCONN)    CHLTYPE(SVRCONN) 
    ALTDATE(2011-01-30)      ALTTIME(15.02.56) 
    COMPHDR(NONE)       COMPMSG(NONE) 
    DESCR()        HBINT(300) 
    KAINT(AUTO)        MAXINST(999999999) 
    MAXINSTC(999999999)      MAXMSGL(4194304) 
    MCAUSER(nobody)       MONCHL(QMGR) 
    RCVDATA()        RCVEXIT() 
    SCYDATA() 
    SCYEXIT(/var/mqm/exits64/PLMESB_SBMD2/ESBSecurityExit(ChannelExit)) 
    SENDDATA()        SENDEXIT() 
    SHARECNV(10)       SSLCAUTH(REQUIRED) 
    SSLCIPH()        SSLPEER() 
    TRPTYPE(TCP) 

는 해당 채널의 사용자 지정 보안 종료가 있음을 감안할 때, 그것은 말할 수 없습니다. 가장 좋은 방법은 보안 이탈 로그를 보는 것입니다.

WMQ Explorer를 통한 연결은 아마도 출구가없는 SYSTEM.ADMIN.SVRCONN을 사용하고있을 것입니다.

해당 채널에 대해 정의 된 CLNTCONN이 있으며 클라이언트 측 종료가 필요합니다. Java 클라이언트가 CCDT (Client Conn Definition Table)를 사용하면 문제가 더 복잡해집니다. CLNTCONN이 있으며 클라이언트 측 종료를 나열하면 클라이언트 측 이탈없이 PLM.SECURE.SVRCONN이 작동하지 않는다고 제안합니다.

+0

@Rob : MQ 코드를 제공 할 수 있습니까? 보안 프로그램을 실행하여 현재 프로그램을 실행하고 큐 관리자에 연결하는 데 사용할 수있는 Exit ... – Kullu

+0

고맙습니다 Rob ... 마침내 문제를 이해했습니다. 내가 잘못하지 않았다면 MQ 보안을 작성해야한다고 생각합니다. 내 사용자 ID와 MAC 주소를 서버에 인증하는 프로그램 종료. 내 자바 프로그램에서 이것을 설정해야합니다 .. – Kullu

+0

글쎄, CLNTCONN 채널에 지정되어 있기 때문에 누군가가 이미 작성한 것처럼 보입니다. WMQ 관리자에게 문의하여 어디서 정보를 얻을 수 있는지 확인하십시오. 클라이언트 측 모듈이 무엇이든 이미 존재하는 채널의 'ESBSecurityExit'와 쌍으로 작동해야합니다. 누군가 그것을 성공적으로 사용하고 있습니다. –

관련 문제