IBM has several solutions for transformation of data. One is the Map Editor in Sterling B2B Integrator. We also have IBM WebSphere Transformation Extender (WTX). WTX is a more powerful tool than the Sterling B2B Mapper, and some times one has maps that has requirements that the Sterling B2B Mapper can’t fulfill. One very simple example is one-to-many, many-to-one or many-to-many maps with more than one input or output, where WTX has a strength over the Sterling B2B Mapper.
What IBM strives for, is to use the best we have in our toolbox, to make the best possible solution. So since we have Sterling B2B Integrator as a very strong B2B Gateway and WTX as a very strong transformation solution, IBM did the only right thing – made WTX for Integration Servers, which is a version of WTX made to be embedded inside e.g. Sterling B2B Integrator. That gives the opportunity to run WTX maps the same way as running native Sterling maps inside Sterling B2B Integrator.
To make this work however, WTX has to be installed on the Sterling B2B Server. And that is what I am going to do in this article. This is however the first time I am doing this myself, so bare with me if something is not by the book. We have Consultants to do it properly…
Prerequisites
WebSphere Transformation Extender can’t be “owned” by the root user. So I have to start by creating a new user. I call my new user wtx.
Install WebSphere Transfomration Extender for Integration Servers
I start by unpacking the Installation file i have downloaded. I downloaded WTX for Integration Servers 8.4.1.2 for Linux, which is the current release. I have my Sterling B2B Integrator running on a RedHat Enterprise Linux 7 – 64-bit server. This is a tar-file, and inside there are two new tar-files. One for 32-bit and one for 64-bit.
Start the installation like below. One issue in my case was that I was missing ksh in my Linux Environment. So I had to install ksh (yum install ksh) since the installation file is using ksh.
The Text-based installation Program starts.
Enter through the very long license…
I accept the default value for temporary Directory. And also the default values for everything else. The wtx user I created is used in the installation.
Select what components to install. I choose to install everything.
Then grab a cup of coffee, and let the installation run until it is finished.
Post-installation setup
When the installation itself is done, there is some post-installation procedures.
The file InstallWTXService.sh must be run to do the setup and linking of WebSphere Transformation Extender and Sterling B2B Integrator. The file is in the folder <installationFolder>/dtx4si/. Before running the file, it has to be edited to match the installation.
The path to the installation folder for both WTX and SB2BI has to be set in the file.
When the file is edited, save the file and run it.
PS: I had one issue when running the file. The InstallWTXService.sh is calling the setupfiles.sh in the SB2BI bin folder. And the setupfiles.sh is calling a file called tmp.sh in the install folder for SB2BI. This file don’t exist, and thus the InstallWTXService.sh ends up with an error. I just did a quick-fix by commenting out the reference to tmp.sh (like the screenshot below), hoping it was not of any importance, and ran the InstallWTXService.sh. I am not sure what this tmp.sh file should be doing, but it seemed to work fine to just comment it out. But it’s probably not IBM Best Practice…:)
When this is done, i edited back the setupfiles.sh to what it should be like, and started Sterling B2B Integrator.
In the GUI, I can now see that I have the possibility to list WTX maps as well as uploading WTX maps, even though I don’t yet know if it will work.
Install WebSphere Transformation Extender Design Studio
The last part of this is to install the Design Studio to be able to build and compile WTX Maps.
I downloaded WebSphere Transformation Extender Design Studio 8.4.1.2 and installed it on my laptop. The Design Studio is by the way only available for Microsoft Windows. The Design Studio is straight forward to install.
The next thing to do, and here I needed some help from colleagues over seas in the US, is to install WebSphere Transformation Extender for Integration Servers 8.4.1.2 on my laptop. To be honest, I don’t yet really see the logic in that. Since the Design Studio is connecting to a remote server (my Linux box where SB2BI and WTX4IS is residing), I would imagine that the code needed to connect to a remote server and support Sterling B2B Integrator would be packaged together with the Design Studio itself. But it isn’t. Eventually I will understand the logic behind that…:) So I downloaded WebSphere Transformation Extender for Integration Servers 8.4.1.2 for Windows and installed that as well on my Windows Laptop.
Configure WebSphere Transformation Extender Design Studio
The next thing to do is to configure WTX Design Studio to connect to a Sterling B2B Integrator Server.
This is done under Window -> Preferences in Design Studio, and in the Preferences under Transformation Extender -> Map -> Sterling B2B Integrator. Fill in the information to connect to a SB2BI Server, and the Target Platform (the OS SB2BI is running on).
This is what is needed to design a WTX Map, and test it on Sterling B2B Integrator.
Test the configuration
To test if it works, the easiest thing to do is to use the pre-configured examples in the WebSphere Transformation Extender for Integration Servers 8.4.1.2 installed earlier.
I imported the WTX_IVT_Example_For_SIB2B. In my case was to be found in C:\IBM\WebSphere Transformation Extender 8.4.1.2\examples\integrations\SterlingB2B\WTX_IVT_Example_For_SIB2B\WTX_IVT_Example_For_SIB2B.
After importing that project to the Design Studio, I opened the map BasicMap.mms, Right Clicked on the Executable Map and selected Run on Sterling B2B Integrator.
The Map will then, through WebService, run on the Sterling B2B Integrator Server, and the result will come back to the Design Studio, as well as be visible in the Process Log in Sterling B2B Integrator.
Summary
This was my first try on installing WebSphere Transformation Extender for Integration Servers. It went mostly OK, but I had some issues with the setupfiles.sh that was pointing to a non-existent file, and the fact that I did not understand that I had to install WebSphere Transformation Extender for Integration Servers both on my server and on my Client Computer. But with some help from the always helpful developers in the US, I managed to get it installed and working.
The next step for me now, is to install the server part on my second Sterling B2B Integrator node, since I have a clustered solution.
Below is a diagram of my current environment after the WTX for Integration Servers install.
Thank you so very much for this blog. It is 100% more helpful than the IBM documentation. I was stuck with having to install an older version of ITX and your blog was exactly what I needed to get past the tmp.sh error.
Great document. Still works with ITX 9.0 and for the error with the tmp.sh I just change the relative path ./tmp.sh for the absolute path //install/bin/tmp.sh and I run without error.
Thanks for the document. Please keep sharing, you’r making a difference.
Hi Erlend,
im facing a problem when im trying to run map on B2B, (where deploy is fine)
i installed the WTX design studio on windows machine and b2b is installed on AIX, i created a map (input is csv) (output is DB) also i created an mdq file and it was created successfully, when i try to run the map through design studio it worked fine, but when i tried it on b2b(AIX) it gave me this error
WebSphere Transformation Extender Map Service failed.
Target not available
[
9
Target not available
: C:\Users\AliCH\IBM\wtx\workspace\AECB\Project\Err_BCDDS_RespToDB.aix
i think its related to DB connection, do u have any idea?
Thanks
Hi Ali,
My first guess would be that you have to create the dbPool in SB2BI. The DB Connections is defined in the file jdbc.properties file. If you look into that file, you can copy out an existing dbPool configuration, past it into your customer_oveerrides.properties or jdbc_customer.properties file, so that it will not get overwritten during patches of SB2BI, give it a unique name and edit it according to the database you are connecting to. To have the new dbPool applied to your installation, shut down the SB2BI server, run setupfiles.sh and start your server again. Hope this solves your problem.
I have a description of creation of the dbPool in this post: Create SQL Map in Sterling Map Editor
Hi Erlend,
the pool was already created and tested, im using WTX MAP not map editor map, i think that i need to define SQL ODBC connection from AIX?
Thanks
OK, I have not been running an WTX DB Map in Sterling, so I’m afraid I don’t have much knowledge on it. But much of the same setup in SB2BI should apply both for WTX/ITX and SI Maps.
is there is a way to define pool for WTX in AIX ?
Hi Erlend,
This is was an great article, which help me lot.
I would be great if you come up with one WTX mapping process for beginners.
Good luck!!! for all your potential stuffs in this blog will surely help others…
Great Job and Great site..
Thanks,
Guna
This is a fantastic guide, would not have been able to complete the install without it. Ran into the same certificate issue mentioned above, worked around it by changing the security settings to medium through the Java Console. On load it then allows you to continue in spite of the warnings. Ran into the tmp.sh issue as well.
Thanks! Nice to hear that it is usefull.
Dear Erlend,
really its important blog,
i have some questions please.
1- with you scenario 1st we need to install SBI (Linux/unix/windows) then we need to install WTX Extender for integration (Linux/unix/windows), then we have to install the WTX design studio (only windows is supported right?).
2- its necessary to install WTX and SBI on same server or we can do the installation on 2 servers?
3- if design studio will be installed on a standalone server (windows) how we can integrate this server with SBI?
Thanks
Ali
Hi Ali,
WTX for Integration servers is a version of WTX designed for installation on what IBM calls Integration Server. That is typically SB2BI or IIB. So yes, it is to be installed on the same server as SB2BI. If you would prefer to have WTX running on a separate server, it is better to use another version of WTX. For instance WTX with Launcher or WTX with Command Server. Those two versions is designed for being standalone WTX solutions. But then you don’t have the functionality with uploading the WTX maps to the common Map repository in SB2BI. So then it is a different type of architecture where WTX is more on its own. Typical reasons for installing WTX on a separate server as a standalone is if you need translation in multiple systems. Then you can have one common translation hub.
The WTX Design Studio is only supported on Windows platform. But the Design studio is only used for developing type trees and maps and testing maps. When you have created a map, you compile it and upload it to WTX. If this is a standalone WTX or a WTX for Integration Servers is not important. You can have one instance of WTX Design Studio for multiple WTX installations. The integration between Design Studio and SB2BI is done in the configuration in Design Studio. If you are using WTX for Integration Servers, you would have to install WTX for IS on your Windows machine as well to get the menu for adding the SB2BI server. The integration is done by adding the address and port number to your SB2BI installation.
Design Studio is often installed on your laptop/PC and not on a separate server. The Design Studio is a plugin to Eclipse, and is only the development tool. So usually the developers have it on their local computer, and is just connecting to the SB2BI server to be able to test and upload maps.
Erlend
Great now its some how fine, i have two more questions
1- regarding the clustering ofB2B/WTX (please correct me if im wrong)
WTX cant be clustered? so if we have clustered B2B environment as you have here we will install on Server A WTX (the installation will be on SAN/NAS) and this path should be mounted on both server ! right? or i have to install WTX on both machines, can you please clarify this point for me
Thanks
Ali
also if you can provide me with a guide for beginner in WTX design studio.
Thanks
Hi,
The WTX for IS is installed on all SB2BI Nodes to handle Clustering. Then it is the Clustering logic for SB2BI that also works for WTX. In design Studio you will link to only one of the SB2BI nodes (select whichever of the nodes you have). The only point of the link in Design Studio is to test the map on a SB2BI server and upload the map to the map repository. And since the Database is shared between the SB2BI nodes, the map will then be available on all SB2BI nodes when uploaded to one of the nodes. The map itself will run on the SB2BI node that was given the job.
This is a great article, but there are issues with the installation which you probably didn’t encounter because you tested only WTX part.
If you, after the WTX installation as described above, try to start ProcessModeler from SI dashboard, you will receive the following error message
jar resources in jnlp file are not signed by same certificate
Basically, JAR files that belongs to the SI Process Modeler and JAR files that belongs to the WTX are not signed with the same certificate.
This is the content of the ProcessModeler.jnlp file that exists in SI after the WTX has been integrated
Modeler-SI-node1-9000
IBM
Modeler-SI-node1-9000
192.168.103.187
9000
ws
http
com.ibm.websphere.dtx.si.mapsettings.MapSettingsProperties
I am still trying to figure out how to resolve this issue
I see that the content of the JNLP file didn’t post correctly here so I will try with the screenshot
http://take.ms/YPNpY
Hi Igor,
Thanks for the feedback. I have not noticed, but I will check it out to see if I have some similar issues.
Hi Erlend,
No problem at all. I noticed it immediately and I opened a service request with IBM right away. There is a way to edit JNLP file in the install_dir\noapp\deploy\gbm\webapp\pmodeler folder, but that is not the real solution. It is just a workaround which enables you to start the ProcessModeler. Since WTX install those JARs in the mentioned folder, one could think that JARs are needed so this needs to be addressed properly
I will update this post with the comment about the solution as soon as I get something useful from IBM. Since you work for IBM, maybe you will be quicker 🙂