com.ibm.mq.MQException: MQJE001: Achèvement de Code '2', la Raison '2035'
Je fais construire une application Java qui devrait être en mesure de se connecter à un IBM WebSphere MQ gestionnaire de file d'attente et je ne comprends pas pourquoi je reçois ce message d'erreur.
J'ai déjà donné des privilèges d'administration pour mon nom d'utilisateur à l'aide de setmqaut
par MQ Explorer. J'ai également défini le MCAUSER
dans ma chaîne et j'ai également associé à l'utilisateur avec la MQ groupe Windows.
Quelqu'un peut-il donner un bref tutoriel/exemple de comment connecter un programme Java avec une WebSphere MQ installation sur un Environnement Windows?
- Quelle est la version de WMQ serveur et le client?
Vous devez vous connecter pour publier un commentaire.
Si vous avez défini
MCAUSER
dans le canal, puis il remplace toute pièce d'identité présentée par le client. Si vous obtenez toujours un horizon 2035, alors il y a deux possibilités. La première est que l'ID dansMCAUSER
n'a pas été autorisées à l'aidesetmqaut
commandes. La deuxième (au moins pour Windows), c'est que ce n'est pas l'ID de droite. Par exemple, si la définition de canal aMCAUSER(userx)
au lieu deMCAUSER('userx@domain')
alors il est tout à fait possible que l'ID n'est pas le même SID qui WMQ résout. Cela peut se produire lorsqueuserx
est définie sur un ordinateur portable et sur le WMQ serveur. Le serveur doit être en mesure de résoudre la pièce d'identité pour le SID qui vient avec elle.Il y a d'autres considérations pour WMQ v7.1 en ce qui concerne CHLAUTH règles. Si la pièce d'identité a des privilèges d'administrateur, WMQ va le bloquer sur tous les canaux par défaut. C'est parce qu'un administratif ID a un accès complet à WMQ et peut exécuter à distance du code de la QMgr serveur hôte à l'aide de la WMQ services ou fonctionnalités de déclenchement. Donc, si vous avez WMQ v7.1 vous devez soit activer WMQ accès admin sur le canal désiré ou l'utilisation d'un utilisateur non administratif ID pour vous connecter.
Enfin, le moyen le plus facile à déboguer tout cela est de permettre l'autorisation d'événements sur le QMgr et installer SupportPac MS0P en WMQ Explorer. Cela va générer un message d'événement à chaque fois il y a une 2035 et puis le MS0P plugin s'analyser qu'en format lisible par l'homme. Le message va vous dire...
CONNECT
,OPEN
,CLOSE
)Cela peut être utile pour déterminer si vous avez fourni toutes les bonnes autorisations. Par exemple, le Java et les classes de JMS d'enquêter sur tous les objets qu'il touche. C'est de cette façon qu'ils découvrent le DLQ nom lors de la connexion ou de la BOQNAME lors de l'ouverture d'une file d'attente. Donc, si vous ne fournissez pas
+inq
sur le QMgr et la file d'attente, vous obtenez une 2035 et le message d'événement vous montrer l'objet et les options utilisées. De même, si vous lisez un message incohérent et l'ID n'ont pas le droit à la sauvegarde de la file d'attente ou la Mort de la File d'attente, puis vous obtenez un horizon 2035 qui s'affiche (jusqu'à ce que vous regardez le message d'événement) ont eu lieu sur une file d'attente à partir de laquelle vous avez été heureux en consommant des messages. Donc assurez-vous d'activer l'Authentification d'événements et MS0P.Si vous voulez un sympathique tutoriel pour WMQ de sécurité, il existe plusieurs présentations de la conférence archivé ici.