Archive for the ‘WebSphere Application Server’ Category

WebSphere MQ Java in J2EE

Wednesday, January 2nd, 2008

Thanks once again to Paul Titheridge, this time for pointing me to this technote covering the use of the WebSphere MQ Java APIs in a J2EE/JEE environment. It seems that IBM does now support the use of the WebSphere MQ Java interfaces in a WebSphere Application Server environment (check the supported software for your release) but this technote provides you with lots of reasons why you shouldn’t! The Java interfaces do have functionality that isn’t currently available in the JMS API (for example message segmentation and important parts of message grouping) but that needs to be weighed carefully against the drawbacks. JMS should always be the default option unless you have a very good reason not to use it.

Cleaning up dumps

Saturday, December 1st, 2007

No – this has nothing to do with nappy changing! I’ve spent the past two weeks as part of the support team for a customer’s WebSphere Application Server environment. Although I know all the theory (I’m an IBM Certified System Administrator for Versions 5.0, 6.0 and 6.1) it’s not very often I spend long enough at any one customer to get my hands dirty. My Korn shell scripting, Jython and vi skills certainly improved rapidly during the time I was there!
(more…)

JMS problem determination

Friday, October 12th, 2007

The JMS Problem Determination Redpaper covering WebSphere Application Server Version 6.1 was published at the start of the month. As the long list of authors indicates, Rich Coppen has done a fantastic job in getting input from the whole of the development team so this is a pretty comprehensive resource.

Messaging identities

Friday, October 5th, 2007

Given Alasdair has been kind enough to include me in the acknowledgements, that guarantees him a plug for his developerWork’s comment line entitled “Connect an application to the default messaging provider using the run-as identity“. This describes how to connect to the default messaging provider in WebSphere Application Server using the application’s current runtime run-as identity rather than, as is usually the case, the credentials administratively associated with the connection factory or resource reference. As always, just because something is possible, doesn’t mean you should do it, so please head Alasdair’s comments about what to consider before implementation.

WebSphere MQ 5.3 and WebSphere Application Server 6.1

Monday, September 3rd, 2007

A question from a colleague had me wondering about the following restriction stated in the WebSphere Application Server Version 6.1 pre-reqs:

IBM WebSphere MQ 5.3 CSD 12 and IBM WebSphere MQ 5.3.1 for z/OS + PK10303 are supported for client mode connections only.

Fortunately, Paul Titheridge from the service team was able to provide me with an explanation. The use of the WebSphere MQ 5.3 JMS client is not supported in a Java 5 JVM which is, of course, what Version 6.1 of the application server is running on. For a client connection, you should use the WebSphere MQ Version 6 JAR files which are supported under Java 5, and also provide backwards compatibility when making a client connection to a Version 5.3 queue manager.

That said, with WebSphere MQ Version 5.3 due to go out of service at the end of next month then this is probably a largely academic discussion.

Updated: Paul’s explanation of the reasoning behind this statement is entirely correct but, it transpires, that statement is now out-of-date and only tells part of the story. WebSphere MQ 5.3 is now supported with WebSphere Application Server 6.1 providing you have at least CSD 13 of the former and 6.1.0.5 (6.1.0.6 on z/OS) of the latter. You also need to set the MQ_INSTALL_VERSION WebSphere variable as explained in the InfoCenter and this tech note. Thanks to Alasdair Nottingham for picking me up on this.

WebSphere MQ and the client container

Friday, August 17th, 2007

WebSphere Application Server has shipped with JAR files for the WebSphere MQ JMS provider since Version 5.0 as they were, at the time, required for the embedded messaging provider. However, if those JAR files do not match the version of WebSphere MQ you are using (as is the case with WebSphere Application Server V6.0 and WebSphere MQ V6) you may see error messages such as java.lang.NoSuchFieldError: msgToken. As documented on the support site and in the InfoCenter, on the server-side the correct thing to do is update the MQ_INSTALL_ROOT WebSphere variable to point to your real WebSphere MQ installation. What I haven’t seen documented anywhere is what to do in the case where you are using the WebSphere Application Server client container. In that scenario, you need to modify the JMS_PATH environment variable defined in the launchClient batch file in the application server bin directory.

JMS connection pooling

Thursday, August 16th, 2007

I’ve mentioned one of my colleague Paul Titheridge’s articles before (on JMS Application Server Facilities) and he’s just started a new related series which is well worth taking a look at. This time Paul has turned his attention to the myriad of connection pool properties provided by WebSphere Application Server and what they mean when using WebSphere MQ as the JMS provider. As before, Paul has provided some thoroughly worked examples to help explain the implications of changing different values.

IBM Resource Adapter for JMS with WebSphere Application Server

Thursday, July 5th, 2007

I’ve mentioned the IBM Client for JMS on J2SE with IBM WebSphere Application Server on a couple of occasions. As the name suggests, this provides you with a couple of JAR files that allow a standalone J2SE application to act as a JMS client to the WebSphere Application Server default messaging provider. What it isn’t good for, is acting as a client from another, third-party, application server. Yes it may work but you don’t get all those good things that an application server provides, like XA transaction coordination and parallel message consumption using MDBs. Enter the IBM Resource Adapter for Java Message Service with WebSphere Application Server which allows you to do just these things. Note that it’s currently only tested on Apache Geronimo V1.2 and WebSphere Application Server Community Edition V1.1 but it’s a JCA 1.5 compliant resource adapter so should work with any J2EE 1.4 application server. Also note that, as with the original client, this download is initially only available with an early access license. If you are interested in using it in production though, drop a note to the e-mail address in the technical support section.