JMSBytesMessage a string y String a JMSBytesMessage typecasting

Tengo el requisito de escribir un mensaje en el MQ y si falla por algún motivo, tengo que escribir ese mensaje en el archivo de texto. Tengo que seguir agregando los mensajes a este archivo de texto hasta que los mensajes comiencen a fluir a MQ nuevamente. Una vez que los mensajes comienzan a fluir, tengo que verificar el archivo de texto y cargar todos los mensajes pendientes y eliminarlos del archivo de texto.

try{
    sender.send(mqMessage); where mqMessage is of JMSBytesMessage
}

ahora si el envío del mensaje falló, tengo que escribir esto en un archivo de texto

catch(JMSException mqe)
       {
           mqe.printStackTrace();
           try{


                String msgString= mqMessage.toString();
                FileWriter fstream = new FileWriter(filePath);
                BufferedWriter out = new BufferedWriter(fstream);
                out.append(msgString);
                out.close();
              }
           catch (Exception e){//Catch exception if any
                  System.err.println("Error: " + e.getMessage());

                }

       }

Una vez que los mensajes comienzan a fluir, tengo que leer el archivo de texto y cargar todos estos mensajes dentro del primer bloque de prueba después sender.send(mqMessage)

Estoy leyendo el contenido completo del archivo y después de dividir los mensajes y almacenarlos en una cadena, ¿cómo puedo JMSBytesMessageescribir esa cadena en el tipo para ponerlos en MQ?

He mencionado el escenario completo aquí porque quería decir que, aunque quería convertir JMSBytesMessagea cadena y luego nuevamente a Cadena, JMSBytesMessagepero no quiero cambiar el contenido real mientras realizo ambos tipos de conversión.

Gracias

Respuesta 1

Estoy tratando de invocar un método usando el método de reflexión mi = TestInterface.class.getMethod ("TestMethod", java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang. Object []. Class); ...

Tengo dicho elemento <xsd: element name = "Car" type = "carType" /> <xsd: complexType name = "carType"> <xsd: complexContent> <xsd: extension base = "basicType"> & ...

Me gustaría aclarar qué versión de Java puedo usar libremente con GeoServer. Porque desde el año pasado, Java pagó de cierta manera: https: //www.snowsoftware.com/int/blog/2019/03/07/can-java -...

Hay una cadena como: Consulta de cadena = "param1, param2, param3 {npam1, npam2, npam3 {nipam1, nipam2}}"; Esta cadena debe procesarse en el formato: {param1: param1, param2: param2, ...