2012-05-24 4 views
0

로컬 컴퓨터의 Java 코드에서 큐에 메시지를 넣으려고합니다. 나는 오류를 얻고있다 :Java에서 큐에 메시지 넣기

java.lang.UnsatisfiedLinkError: no mqjbnd05 in java.library.path.

이 내 코드입니다 :

qMgr = new MQQueueManager(qManager); 
int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT ; 

MQQueue queue = qMgr.accessQueue("Q1",openOptions); 
MQMessage msg = new MQMessage(); 
msg.writeUTF("this is a test message"); 

MQPutMessageOptions pmo = new MQPutMessageOptions(); 
queue.put(msg, pmo); 

MQMessage retrievedMessage = new MQMessage(); 
retrievedMessage.messageId = msg.messageId; 

MQGetMessageOptions gmo = new MQGetMessageOptions(); 
queue.get(retrievedMessage, gmo); 
String msgText = retrievedMessage.readUTF(); 
System.out.println("The message is: " + msgText); 

queue.close(); 
qMgr.disconnect(); 

내 큐 관리자가 QM_FORD하고 큐 이름 Q1입니다. 리스너 포트는 1414입니다. 환경 변수가 올바르게 설정되었습니다. 아무도 이것에 나를 안내 할 수 있습니까?

+0

websphere에 앱을 배포 할 때 [mqjbnd05 오류가 발생할 수 있습니다] (http://stackoverflow.com/questions/921199/mqjbnd05-error-when-deploying) -app-on-websphere) – NPE

답변

1

Java 코드에 문제가 없습니다. Unsatisfied Link Error는 네이티브 라이브러리 (Windows의 경우 .dll, Unix의 경우 .so)를 찾을 수 없음을 의미합니다. 그것은 누락 또는 환경 변수에서 참조하지 않는 것 중 하나 등 PATH (Windows) 또는 LD_LIBRARY_PATH 또는 LIBPATH를,이에 어떤 운영 체제에 따라

googling may give you a few ideas

0

문제는 여기에 누락 된 라이브러리 경로입니다.. LD_LIBRARY_PATH를 "MQ_INSTALLATION_DIR"/ java/lib로 설정하십시오 (Unix의 경우)

관련 문제