Author |
Message
|
J0 |
Posted: Wed May 19, 2004 6:40 am Post subject: Help! Encountering problems with .NET and MQ 5.3 |
|
|
Newbie
Joined: 19 May 2004 Posts: 3
|
Hi
I need to build an .NET interface with MQSeries 5.3 Client on a Win 2K machine but I am encountering problems creating the MQQueueManager object. The puzzling thing is that I was able to port my code to Win XP and it works.
Here is the error message I get when I try to create the manager...
An unhandled exception of type 'System.NullReferenceException' occurred in amqmdnet.dll. Additional information: Object reference not set to an instance of an object
Here is the an additional exception that was raised:
An unhandled exception of type 'System.TypeInitializationException' occurred in amqmdnet.dll. Additional information: The type initializer for "IBM.WMQ.MQTrace" threw an exception.
Here is the stack trace from the exception:
at IBM.WMQ.MQTrace.Entry(UInt32 component, UInt32 module)\r\n at IBM.WMQ.MQBaseObject.trEntry(UInt32 module)\r\n at IBM.WMQ.MQQueueManager.Connect(String queueManagerName)\r\n at IBM.WMQ.MQQueueManager..ctor(String queueManagerName)\r\n at test.Form1.button1_Click(Object sender, EventArgs e) in c:\\projects\\test\\form1.cs:line 102"
I haven't been able to find anything so any input would be greatly appreciated!!! |
|
Back to top |
|
 |
JasonE |
Posted: Wed May 19, 2004 6:59 am Post subject: |
|
|
Grand Master
Joined: 03 Nov 2003 Posts: 1220 Location: Hursley
|
I've seen this before, I think. Its one of...
1. Not running the fp5 amqmdnet.dll with a fixpack 5 base, (or fixpack 6 amqmdnet with fp6)
2. Having a back level amqxcs2.dll somewhere on the path (check system32)
3. Having a back level amqmdnet.dll in the GAC - Try deregistering the amqmdnet with the gac and reregistering it
FYI You cant just take the amqmdnet.dll (dot net layer) from an install and using it on another non-fp5/6 machine |
|
Back to top |
|
 |
J0 |
Posted: Wed May 19, 2004 8:44 am Post subject: |
|
|
Newbie
Joined: 19 May 2004 Posts: 3
|
Hi Jason,
THANKS! the culprit was #2. I've been banging my head on this one for a couple days... |
|
Back to top |
|
 |
JasonE |
Posted: Wed May 19, 2004 11:17 am Post subject: |
|
|
Grand Master
Joined: 03 Nov 2003 Posts: 1220 Location: Hursley
|
np. Hope its not sore  |
|
Back to top |
|
 |
mjgurney |
Posted: Wed May 26, 2004 2:02 am Post subject: What is the "minimum" set of files for a .net clie |
|
|
 Novice
Joined: 17 May 2004 Posts: 15 Location: UK, London
|
One of our developers is interested in using .net to connect to MQ but would prefer not to install the MQSeries 5.3 CSD 6 client. He was hoping to just include a few of the files from the full client installation. Has anyone done this, or know if it is possible?
Thanks,
Matt. |
|
Back to top |
|
 |
JasonE |
Posted: Wed May 26, 2004 2:22 am Post subject: |
|
|
Grand Master
Joined: 03 Nov 2003 Posts: 1220 Location: Hursley
|
no, its not possible. The .net interface is not fully managed and calls the client. You could remove a handful of dlls, but its not worth the trouble. |
|
Back to top |
|
 |
mjgurney |
Posted: Wed May 26, 2004 12:06 pm Post subject: |
|
|
 Novice
Joined: 17 May 2004 Posts: 15 Location: UK, London
|
Thanks, that is pretty much what I thought.
If I did wish to continue down the path of minimising the MQSeries client installation, because the owner of the application servers was adament that he didn't want anything unless he absolutely needed it, how would I go about that. It appears that IBM do not recommend this approach, so do not publish instructions. At the moment I can imagine it may just be a case of trial and error or using some sort of SysInternal tool to see which files are actaully being used. Do you have any other ideas?
Matt. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Wed May 26, 2004 1:50 pm Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
Sheesh. Did this Admin go into C:\WINNT and delete every file that might not be used by Windows?
Just tell him that an MQClient app needs the MQClient installed. Period. When you do the Install, select Custom and only Install the bare minimim if that will help him feel better about it. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
kevinf2349 |
Posted: Thu May 27, 2004 4:46 am Post subject: |
|
|
 Grand Master
Joined: 28 Feb 2003 Posts: 1311 Location: USA
|
I agree totally with Peter. Not only will you be exposing your applications to potential failure but also I dare bet that IBM won't want to spend too long looking at any probelms when you tell them you only 'cherry picked' the dlls. |
|
Back to top |
|
 |
mjgurney |
Posted: Thu Jun 03, 2004 3:18 am Post subject: |
|
|
 Novice
Joined: 17 May 2004 Posts: 15 Location: UK, London
|
Well, here is an update on this issue. We had a conversation with some guys from IBM who are experts on the .NET client side. We explained what we would like to do and they said, you need the full client install. You could try to be clever and delete a few things you don't need but then your install would be unsupported.
They were interested to hear our justification for why we were after a "lighter" install, and they agreed to consider our change request - which I am filling out at the moment. Basically we have a grid/parrallel style server farm where many, large, CPU intensive jobs are split up across hundreds of NT servers. MQ acts as the transport layer distributing part's of tasks to "Worker" servers. We have a clever application framework, where new versions of the app can be deloyed and rolled back on the "worker" servers on the fly, thus not impacting our 24*7 availability. Currently an upgrade to MQClient does not fit into this deployment and rollback framework, and we would like it changed so it does.
Is anyone else prepared to support my change request, asking for:
1) We would like the MQSeries .NET client to be self contained, installable by copying files to the hard drive, without registry changes, without the requirement for the entire "MQSeries Client".
2) We would like to be able to run concurrently multiple versions of the .NET client on the same host.
Of course, the more of you out there who like this idea, the better chance I have with IBM of getting the change through, so please let me know if you have any interest.
Thanks,
Matt. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Jun 03, 2004 4:31 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
mjgurney wrote: |
1) We would like the MQSeries .NET client to be self contained, installable by copying files to the hard drive, without registry changes, without the requirement for the entire "MQSeries Client".
|
You seem to be a little confused about the .NET framework API for MQSeries.
It's not a separate client, at all. It's a set of small libraries that provide, essentially, foreign function interfaces to the regular MQ API. That is, it's a set of wrapper classes, not a whole new implementation of the client interface.
The Java API, on the other hand, is a whole new implementation of the client interface. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JasonE |
Posted: Thu Jun 03, 2004 4:39 am Post subject: |
|
|
Grand Master
Joined: 03 Nov 2003 Posts: 1220 Location: Hursley
|
Actually, to reword their requirement, I would say they want a fully managed dotnet client, ie no interop calls through the the c client, rather a fully standalone MQ client as a dotnet assembly - ie the same as java where the JAR files contain the full capability to communicate with a server. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Jun 03, 2004 4:47 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
JasonE wrote: |
Actually, to reword their requirement, I would say they want a fully managed dotnet client, ie no interop calls through the the c client, rather a fully standalone MQ client as a dotnet assembly - ie the same as java where the JAR files contain the full capability to communicate with a server. |
I thought that's what I said. Maybe it's only what I meant to say...  _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
mjgurney |
Posted: Thu Jun 03, 2004 5:42 am Post subject: |
|
|
 Novice
Joined: 17 May 2004 Posts: 15 Location: UK, London
|
So you are suggesting I modify my change request to say "We would like a fully managed dotnet client, ie no interop calls through the the c client, rather a fully standalone MQ client as a dotnet assembly - ie the same as java where the JAR files contain the full capability to communicate with a server." Fine, I can do that.
Does this seem like a reasonable request? Have I made a valid case?
Matt. |
|
Back to top |
|
 |
|