Je veux sérialiser un MQMessage et l'enregistrer sur le disque/base de données. Mon but est de pouvoir le désérialiser plus tard avec tous les en-têtes, propriétés et contenus nommés intacts.linéariser/désérialiser un MQMessage
Pour être clair, je besoin de quelque chose comme ceci:
byte[] serialize(MQMessage m);
MQMessage deserialize(byte[] b);
de telle sorte que lorsque vous faites ce qui suit:
MQMessage M = deserialize(serialize(m));
ce que je reçois est que M
est un "clone" de m
.
Cela est nécessaire pour être en mesure, le cas échéant, soumettre à nouveau des messages pour le traitement (dans un grand réseau MQ, les applications vont manger/perdre quelques messages plus tôt ou plus tard). En tant que tel, je dois pouvoir désérialiser une copie 1: 1 de chaque MQMessage Je veux soumettre à nouveau (à savoir non seulement de son contenu, mais aussi ses en-têtes, les propriétés, l'encodage, le format, et ainsi de suite ...).
Malheureusement, il semble que MQMessage ne met pas en œuvre une sorte de mécanisme de sérialisation. Comment iriez-vous faire cela? Est-ce que le code de sérialisation/désérialisation est artisanal?
Merci pour la réponse, mais ma question était « comment puis-je le faire? » , pas "quels outils dois-je utiliser?" (c'est-à-dire, j'ai posté une question sur StackOverflow, vous avez donné une réponse qui serait OK sur SuperUser). – CAFxX
En outre, puisque vous publiez des liens vers votre site, vous voudrez peut-être de savoir que certains des liens sont obsolètes (404, etc.). – CAFxX