Author |
Message
|
dimaeon |
Posted: Wed Sep 07, 2016 7:06 am Post subject: CCDT in WAS |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
Hello,
I'm trying to connect to queueManager using CCDT in WAS.
My system:
QueueManager1
QueueManager2
QueueManager3
When using Standalone application with JMS all is ok
Code: |
MQQueueManager qmgr = new MQQueueManager("*PAY", ccdtFileUrl) |
Where PAY - queueManagerGroup.
Now i want to use WAS
What i do:
1) Admconsole->Resources->JMS->Connection factories
2) creating new factory, entering Name and JNDI name
3) Setting CCDTurl and QueueManager (What do i must enter here??? i cant enter *PAY.)
But nvm, Im entering QueueManager1 which in CCDT
4)Clicking Test and getting ERROR
"A connection could not be made to Websphere MQ for the following reason: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2278' ('MQRC_CLIENT_CONN_ERROR').
"
Please dont link manuals to read, i read it. What only i do is creating Connection factory and trying to connect using CCDT.
CCDT is correct, MANAGERS are up, AUTH permitted for all users in system
Thanks for any help |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Wed Sep 07, 2016 7:08 am Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
smdavies99 |
Posted: Wed Sep 07, 2016 9:30 am Post subject: |
|
|
![](images/avatars/4738380695809c05f78f20.jpg) Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Quote: |
Please dont link manuals to read, i read it.
|
So if the answer to your problem is in the documentation, you don't want to know it then?
Fair enough. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
fjb_saper |
Posted: Wed Sep 07, 2016 6:20 pm Post subject: Re: CCDT in WAS |
|
|
![](images/avatars/gallery/misc/2.gif) Grand High Poobah
Joined: 18 Nov 2003 Posts: 20697 Location: LI,NY
|
dimaeon wrote: |
1) Admconsole->Resources->JMS->Connection factories
2) creating new factory, entering Name and JNDI name
3) Setting CCDTurl and QueueManager (What do i must enter here??? i cant enter *PAY.)
|
Why not? What happens if you try? ![](images/smiles/innocent.gif) _________________ MQ & Broker admin |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Wed Sep 07, 2016 11:07 pm Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
Code: |
So if the answer to your problem is in the documentation, you don't want to know it then? |
Because there are a lot of information which couldnt help me to solve the problem. I read it, and dont know what to do. It is very easy to link full documentation) I can link you all materials, what i read, but... IBM giving beatiful screenshots with WAS interface where they click on buttons 5 times and all is ok. But i click these 5 buttons and it fails. For this reason i saying that i dont need documentation. Writing here, i want to understand whats going wrong or what i miss, not rereading info which doesnt help me.
But sorry if you give me real helpful documentation, it will be very nice. Usually people linking full information which discribes ALL INFO about CCDT, about WAS etc.
But my problem in connection factory using CCDT
Code: |
Why not? What happens if you try? |
If you are answering about "*PAY", WAS doesnt permit to type symbols like "*". I will reread this moment how to give groupManager to WAS, but now my probles is in connection factory. |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Thu Sep 08, 2016 1:36 am Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
fjb_saper |
Posted: Thu Sep 08, 2016 6:37 pm Post subject: |
|
|
![](images/avatars/gallery/misc/2.gif) Grand High Poobah
Joined: 18 Nov 2003 Posts: 20697 Location: LI,NY
|
The document really shows how to use a channel table to connect to a multi-instance queue manager, and thus there would only be one queue manager to connect to and the qmname on the ccdt entry can be the name of the real qmgr... no * required.
I thought WAS was handling that through the "extended property" connectionList??
Have you tried escaping your * character in the qmgr name?
qmname = \*PAY
And by the way the code snippet you showed is not JMS but Java base...
Code: |
MQQueueManager qmgr = new MQQueueManager("*PAY", ccdtFileUrl); |
Have fun ![](images/smiles/innocent.gif) _________________ MQ & Broker admin |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Thu Sep 08, 2016 11:28 pm Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
Quote: |
Have you tried escaping your * character in the qmgr name?
qmname = \*PAY |
Yes, i tried escaping *. Allowed symbols are ".", "_", "/", "%". Nothing is work.
Quote: |
The document really shows how to use a channel table to connect to a multi-instance queue manager, and thus there would only be one queue manager to connect to and the qmname on the ccdt entry can be the name of the real qmgr... no * required. |
I also create one manager and trying to connect, but getting the same error.
Quote: |
And by the way the code snippet you showed is not JMS but Java base... |
Yeah, its misstake
But, i really dont understand whats wrong. I crete new manager not group and trying to conenct to it. Only one thing that i must do - give to WAS CCDTurl and the name of qmgr... Checking new CCDT file using support pac72 and all is ok,
May be problem with deffernce versions of java? which WAS uses and CCDT was created, but im sure that problem in something else.
Using WAS v7, MQ V7.5 also tried WAS v8
Any ideas? Really dont know what to do |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
fjb_saper |
Posted: Sat Sep 10, 2016 5:08 am Post subject: |
|
|
![](images/avatars/gallery/misc/2.gif) Grand High Poobah
Joined: 18 Nov 2003 Posts: 20697 Location: LI,NY
|
If the name of the queue manager in the clntconn matches the real name of the queue manager, loose the * in front of it. ![](images/smiles/innocent.gif) _________________ MQ & Broker admin |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Mon Sep 12, 2016 7:05 am Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
Downloaded fix pak 39 and now error 2035 (MQRC_NOT_AUTHORIZED).
When using v 7.0.0.0 trying to connect through SYSTEM.ADMIN.SVRCONN - all is ok
After update - 2035 error.
Why? Disabling CLAUTH, setting MCA, dont know to do else. Why i cant connect using v 7.0.0.39? with 7.0.0.0 works fine... |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
smdavies99 |
Posted: Mon Sep 12, 2016 9:05 am Post subject: |
|
|
![](images/avatars/4738380695809c05f78f20.jpg) Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
MQ V7.5 introduced a whole raft of security enhancememts.
There are some wonderful articles posted by Morag Hughson that will guide you into what changes to the MQ Server you need to make in order to get this to work.
This forum has links to them. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Tue Sep 20, 2016 7:04 am Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
ok, if interesting. WAS 7.0.0.0 doesnt support group of managers, so you couldnt type symbols like "*". Fix pak 39 which supports this also doesnt help me. Authorization error. I did my best to solve this problem. Read a lot of docs, permit everything and everyone...
Downloaded WAS 8.5.5. All works fine without issues |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Tue Sep 20, 2016 7:39 am Post subject: New question |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
Have new question (dont know if i must create new topic with the same title or continue this, lets choose the second and dont spam).
So, i have WAS applications. They use CCDT for connection factory. My settings:
Queue_manager1
Queue_manager2
Queue_manager3
which in *PAY (group). For example, i have 30 such applications, lets think that i'm working somewhere. CCDT file for first 10app looks like CLNTCONN1(qm1),CLNCONN2(qm2),CLNCONN3(qm3) for second CLNTCONN2(qm2),CLNCONN3(qm3),CLNCONN1(qm1)... for balance.
In summary 3 CCDT files.
For example, if QM1 will down, all application will work through QM2 e.t.c. All is fine.
But what if i create manager QM4? Or change some setting in previos managers(qm1 or qm2 or qm3. Will use Support pak Mo72). So, the question is:
How can i give new CCDT to WAS? How will changes be done?
Yes, i delete previos file and put there new, but nothing changed. What must i do to update file safely for my applications.
I dont know how. May be write script or something else that will know about changes or... Really dont know. Please give me all what u think how i must "put new CCDT file after changes". lets think that im in corporation, and CCDT files will change every 3-4 months
And yeah, sorry for my English) |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
hughson |
Posted: Tue Sep 20, 2016 8:50 pm Post subject: Re: New question |
|
|
![](images/avatars/810794940518bb946528b3.jpg) Padawan
Joined: 09 May 2013 Posts: 1916 Location: Bay of Plenty, New Zealand
|
dimaeon wrote: |
i have 30 such applications, lets think that i'm working somewhere. CCDT file for first 10app looks like CLNTCONN1(qm1),CLNCONN2(qm2),CLNCONN3(qm3) for second CLNTCONN2(qm2),CLNCONN3(qm3),CLNCONN1(qm1)... for balance.
In summary 3 CCDT files. |
Btw - you don't need to make 3 CCDT files to do this anymore. Just make sure CLNTWGHT has a non-zero value and then the client won't use the alphabetical choice.
dimaeon wrote: |
How can i give new CCDT to WAS? |
In your earlier posts you were using CCDTURL. So you don't need to give the new CCDT to WAS, you should just update the file at the same URL and WAS configure doesn't need to change.
dimaeon wrote: |
Yes, i delete previos file and put there new, but nothing changed. |
This comment suggests you did what I suggested above already but you say nothing changed. How do you determine that nothing changed? Remember that the CCDT is only used by the MQ client when a new connection is made. Have you made any new connections since updating it? WAS does connection pooling, so there is certainly the possibility that you have not yet made a new connection.
Of course there is also the possibility of WAS caching or something? I'm not a WAS expert so hopefully someone else can chip in on that.
Cheers
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
dimaeon |
Posted: Tue Sep 20, 2016 11:55 pm Post subject: |
|
|
Novice
Joined: 27 Jul 2016 Posts: 21
|
Quote: |
Btw - you don't need to make 3 CCDT files to do this anymore. Just make sure CLNTWGHT has a non-zero value and then the client won't use the alphabetical choice |
Wait, if i will set CLNTWGHT, it will write in CCDT file, so every app will connect using CLNTWGHT. But i need balance or i dont undestand... It means if CCDT has CLNTWGHT(5) CLNTWGHT(3) CLNTWGHT(2), all 30 apps wil use with 50% Chan1, 30%chan2 etc. I need my 10 apps always connect to QM1 and if it down then to QM2. Another question is - QM1 is down, app connecting to QM2, and QM1 ups now, my apps need to reconnecting to QM1, but if CCDT has QM1,QM2,QM3, it means that i must go through QM2 (if it will down), go through QM3 (will down) and NOW i can connect to QM1 again. Is there method to reconnect to QM1 when it starts again?
Quote: |
In your earlier posts you were using CCDTURL. So you don't need to give the new CCDT to WAS, you should just update the file at the same URL and WAS configure doesn't need to change. |
Yes, but now im using bindings. Making connenction factorry on server, creating web.xml with client connection factories and using IBM-web-bnd.xml to bind it. So, now im not using CCDTurl in my code. I give it on server side in connection factory section.
Quote: |
This comment suggests you did what I suggested above already but you say nothing changed. How do you determine that nothing changed? Remember that the CCDT is only used by the MQ client when a new connection is made. Have you made any new connections since updating it? WAS does connection pooling, so there is certainly the possibility that you have not yet made a new connection. |
I deleted CCDT file reopen browser and app worked. After min 10, idk (went to eat) it begins to fail with error "cant find ccdt". Yeah, ill try more times, to understand this.
As i understand i dont need to restart WAS when give new CCDT. All changes will work right after "giving new file"???
And the main question is the same. How can i give CCDT file to WAS. Need different methods to choose best for me.
Thanks. |
|
Back to top |
|
![](templates/DAJ_Glass/images/spacer.gif) |
|