Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

how do I get queue connect and put the message?

Status
Not open for further replies.

john2002

Programmer
Mar 20, 2002
3
US
Hi folks,
I am new to Mqseries, In our organization we have mqseries5.2 for windows NT and I need to send text message from the file in windows NT to mainframe through Mqseries.
Can some one give me sample code( I am familiar to java) to start with and I can pick up from then on. I would be really great help for me.
Thanks in advance
 
This is a sample code to connect to a QueueManager and Queues to make a Put...

I hope yo knowk some spanish to catch comments on program :)

/*
* MQPut.java
*
* Created on 19 de febrero de 2002, 18:38
*/

import com.ibm.mq.* ; // para incorporar instrucciones y definiciones de MQSeries para conexion


public class MQPut extends java.lang.Object {

private String qMgrName = "QM_pruebas_morquec";
private String qName = "miCola";
private MQQueueManager qMgr;
private MQQueue myQueue;

public void abrirCola(){ // Apetura de la cola
int openOptions;

try{
// asignar a mi variable options para apertura de cola las opciones definidas en documento
openOptions = MQC.MQOO_OUTPUT;

// realizar el acceso a mi objeto "cola"
myQueue = qMgr.accessQueue(qName, openOptions);
//salida estandar mensaje de apertura
System.out.println("Antes de la conexión a la cola:" + qName);
// cerrar la cola
//myQueue.close();
//salida estandar mensaje de close
System.out.println("Despues de desconexión a la cola:" + qName);
}
catch (MQException ex){
System.out.print("Error MQSEries en acceso a cola : ");
switch (ex.reasonCode){
case 2085:
System.out.print("Queue " + qName + " inválida o desconocida. ");
break;
default:
System.out.print("Error MQSEries. ");
break;
}

System.out.println(ex.getMessage());
}
}
public void cerrarCola(){ // Cerrar la cola

try{
myQueue.close();
System.out.println("Close de Cola '"+qName+"' exitoso.");
}
catch (MQException ex){
System.out.print("Error MQSEries al cerrar la cola '"+qName+"': ");
System.out.println(ex.getMessage());
}
}
public void conectar(){ // conexion al Queue Manager
try{
qMgr = new MQQueueManager(qMgrName);
System.out.println("conexion exitosa.");
}
catch (MQException ex){
switch (ex.reasonCode){
case 2058:
System.out.print("QueueManager '"+qMgrName+"' inválido o desconocido. ");
break;
case 2059:
System.out.print("Error en la conexion al QueueManager '"+qMgrName+". ");
break;
default:
System.out.print("Error MQSEries. ");
break;
}
System.out.println("MQSeries Error: "+ ex.getMessage());
}
}
public void desconectar(){ // desconexion del QueueManager
try{
qMgr.disconnect ();
System.out.println("Desconexion exitosa.");
}
catch (MQException ex){
System.out.print("Error en la desconexion del Queue Manager '"+qMgrName+"'. ");
System.out.println(ex.getMessage());
}
}
public void ejecutarPut(){ //consta de dos partes, la primera crea mensaje, la segunda realiza put.
//String qMensaje = "Este es mi primer mensaje"; // mensaje en duro
String qMensaje = "Este es un mensaje puesto desde JAVA Programing";
try{
// definicionde objeto mensaje e instanciacion
MQMessage myMsg = new MQMessage();
myMsg.messageType = MQC.MQMT_DATAGRAM;
//para definir explicitamente que el formato del mensaje es string
// escribir el texto-mensaje en el objeto mensaje
myMsg.format = MQC.MQFMT_STRING;
myMsg.writeString(qMensaje);
// salida estandar un display del texto del mensaje
System.out.println(&quot;Poniendo mensaje <&quot; + qMensaje + &quot;> en cola <&quot; + qName + &quot;>&quot;);
// salida estandar un display del largo del texto del mensaje
int tamanoMsg = myMsg.getMessageLength();
System.out.println(&quot;El tamaño del mensaje es <&quot; + tamanoMsg + &quot;>&quot;);
//** PUT del mensaje */
//definicion de objeto MQPutOp e instanciacion
MQPutMessageOptions myOptions = new MQPutMessageOptions();
myOptions.options = MQC.MQPMO_SYNCPOINT | MQC.MQPMO_DEFAULT_CONTEXT | MQC.MQPMO_FAIL_IF_QUIESCING;
//myOption.contextReference =
// realizar put del mensaje a la cola con las opciones definidas
myQueue.put(myMsg, myOptions);
}
catch (MQException ex){
System.out.print(&quot;Error al realizar el Put a la cola <&quot;+ qName +&quot;>&quot;);
System.out.println(ex.getMessage());
}
catch(java.io.IOException ex){
System.out.println(&quot;Error no asignable a MQSeries.&quot;);
ex.printStackTrace();
}
}
public void ejecutarPut(String miTexto){ //consta de dos partes, la primera crea mensaje, la segunda realiza put.
//String qMensaje = &quot;Este es mi primer mensaje&quot;; // mensaje en duro
String qMensaje = &quot;Este es un mensaje puesto desde JAVA Programing&quot;;

try{
// definicionde objeto mensaje e instanciacion
MQMessage myMsg = new MQMessage();
myMsg.messageType = MQC.MQMT_DATAGRAM;
//para definir explicitamente que el formato del mensaje es string
// escribir el texto-mensaje en el objeto mensaje
myMsg.format = MQC.MQFMT_STRING;
myMsg.writeString(miTexto);
// salida estandar un display del texto del mensaje
System.out.println(&quot;Poniendo mensaje <&quot; + miTexto + &quot;> en cola <&quot; + qName + &quot;>&quot;);
// salida estandar un display del largo del texto del mensaje
int tamanoMsg = myMsg.getMessageLength();
System.out.println(&quot;El tamaño del mensaje es <&quot; + tamanoMsg + &quot;>&quot;);
//** PUT del mensaje */
//definicion de objeto MQPutOp e instanciacion
MQPutMessageOptions myOptions = new MQPutMessageOptions();
//myOptions.
// realizar put del mensaje a la cola con las opciones definidas
myQueue.put(myMsg, myOptions);
}
catch (MQException ex){
System.out.print(&quot;Error al realizar el Put a la cola <&quot;+ qName +&quot;>&quot;);
System.out.println(ex.getMessage());
}
catch(java.io.IOException ex){
System.out.println(&quot;Error no asignable a MQSeries.&quot;);
ex.printStackTrace();
}
}
public void ejemplo(){ //metodo que administra los otros métodos para MQ
conectar();
abrirCola();
String msg = &quot;Este es un mensaje puesto desde un JAVA Programing&quot;;
ejecutarPut(msg);
cerrarCola();
desconectar();
}
public static void main (String args[]) {
System.out.println(&quot;Inicio de Main.&quot;);
new MQPut().ejemplo();
System.out.println(&quot;Fin de Main.&quot;);
}
}
 
Hi jsaenz,
Thanks you very much for sending me the sample code.But I dont know spanish so I could not understand any of you comment. It would have been more helpful if the comment is also in English.Is it possible to resend me the code with comment in english?

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top