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 » same old UnsatisfiedLinkError: no mqjbnd05 in java-lib-path

Post new topic  Reply to topic
 same old UnsatisfiedLinkError: no mqjbnd05 in java-lib-path « View previous topic :: View next topic » 
Author Message
sarmahdi
PostPosted: Mon Oct 31, 2011 6:04 am    Post subject: same old UnsatisfiedLinkError: no mqjbnd05 in java-lib-path Reply with quote

Newbie

Joined: 31 Oct 2011
Posts: 7

Hi all,

I am new to MQ and I want some info regarding an application that I am trying to run on my dev environment. The App uses the API to connect to MQQueueManager.

Code:
MQEnvironment.hostname = hostName; //a remote host
MQEnvironment.channel = channel;
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES);

//MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRAN//SPORT_MQSERIES_CLIENT);
 


and when I create a new MQQueueManager() it throws
Code:
java.lang.UnsatisfiedLinkError: no mqjbnd05 in java.library.path


Now i have searched thru the forum and the net and most of the posts say to put the jars in the classpath and have them the read write execute access. Now in linux we would
Quote:
chmod 777


to the files but I am on an XP machine and We have restrictions on the things we can do like installing on the windows drive or execute anything from there.

How do you think I can do that on an XP.

Should I just :
1) set environment variables from the advanced setting on MyComputer Properties in ClassPath OR Path. (or both) (How do you set a SYSTEM and USER variable, i know only CLASSPATH and PATH)
2) I didnot find the mqjbnd05.dll in any of the ibm.mq jars that I have. So how will that solve the issue. Do i need to download any other jar.
I currently have

1. com-ibm-mq-jar
2. com-ibm-mqims-jar
3. connector-jar
4. com-ibm-iiop-jar
5. com-ibm-commonservices-jar
6. com-ibm-mqjni-jar

What else do i need to put in the ClassPath variable.

Also, this mqjbnd05 error shud only come if you have MQ installed in your machine. I use the API to connect to a remote MQ server so why do I have this error.

I will appreciate if anyone can educate me on this.

Thanks
Syed


Last edited by sarmahdi on Mon Oct 31, 2011 6:09 am; edited 1 time in total
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Oct 31, 2011 6:05 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

You are putting the wrong properties.

Use the right properties for the right kind of address. You are mixing between bindings and client connections.
Back to top
View user's profile Send private message
Vitor
PostPosted: Mon Oct 31, 2011 6:10 am    Post subject: Re: same old UnsatisfiedLinkError: no mqjbnd05 in java-lib-p Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sarmahdi wrote:
Also, this mqjbnd05 error shud only come if you have MQ installed in your machine. I use the API to connect to a remote MQ server so why do I have this error.


Because you've told WMQ you want a binding (i.e. local) connection. If you want a connection to a queue mananger on a different box set that & it will use the other jar file not mqjbnd05 (obviously enough).
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sarmahdi
PostPosted: Mon Oct 31, 2011 6:19 am    Post subject: Reply with quote

Newbie

Joined: 31 Oct 2011
Posts: 7

Thanks for the reply guys

if you mean properties by this :

Code:
//MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRAN//SPORT_MQSERIES_CLIENT);


then its commented out. I aint using that one I am using the one above.


Code:
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES);


I am not sure how to actually set it to work to connect to remote MQ Manager. What should I change in my properties to tell it that I am not connecting locally.

Thanks
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Oct 31, 2011 6:23 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

sarmahdi wrote:
Thanks for the reply guys

if you mean properties by this :

Code:
//MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRAN//SPORT_MQSERIES_CLIENT);


then its commented out. I aint using that one I am using the one above.


Code:
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES);



yes.

You have these *BACKWARDS*.
Back to top
View user's profile Send private message
Vitor
PostPosted: Mon Oct 31, 2011 6:28 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sarmahdi wrote:
then its commented out. I aint using that one I am using the one above.


Yes, I know. Even my Java is that competent. That is about the limit of my Java, but I know that.


sarmahdi wrote:
I am not sure how to actually set it to work to connect to remote MQ Manager.


What does the documentation say. Or, what led you to comment out that line and use the alternative?

sarmahdi wrote:
What should I change in my properties to tell it that I am not connecting locally.


Answer the question above about why you commented out that line, then answer this:

If an "binding" connection (as supplied by mqjbnd05) is only for a local queue manager, what is the other type of WMQ connection called?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sarmahdi
PostPosted: Mon Oct 31, 2011 6:48 am    Post subject: Reply with quote

Newbie

Joined: 31 Oct 2011
Posts: 7



its called client. I commented out cos the original code was like that and I dindt wanted to put anything new, I just put it in there cos I thought I needed to change it to a client but wasnt sure 100% so didnt used it, I was guessing I shud but I was under the impression ( forgive my lack of any knowledge of MQ systems) that client would mean a local client installation. (like a local oracle client)

I didnt knew .. untill you said binding means local . I thought binding meant connecting to a remote server. (I am sorry I was only setting it up and havent read the documentation on how to use the API totally)

In conclusion:

So you mean to say that as I was thinking, I need to use :
Code:
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES_CLIENT);
and not the other one.

Another last reason why i wasnt confident on this was that this is code that is running in production and I actually thought i shudnt change to anything new. (Why am I such a coward... )

Thanks.

Syed.
Back to top
View user's profile Send private message
zpat
PostPosted: Mon Oct 31, 2011 7:02 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5866
Location: UK

http://www-01.ibm.com/support/docview.wss?uid=swg21420737
Back to top
View user's profile Send private message
Vitor
PostPosted: Mon Oct 31, 2011 7:18 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sarmahdi wrote:
I was guessing I shud but I was under the impression ( forgive my lack of any knowledge of MQ systems) that client would mean a local client installation. (like a local oracle client)


Guessing how things work often blows up in your face. Thinking that you use a local WMQ install like a local Oracle install is much like thinking you can drive a truck because the controls look similar to those in a car. You're mostly right, but there are some key differences that could result in you being upside down in a ditch.

sarmahdi wrote:
havent read the documentation on how to use the API totally)


You might want to take a few moments to do that before continuing to code. It only gets more complex.


sarmahdi wrote:
Another last reason why i wasnt confident on this was that this is code that is running in production and I actually thought i shudnt change to anything new.


There's no good reason why the production version doesn't use a binding connection. There are good and sufficient why you'd do that (and good & sufficient reasons why you wouldn't).

sarmahdi wrote:
(Why am I such a coward... )


Lack of product knowledge. Spend some time with the documentation; understanding removes fear.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sarmahdi
PostPosted: Mon Oct 31, 2011 7:21 am    Post subject: Reply with quote

Newbie

Joined: 31 Oct 2011
Posts: 7

zpat wrote:
http://www-01.ibm.com/support/docview.wss?uid=swg21420737


I appreciate the help but as you can see my problem was different, I wasnt actually connecting to a local one so I didnt really need the dll it is saying. only my MQEnvironment was not getting fed the right props.


Why is it used in production is beyond me. but I am going to try to the new property and see if that works. that will take some time though.

but Thanks though.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Java / JMS » same old UnsatisfiedLinkError: no mqjbnd05 in java-lib-path
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.