Category: Business Integration Tips

ANT & Building an EJB with the JAR task: ClassNotFoundException

Just a quick note. I was trying to build my EJB using ANT and the JAR task and when it ran, I was getting ClassNotFoundExceptions for my utility jars that should have been on the classpath. <jar jarfile=”${ejb-classes.dir}/EJB.jar” basedir=”${ejb-classes.dir}”” /> The reason is that the manifest file that existed in the directory was being overwritten […]

Read more

BPEL: Beware the use of nested loops in a short running process

One of the restrictions when dealing with a short running process is that it must always run within a single transaction. The implication is that the process must complete within the default transaction timeout window. On an application server, this is 120s. We had an issue where our Process Server was creating a large number […]

Read more

WAS: Resolution to Messages in the SIB locked forever

In a cluster where the messaging engine has failed over between nodes, a situation could arise where the transaction log (‘tranlog’) has become corrupt or is unrecoverable. In this situations, you may see messages on SIB Queues that are in the LOCKED state but are unprocessed. If you factor in a sequential delivering of messages, […]

Read more

WebSphere Application Server: -recovery flag

If you have a server that crashed without a clean shutdown, you may have transactions that are in progress and need to be recovered. In development, you would likely jusy delete the tranlog. On a production machine, you will likely need the following useful command line option when starting your server: startServer <server> -recovery This […]

Read more

Business Object Maps and ‘Required’ Attributes

Just ran into an interesting scenario. We have a business object with a required attribute (amongst a sea of non-required ones). In a business object map, we only set the non-required ones and never set the required ones to any value. In the above example, ‘productStatus’ is required, ‘name’ is not. This is the Mediation […]

Read more

Close WebSphere Integration Developer when updating Fixpacks for WebSphere Process Server

I was attempting to install WebSphere Process Server v6.0.2.3 on the server installed with WebSphere Integration Developer. The install kept failing on me with an exception: Caused by: com.ibm.ws.install.ni.framework.fileactions.NIFFileActionIOException: The file java/jre/lib/charsets.jar could not be replaced. at com.ibm.ws.install.ni.framework.fileactions.ReplaceFileActionPlugin.execute (ReplaceFileActionPlugin.java:108) at com.ibm.ws.install.ni.framework.fileactions.FileActionPlugin.executeFileAction (FileActionPlugin.java:54) at com.ibm.ws.install.ni.updi.component.was.ComponentFileActions.execute (ComponentFileActions.java:95) at com.ibm.ws.install.ni.updi.component.was.ComponentDeployAction.execute (ComponentDeployAction.java:48) at com.ibm.ws.install.ni.updi.component.was.UpdateComponent.execute (UpdateComponent.java:93) at com.ibm.ws.install.ni.framework.component.ComponentAction.executeComponentActions (ComponentAction.java:215) at […]

Read more

WMVare – Shrink the Dynamic Disk To Retain Performance

Yesterday, I talked about the benefits of installing IBM products into VMWare. Today, I just want to mention a quick tip about how to retain the performance of your virtual machines. When a hard drive is created in VMware, you have the option to specify whether the space should be allocated dynamically or ‘all at […]

Read more

WebSphere Enterprise Service Bus – Mediation Flow Component: No Refactoring for WSDL Faults

I have a solution that I’m working on that involves Mediation Flow Components. Recently, the namespace of a service I consume changed. This service throws two known faults whose namespace also changed. When I modified by Mediation Flow Component to ‘Synchronize Interface/References from component TO implemenation’ it didn’t bother to update the fault terminals. In […]

Read more

Adding JMS or MQ/JMS Custom Header Attributes

If you need to add a custom header to your JMS (default messaging) or MQ/JMS message in WebSphere , you have two options. You can specify it as a custom header on the import component in the assembly diagram, or you can use a Medation Module. You can add the custom header property in the […]

Read more

SCA, BPEL, Websphere Adapter for JDBC and Transactionality

Consider the following module: We have a Web Service Export connecting to a BPEL process which invokes the WebSphere Adapter for JDBC. The BPEL process has two invocations to insert two rows into the database. I have a business requirement that either both rows get inserted or no rows. Now in the success case, when […]

Read more

CWSIP0311E: A user is not authorized to delete a durable subscription

When attempting to start an ear after application install on WebSphere v6.1, the following exception occurred: [28/03/08 9:50:46:673 EST] 00000028 MBeanHelper E Could not invoke an operation on object: WebSphere:name=ApplicationManager,process=server1, platform=dynamicproxy, node=txuxu-was007Node01,version=6.1.0.15, type=ApplicationManager,mbeanIdentifier=ApplicationManager, cell=was007Node01Cell,spec=1.0 because of an mbean exception: com.ibm.ws.exception.RuntimeWarning: javax.resource.ResourceException: CWSIV0900E: The exception com.ibm.wsspi.sib.core.exception.SINotAuthorizedException: CWSIP0311E: A user is not authorized to delete a durable […]

Read more

IBM Support Flashes

If you deal with IBM software, one of the things that you need to keep up with are the APARs and PMRs that IBM releases over the week. If you are on the latest level of software it’s good to know what you may or may not run into. IBM provides a service from its […]

Read more

SIBus Explorer

Service Integration Bus Explorer is tool provided by IBM that allows you to browse the queues on your WebSphere Application Service. You can see individual messages, internal queues, clear queue points etc. The path to get this information requires so many clicks, that SIBus Explorer will quickly become an indispensable tool. There is a similar […]

Read more

Interop between BOXMLSerializer and JMSDataBindingImplXML

I stumbled onto a technote about the interoperablility between the way XML is serialized by the BOXMLSerializer and theĀ  format expected by JMSDataBindingImplXML. This is a concern if you serialize data from a business object and then put that data into a JMS Text message and choose ‘Text Message with DataObject Binding’ in the export. […]

Read more

How to emit a Common Base Event in Java

A quick tip on how to emit a CBE. I usually put this block of code into a utility java project and add it to my module’s dependency editor so I can emit events in my modules. ECSEmitter emitter = new ECSEmitter(“com/ibm/events/configuration/emitter/Default”, null); // create common base event eventCommonBaseEvent cbe = emitter.createCommonBaseEvent(null); // Work your […]

Read more

Console – Removing Auto-Focus & Output Line Limit

Cheers to David Currie for pointing out how to disable the focus grabbing ability of the console view in WID (and Eclipse). I’d just like to add that in the property page where you turn off the auto-focus, you can also either disable or greatly increase the size of the scroll back buffer. I usually […]

Read more