Wednesday, November 26, 2008

The Jar Manifest

Today i learned something about the Manifest file inside JAR file.

I found out that path for the Class-Path property starts from the path where the jar is located.

For example, if you place your JAR file at C:/myApp/service/myJar.jar, and you want to add a library (C:/myApp/lib/A.jar) to your manifest file, you will NOT be able to achieve that! Remember this!

The root path for the Class-Path property in the manifest.mf file starts with the path where the jar file installed.

In this case, if you want to put your classes into manifest.mf, you have to move the C:/myApp/lib/ to C:/myApp/service/lib

Correct me if i am wrong.

Friday, November 21, 2008

BEA Tuxedo Hack

I had a tricky problem with the Wepshere Business Integration(WBI) Adaptor. There was a error message saying that the jar file in my customized adaptor (tuxedo.jar) failed to load a 'so' file. It uses loadFile method from java.lang.System and somehow that particular file could not be found. I double checked the LIB_PATH(AIX machine) and java.lib.property and they are correct.

In the end i decompiled the particular class from the tuxedo.jar, modified the source code by using load method in java.lang.System instead of loadFile method. The load method will require us to specify the absolute file path. It works!!!

Sunday, November 2, 2008

IBM Websphere Business Integrator Adapter

My recent work is much on maintaining an adapter called Kenan Adapter deployed on an IBM product called IBM Websphere Business Integrator(WBI). This product basically picks up XML message in the queue and processes the particular messages. I was struggling on getting the web services call to work. I tried a few methods but the web services call just did not work. My project manager who has a very solid technical background could not provide a solution too. In the end he concluded that an RMI program cannot just call another RMI. The WBI framework itself is RMI based. Hence he helped me to build a standalone Java application that listens to the queue all the time, picks up messages then calls the web services. Last Friday i tested one round. The web service call was successful!