Tag Archives: websphere

I moved to another blog…japila.pl…see you there!

Just to let you know that after having struggled with many things that I used to be working on in my spare time that were not very well managed, I finally decided to combine my self-learning efforts and moved to a single blog rather than writing about software in two or more (!)

The new address is http://blog.japila.pl where today I posted a new blog entry How to install IBM WebSphere ILOG JRules 7.1.1 on Windows 7.

I do hope you’ll find the new place a bit more informative and challenging. Over.

Past weekend’s installations and upgrades – WID’s fix

The past weekend was packed with installations and upgrades. I’ve got a bunch of software to install for my self-education – servers like IBM WebSphere Service Registry and Repository (WSRR) made it to RedHat Enterprise Linux (RHEL) 5.5 whereas more developer-oriented solutions like ILOG JRules V7.1 or Friday’s latest release of IBM WebSphere Lombardi Edition V7.2 went to Windows 7. All worked fine. Almost.

When I went on to upgrading WID 7, it turned out that there’s a glitch with JRE. It showed up right after the upgrade and am still unable to figure out what went wrong.

The upgrade process begun with Installation Manager. Nothing unusual.

Update took a few quarters and WID was ready for a spin.

Easy stuff. I however run into an issue right after I’d restarted the IM. It ended up with a popup window and the following mysterious error message – No Java virtual machine was found?!

I’ve seen it before and I knew the solution was to correct appropriate startup file for IM – C:\IBM\InstallationManager\eclipse\IBMIM.ini. There’s -vm option that points to a JRE and it was incorrect.

Correcting it was as easy as editing the file and run up the IM again. The mystery is why it happened at all? Anyone?

Comments on Developing JAX-WS web service integration solutions using WebSphere Integration Developer V7

That’s what I like the most – learning by sharing. It’s the most rewarding learning experience so far and today proved to be very productive.

There’s an article Developing JAX-WS web service integration solutions using WebSphere Integration Developer V7 on the IBM developerWorks site. It brought my attention for JAX-WS and WID7. Although the article learned me a few things I must admit I would not recommend following its guidelines to build JAX-WS Web Service with WID. There’s another tool for such a service called IBM Rational Application Developer and whenever WID and Web Services are in a sentence there’s only one thought in my mind – a SCA component with an Web Services export or import. I believe it’d have been much helpful if the article had shown a WID7-way of developing Web Services with a SCA component implemented in Java and exported with Web Services JAX-WS export. It turned out that the article made it another way and the review process at developerWorks let it go live. It could’ve been such an excellent article.

The author’s Java programming skills are also questionable. I could live with incorrect formatting of these Java snippets (that made the reading a less pleasant experience), but I couldn’t  understand why the web service was implemented the way it was. Why didn’t DescriptionLookup use a HashMap<String, String>? There should have been no Keys and Values (uppercase!), no Hashtable (synchronized structure!) and no casting to String in getDescription. In this case, less would bring more value.

The package example.federal.us.ibm.com was against the rules of Java package naming which say it should’ve been a reverse domain name, i.e. com.ibm.us.federal.example. This and the aforementioned naming and class selections which are all against the Java style formatting and naming made me wonder about the level of Java skills and how much effort dW reviewers put into the article to make it at the highest possible quality level. Sorry to say so, but it’s so obvious for any more experienced Java programmers.

When the Web Service was ready for deployment, why wasn’t WebSphere Process Server v7.0 at localhost selected? It’d be more natural (if not WAS7 itself). It can mislead to a false understanding that Monitor is really necessary for Web Services in WPS (which is not).

I would not recommend checking Generate WSDL file into the project and Generate Web Service Deployment Descriptor (shown in Figure 10.), so the Web Service is considered as an external Web Service with all its consequences like WSDL available under a given URL address. Having it more real-life-oriented would be of a huge advantage for readers.

With all that said, one could imagine I stopped paying attention to further reading and move on to other articles. Wrong.

In the series of WHAT_I_VE_LEARNT I could learn about Enable asynchronous invocation for generated client feature and Java SE’s java.util.concurrent.Future. A bit about the former is at JAX-WS Code generation in WebSphere Web services preferences. Also, you can check out the Creating a Web service from a Java bean using the IBM WebSphere JAX-WS runtime environment, but as far as that particular feature is concerned there’s nothing more than what you could read in the previous document. It seems there’s nothing to add beside the single sentence – once the option’s turned on, additional methods for asynchronous communication handling get created. It’s worth to note that the classes are generated in the client project and the most interesting piece is certainly the one that ends with Delegate. That’s where the Web Service’s methods are with their asynchronous counterparts. I’ve never stumbled upon it.

I decided to find out how easier it would’ve been to use another approach to import WSDLs and XSDs. As a IBM instructor I’d been teaching about the feature, but had never run it myself. That was the time to experience it. So, here goes a slightly improved version of the article as described in the section “Create BPEL process model application to invoke the service”.

Once you’ve created ElectronicSubmissionLib library, right-click it and select Import. Type in WSDL and select WSDL and XSD under Business Integration. Where WID shines (possibly it’s Eclipse itself, but can’t confirm it as I’m pretty newbie in this area) is the ability to import WSDL from a remote location. See the short screencast of mine – WID7’s WSDL and XSD Importh so I don’t have to type all in (it’s said that laziness is not that bad in the IT crowd). Don’t forget to have your server up and running upon importing so the URL is indeed fully functional.

With a very productive morning, I’ll leave the other part of the article for another “Reading” part of my next day.

Let me know how the screencast worked for you. Comments are highly appreciated.

IBM Rational Application Developer for WebSphere V8.0.1 on Windows 7’s up and running

With my recent troubles while installing IBM Rational Application Developer for WebSphere Software V8.0 it turned out I was mistakenly installing the previous Open Beta 2 version. I can hardly explain why I did a snapshot of the Parallels virtual machine I was using for the installation (it was the very first time in my virtualization career), but having done it reverting the installation was a breeze.

I downloaded the required packages and run the launchpad.

Once you click the Install IBM Rational Application Developer for WebSphere link, you’ll start the installation.

The very first step is to install IBM Installation Manager V1.4.1.

A few other clicks and you should get it up and ready.

It’s strongly advised to install IM and the other software you’re about to install in a directory with no spaces in the path and have it as short as possible. It’s probably a minor issue on Unix-based OSes, but Windows may not be as forgiving. I’m on Win7 and the last thing I’d like to worry about is to fix issues with spaces, long path names and such.

With IM installed, the next step is to install RAD8 itself as well as WAS8 Open Beta and the other versions of it – I opted for WAS7 too.

Since the installation was for RAD V8.0.0 and there was an update 8.0.1 available I clicked the Check for Other Versions, Fixes, and Extensions button for them to be downloaded and installed. In fact, you’ll have to do it anyway once RAD8’s installed to have it fresh.

At the time of the installation, 5 updates were available (that accounted for a longer installation time).

Again, don’t forget about shortening the paths with no spaces.

I chose a bit more than it’s really necessary to run RAD8, but it’s going to be a reference installation for all my further activities around JEE6 and WAS8 so I made sure there’s more than needed so I’m not stuck when troubling myself with JEE6 learning.

After a couple of hours, after around 7 GBs were downloaded and around 16GBs installed that I left over night, the next step was to install the license. That’s where I run across an issue with not being able to do so (that turned out to have been an issue with the version of RAD8 not the license or process themselves).

This time it was like a breeze. Nothing unordinary. A few clicks and it was installed.

A bit anxious, I fired up the RAD8.

It went up very fast. Finally, I could experience RAD8 with no questions about license.

But wait, WAS8’s profile wasn’t created during the installation, so just a few other clicks away till it’s fully installed.

I must admit that the installation was stunningly easy and the only trouble was the time it took – a night should be enough 🙂 Enjoy!

Troubleshooting WID installation – UPDI required

It’s been a while since I worked with IBM WebSphere Integration Developer (WID) V7 on RedHat Enterprise Linux (RHEL) 5.5 as a VMware image so when I booted it up it turned out it needed Fix Pack installation.

When I run Update in IBM Installation Manager (IM) it ended up with the following error message.

It recalled me the past experiences with updating IBM Rational Application Developer (RAD) 7.5 and WID 7 on MS Windows Vista that I worked around with renaming the directory with fixes in the installation CD. I couldn’t believe no one run across the issue and thought I’d google it.

It’s the configuration of the affected WTE installation.

[root@wid7 bi_v7]# pwd
[root@wid7 bi_v7]# ./bin/versionInfo.sh -help
WVER0010I: Copyright (c) IBM Corporation 2002, 2005, 2008; All rights reserved.
WVER0012I: VersionInfo reporter version, dated 8/9/08

-format This option specifies the output format, either ''text'' or ''html''.
-file This option specifies an output file. A file name must be provided with the ''-file'' option.
-long This option causes all maintenance package and component information to be displayed.
-maintenancePackages This option causes maintenance packages to be displayed.
-maintenancePackageDetail This option causes maintenance package detail to be displayed.
-components This option causes components to be displayed.
-componentDetail This option causes component detail to be displayed.
-help This option causes help text to be displayed.
-usage This option causes this usage text to be displayed.
[root@wid7 bi_v7]# ./bin/versionInfo.sh -maintenancePackages
WVER0010I: Copyright (c) IBM Corporation 2002, 2005, 2008; All rights reserved.
WVER0012I: VersionInfo reporter version, dated 8/9/08

IBM WebSphere Application Server Product Installation Status Report

Report at date and time September 21, 2010 10:48:03 AM CEST

Product Directory /opt/IBM/WID7_WTE/runtimes/bi_v7
Version Directory /opt/IBM/WID7_WTE/runtimes/bi_v7/properties/version
DTD Directory /opt/IBM/WID7_WTE/runtimes/bi_v7/properties/version/dtd
Log Directory /opt/IBM/WID7_WTE/runtimes/bi_v7/logs
Backup Directory /opt/IBM/WID7_WTE/runtimes/bi_v7/properties/version/nif/backup
TMP Directory /tmp

Product List
WBI installed
XML installed
SCA installed
ND installed

Installed Product
Name IBM WebSphere Process Server
Build Level of1016.06
Build Date 4/22/10
Architecture Intel (32 bit)

Installed Product
Name XML Feature Pack
Build Level cf051014.03
Build Date 4/6/10
Architecture Intel (32 bit)

Installed Product
Name SCA Feature Pack
Build Level cf051019.05
Build Date 5/15/10
Architecture Intel (32 bit)

Installed Product
Name IBM WebSphere Application Server - ND
Build Level wps0946.04
Build Date 11/18/09
Architecture Intel (32 bit)

Installed Maintenance Package
Maintenance Package ID
Description WebSphere Application Server Cumulative iFix
Build Date 11/18/2009

Installed Maintenance Package
...removed for simplicity's sake
End Installation Status Report
[root@wid7 bi_v7]# ./bin/versionInfo.sh -maintenancePackages |egrep -e IFPK98944 -e SDKPM00452
Maintenance Package ID
Maintenance Package ID 7.0.0.x-SDKPM00452

There’re lots of packages displayed and those two ones were listed too.

After some time of reading a couple of documents about IM, the installation process for WID and other BPM products as well as googling for these two packages, I finally found a document Installation Instructions for IBM WebSphere Business Compass V7.0.0.0 Fix Pack 3 ( where IFPK98944.pak was mentioned.

Any interim fixes that have been installed using the Update Installer (UPDI) must be removed with the Update Installer before starting V7.0.0 Fix Pack 3 activities. Two interim fixes were installed silently during the V7.0.0.0 install: SDKPM00452.pak and<platform><arch>-IFPK98944.pak. These will need to be removed, if you have not already done so.

It quickly occurred to me that I should install IBM Update Installer (UPDI) and uninstall the packages. I had never used UPDI this way, so with all the troubles, it was a quite nice addition to my toolbox machinery. I downloaded the current version of UPDI from IBM Update Installer V7.0.0.11 for WebSphere Software for Linux.

Run UPDI that already figured out what WAS I wanted to work with – it was the WTE from WID installation.

UPDI allowed me to pick the first package for uninstallation – SDKPM00452.pak.

Upon having selected the Next > button, it displayed what I was about to have uninstalled.

After a couple of minutes SDKPM00452.pak was gone.

I pressed the Relaunch button to go on with the other package – IFPK98944.

It might’ve turned out to have been more involved, but I merely noted it and moved on.

The second uninstallation was a bit longer – around twice as long as the former. IFPK98944 was gone.

After around 10 minutes, I was ready to launch the IM again and update the WID and WTE packages.

Another 1 hour and the installation finished with no failures or warnings.

As the last step in making sure all went fine I opened File > View Installed Packages where all the updates were listed.

I’m so happy again. On to reading the article Static and dynamic relationships in WebSphere Process Server and WebSphere ESB V7 at developerWorks.

WebSphere Lombardi Edition (WLE) in Prague and webcast about WPS 7’s Cross-component Trace

The past week I spent learning a new offering in WebSphere BPM product stack – WebSphere Lombardi Edition which, if I had to compare it to WebSphere Process Server (WPS), I could sum up as a product for human-centric business processes. During these 3 days I could touch WLE and see by myself what it is to quickly and very effectively (as far as time’s concerned) build a complete human-centric business process. WPS was perfect for integrating disparate EISes and was very technology-rich – WS-BPEL and SCA to name a few, not to mention WAS specs themselves, but lacked easy-to-use human tasks. Unlike WPS, WLE brings human tasks as a main player in this product considering integration as a second-class citizen. The very first days of my WLE learning led me thinking WLE + WPS/WESB might be a very good match *iff* human-centric (WLE) and integration-centric (WPS/WESB) business processes are needed. Gotta spend more time on WLE evaluation. Hope to write my experiences here (or even screencasting it – it was my wish for this year and can’t find enough courage to achieve so – anyone? :)).

Today I managed to watch a webcast Debugging SCA Component using Cross Component Trace feature in WebSphere Process Server. It took me 15 minutes and was very informative. I knew about the feature before, but wished to know if there’s something I might’ve missed in my understanding. I did not yet the concise approach to presenting WPS features, this time with cross-component trace, was very entertaining. I wish there were more webcasts like that one – a quarter for each feature and after a week you might call yourself a WPS/WID intermediate (!) Think about a month following a serie of such concise webcasts – hardly attainable with traditional learning techniques. Noticed it? Again comes screencasting 🙂

Learnt today – no correlation property for BSM yields CWWBV3046E: The property ” was not found

After almost a week, I’ve been able to install Monitor Development Toolkit 7.0 with WebSphere Integration Developer 7.0 on Windows Vista. When I opened WID, the Welcome screen showed up with Samples and Tutorials.

It reminded me to give one a shot and chose Vending Machine.

Imported it as a reference and decided I’d follow along to develop my own business state machine. With 3GBs for the Parallels virtual machine I’ve been working on, it was a pleasant experience – WID worked really fast.

After a few minutes I ended up with a very rudimentary BSM and deployed it onto the instance of IBM WebSphere Process Server 7 that’s installed along with WID, if you did choose so.

The deployment however failed with a bizarre error message: CWWBV3046E: The property ” was not found. It was clear it referred to a missing correlation property I had *not* defined for the BSM (as a long-running process one’s required so you can correlate messages for a particular instance of a process that’s in this case was a business state machine).

After a correlation property was defined, everything went smoothly. I knew a correlation property should’ve been defined, but the error message CWWBV3046E wasn’t very helpful. Wouldn’t it be easier if it said “Hey, your long-running process misses a correlation property”? It’d be much easier and bring some fun too.

To remember: 1) it’s possible to (attempt to) deploy business state machine model with errors, that will eventually fail, and 2) a correlation property is required for a BSM.