ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ Java / JMS » JMS to WMQ thru CCDT without SYSTEM.DEF.SVRCONN

Post new topic  Reply to topic
 JMS to WMQ thru CCDT without SYSTEM.DEF.SVRCONN « View previous topic :: View next topic » 
Author Message
objectthinker06
PostPosted: Thu May 21, 2009 4:06 pm    Post subject: JMS to WMQ thru CCDT without SYSTEM.DEF.SVRCONN Reply with quote

Novice

Joined: 15 Aug 2006
Posts: 15

How do you make a JMS program use a specific SVRCONN channel defined for the app and not SYSTEM.DEF.SVRCONN channel ? By JMS, I'm refering to those classes that are in javax.jms.* package and not WMQ's JMS classes in the package: com.ibm.mq.jms.*.
Thanks
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu May 21, 2009 6:52 pm    Post subject: Re: JMS to WMQ thru CCDT without SYSTEM.DEF.SVRCONN Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

objectthinker06 wrote:
How do you make a JMS program use a specific SVRCONN channel defined for the app and not SYSTEM.DEF.SVRCONN channel ? By JMS, I'm refering to those classes that are in javax.jms.* package and not WMQ's JMS classes in the package: com.ibm.mq.jms.*.
Thanks


By setting up correctly your CCDT and the CCDT URL. Use a dummy qmgr name when setting up the CCDT. For more information the programmer manual and the client manual

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Fri May 22, 2009 4:47 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

While it is a fine idea to use a CCDT and a dummy queue manager name, it is not strictly necessary here.

All one really needs to do is configure the QCF properties in the JNDI to use a different channel name.
Back to top
View user's profile Send private message
objectthinker06
PostPosted: Fri May 22, 2009 5:42 am    Post subject: Reply with quote

Novice

Joined: 15 Aug 2006
Posts: 15

The whole CCDT seems to be so complex to get it working. My test environment on WMQ v7 is mentioned below:

I have two qeueue managers QM1 (listening on port # 9001) and QM2 (on port # 9002) and a default queue manager DFQM listening on port 1414 however DFQM is shutdown. There are two SVRCONN channels on each queue manager TO.QM1 and TO.QM2. There are two client connection channels defined on QM2 matching those two SVRCONN channels. I have a TestQ (QLOCAL) on QM1 and Test2Q (QLOCAL) on QM2. I have a CF (called TestCF) defined based on the CCDT of QM2. However when I connect through my JMS App I get the following error:

Destination name is TestJMSQ
com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2423' ('MQRC_CLIENT_CHANNEL_CONFLICT').


What should be the channel value in CF ?

InitCtx> dis CF(TestCF)

CCSID(819)
BROKERSUBQ(SYSTEM.JMS.ND.SUBSCRIBER.QUEUE)
PORT(1414)
SYNCPOINTALLGETS(YES)
PUBACKINT(25)
POLLINGINT(5000)
RECEIVEISOLATION(COMMITTED)
ASYNCEXCEPTION(-1)
MSGSELECTION(CLIENT)
TEMPTOPICPREFIX()
OUTCOMENOTIFICATION(YES)
SHARECONVALLOWED(YES)
CHANNEL(TO.QM2.SVRCONN)
CCDTURL(file:/C:/AMQCLCHL.TAB)

OPTIMISTICPUBLICATION(NO)
BROKERCONQ(SYSTEM.BROKER.CONTROL.QUEUE)
USECONNPOOLING(YES)
COMPHDR(NONE )
HOSTNAME(127.0.0.1)
CLONESUPP(DISABLED)
SPARSESUBS(NO)
LOCALADDRESS()
SENDCHECKCOUNT(0)
VERSION(7)
BROKERCCSUBQ(SYSTEM.JMS.ND.CC.SUBSCRIBER.QUEUE)
PROCESSDURATION(UNKNOWN)
SSLRESETCOUNT(0)
CONNOPT(STANDARD)
BROKERQMGR()
SSLFIPSREQUIRED(NO)
MAPNAMESTYLE(STANDARD)
FAILIFQUIESCE(YES)
CLEANUP(SAFE)
RESCANINT(5000)
WILDCARDFORMAT(TOPIC_ONLY)
TEMPQPREFIX()
PROVIDERVERSION(UNSPECIFIED)
MSGRETENTION(YES)
MSGBATCHSZ(10)
BROKERPUBQ(SYSTEM.BROKER.DEFAULT.STREAM)
QMANAGER(*QM)
TEMPMODEL(SYSTEM.DEFAULT.MODEL.QUEUE)
BROKERVER(UNSPECIFIED)
CLEANUPINT(3600000)
STATREFRESHINT(60000)
SUBSTORE(BROKER)
TRANSPORT(CLIENT)
COMPMSG(NONE )
TARGCLIENTMATCHING(YES)

==============================

InitCtx> dis Q(TestJMSQ)

FAILIFQUIESCE(YES)
QUEUE(LQ)
MDWRITE(NO)
QMANAGER()
MSGBODY(UNSPECIFIED)
MDMSGCTX(DEFAULT)
PUTASYNCALLOWED(AS_DEST)
PERSISTENCE(APP)
CCSID(1208)
READAHEADCLOSEPOLICY(DELIVER_ALL)
TARGCLIENT(JMS)
READAHEADALLOWED(AS_DEST)
ENCODING(NATIVE)
MDREAD(NO)
PRIORITY(APP)
EXPIRY(APP)
VERSION(7)

Thanks
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri May 22, 2009 6:01 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

You want the CCDT to tell the JNDI def what the name of the channel is. Leave it blank in the CF.
Back to top
View user's profile Send private message
objectthinker06
PostPosted: Fri May 22, 2009 6:28 am    Post subject: Reply with quote

Novice

Joined: 15 Aug 2006
Posts: 15

When I leave the channel blank in the CF I get the following error:

Destination name is TestQ
com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2278' ('MQRC_CLIENT_CONN_ERROR').
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri May 22, 2009 6:46 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.amqzao.doc/fm14400_.htm

Quote:
It also occurs in Javaâ„¢ applications when a client channel definition table is specified to determine the name of the channel, but the table itself cannot be found.


Double-check your URL... particularly your file:/.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Fri May 22, 2009 10:43 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Quote:
CHANNEL(TO.QM2.SVRCONN)
CCDTURL(file:/C:/AMQCLCHL.TAB)

Now if I remember the manual correctly the channel entry HAS to be blank when you use a CCDT.
Try
Code:
CHANNEL(' ')
CCDTURL(file:///C:/AMQCLCHL.TAB)

_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Java / JMS » JMS to WMQ thru CCDT without SYSTEM.DEF.SVRCONN
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.