Undo the “Oops, i accidentally added an operation to my WSDL” in TIBCO Business Works 6
TIBCO released a new product recently: “TIBCO ActiveMatrix Business Works 6” also known as TIBCO BW6. This product has received a complete overhaul, I have worked with BW6 for about 3 months now and I must say, I’m impressed by the product so far. It has potential.
TIBCO ActiveMatrix Business Works designer is now called “TIBCO Business Studio” and it’s built in Eclipse, a well-known platform within the JAVA community. TIBCO Business Studio now benefits from features embedded within Eclipse such as SVN, Maven, CI and a nicely polished debugger.
For more information about BW6 or Eclipse please refer to the two URLs provided.
However, there is one feature in BW6 that can be quite handy, but has bothered me as much as it was handy, is the option to modify WSDL files on-the-fly.
The image under represents an incoming WSDL into a process. When trying to select it to modify it’s properties a new function pops-up when hovering the mouse over it.
The two buttons allow the developer to add an “in-only “ or “in-and-out” operation.
I mainly had bad luck by clicking in the wrong location, especially when i started working with BW6, to hit this button multiple times. This resulted in a new operation(s) as shown in the image below.
We can see a new operation and in fact the WSDL has been updated and saved in the background.
So we do the opposite: select the operation and press “DELETE” on our keyboard and save the process. The operation is gone and the process is validating again. That felt like an easy fix. The problem lies in the back-end, the “Operation” and “Operation1” are still present in our WSDL as shown in the image below.
So next we try to delete them, as shown in the image below.
But suprise, they are still there in the WSDL.
Luckily the fix is easy, we only need to select the unwanted xsd:elements and delete them from the source view.
Make sure to delete the entire “<element>content</element>”, but do not delete everything in the “<schema>elements</schema>” since the request we do need is located within the schema as well.
Next, repeat the same for the WSDL message types as shown in the image below.
Result should be a clean WSDL file again, and if everything done correctly, a project that validates as intended.That was it, a quick fix that might save you some time debugging.
I hope you enjoyed my first post.