Sunday, February 17, 2008
Deployment Framework for TIBCO BusinessWorks v.0.2
I am happy to announce the second release of the ant deployment framework for TIBCO BusinessWorks. This release includes the following bug-fixes:
- The environment settings EnvironmentSettings.xls did not support XML special symbols, which were breaking the output xml files;
- Complete rewrite of the EditConfigTask class; unexpected (for me) behavior of the SAX parser API;
A brand new task is included: UndeployEar. It allows applications to be undeployed from TIBCO Administrator. During the use of the framework I have noticed, that when changing the contents of the EAR file and deploying an application multiple times some components were not deployed. I have then decided to include this task to make sure, that every time an application is redeployed, the old one is removed from TIBCO Administrator first.
You can download the new (0.2) version from here.
For an example BW project, that includes the deployment scripts perform the following:
- Create a new directory C:\Develop\TibcoDeploymentFramework;
- Unzip the archive file and copy the "samples" directory to the newly created directory;
- Open the C:\Develop\TibcoDeploymentFramework\samples\EchoService\build.xml file and make sure that the name of the TIBCO Administrator server (it is case sensitive!), the name of the TIBCO domain, the admin username and password are set accordingly;
- Save the modifications of the build.xml file;
- Open a new command prompt and navigate to C:\Develop\TibcoDeploymentFramework;
- Run ant;
If the deployment fails, check the C:\tibco\tra\domain\<your domain>\logs\ApplicationManagement.log for more information.
Labels: Aha
Just to let you know, I tried downloading the 0.2 release of your tibco deployment ant script, but it cannot resolve the download URL: http://files.kasev.net/public/ant-tibco-0.2.zip
please advise?
Ill use 0.1 in the meantime.
Thanks!
i have been searching for an automated build tool for BW and i am very excited that i found your tool! I am going to try it at work tomorrow :)
does the tool support building EAR files where I need to import a project library? from reading the sample and blog post it didnt look like i can but wanted to confirm
thanks
vijay
It is possible, of course. I have been using it to build BW projects with referenced project libraries from the very first release. Just make sure that the build user has it's BW Designer preferences file (C:\Documents and Settings\user\.TIBCO\Designer5.prefs) properly set and that it includes all referenced project libraries. For example, mine has "filealias.pref.0=MyFramework.projlib\=C\:\\Projects\\trunk\\src\\BW\\MyFramework\\MyFramework.projlib".
the ant script works like a charm - i was able to build and deploy my EAR file on tibco administrator.
thanks a lot for this handy tool!
Vijay
Buildfile: build.xml
clean:
[delete] Deleting directory C:\Develop\TibcoDeploymentFramework\samples\EchoService\build
init:
[mkdir] Created dir: C:\Develop\TibcoDeploymentFramework\samples\EchoService\build
build:
[buildear] Starting up...
Can anyone spot what I might have configured incorrectly? Once I break the ant command from my windwows cmd screen I have an ear with 0 bytes. What am I doing wrong?
Check if the "tra.path" property contains a valid path to your TIBCO TRA install directory, "tib.admin.server" - a valid server with TIBCO Administrator installed on it, "tib.domain" - the name of your administration domain (you can use the TIBCO DomainUtility to check the name of the domain).
Hope this helps,
- Nikola.
Just an update - I have integrated your ant script with cruisecontrol - so now i have cruisecontrol taking the latest code from the source code repository (subversion), building the BW ear file, deploy and start the engine, and run JUnit test suites. Its awesome - works like a charm! :-)
Vijay
Great to hear that the toolset is useful to you too! I have done something similar, but with subversion and a scheduled job. Your implementation is more sophisticated :)
Best Regards,
- Nikola.
Im haveing trouble trying to implement this script here are my error i get from the application management log file.
2008 Jun 12 10:50:30:740 GMT -5 Error [com.tibco.administrator.command.data.application.Application] AESDKJ-0000 [main] com.tibco.pof.entity.EntityInvalidSyntaxException: The archive loaded contains data using encoding UTF-8 which is not supported by the TIBCO Administrator that requires the archive encoding to be equivalent to or contained in encoding ISO8859-1. Please change the value of parameters repo.encoding and tibcoadmin.client.encoding of the .tra file for TIBCO Administator to UTF-8, restart TIBCO Administrator and reload the archive.
at com.tibco.pof.administrator.impl.RepoInstanceEarLoadingPlugIn.a(RepoInstanceEarLoadingPlugIn.java:320)
at com.tibco.pof.administrator.impl.RepoInstanceEarLoadingPlugIn.onLoad(RepoInstanceEarLoadingPlugIn.java:50)
at com.tibco.pof.admindomain.impl.ApplicationConfigurationImpl.executeEarPlugins(ApplicationConfigurationImpl.java:1682)
at com.tibco.administrator.command.data.application.Application.upload(Application.java:408)
at com.tibco.administrator.command.tool.ApplicationManagement.if(ApplicationManagement.java:404)
at com.tibco.administrator.command.tool.ApplicationManagement.a(ApplicationManagement.java:421)
at com.tibco.administrator.command.tool.ApplicationManagement.if(ApplicationManagement.java:443)
at com.tibco.administrator.command.tool.ApplicationManagement.action(ApplicationManagement.java:358)
at com.tibco.administrator.command.tool.ApplicationManagement.task(ApplicationManagement.java:220)
at com.tibco.administrator.command.tool.ApplicationManagement.main(ApplicationManagement.java:120)
if you could help me it would be very appreciated.
thank you
isiac
This is a common problem. When you create a new BW project you can set the "TIBCO Messaging Envoding" setting. It allows two values: "ISO8859-1" or "UTF-8". The same setting is present when you create a new TIBCO Administrator domain. They both must be the same. In your case just change the setting of your project to "ISO8859-1".
Hope this helps,
- Nikola.
I am getting the following error. Can you help me out in this regard
[mkdir] Created dir: C:\Develop\TibcoDeploymentFramework\samples\EchoService
\build
build:
[buildear] Starting up...
[buildear] Exception in DesignerResourceStore.loadResourceFrom() uri:HTTP Conne
ction.sharedhttp using unknown file type resource.
[buildear] Exception in DesignerResourceStore.loadResourceFrom() uri:EchoServic
e.process using unknown file type resource.
Thanks,
phani
Please make sure that you have Business Works installed on the server where you are running the build. I think the buildear utility is not able to find the Business Works pallete components.
Hope this helps,
- Nikola.
I am getting the following error
Deployed status is Server plugin failed
when i deploy manual. its deployng proper.Please help me out
build:
[buildear] Starting up...
[buildear] Enterprise Archive File has built correctly.
[buildear] Ear created in: C:\Develop\TibcoDeploymentFramework\samples\EchoServ
ice\build\EchoService.ear
[exportconfig] Initializing ...
[exportconfig] Finished initialization
[exportconfig] Exporting application configuration ...
[exportconfig] Finished exporting application
[exportconfig] Finished successfully in 1 seconds
[editconfig] Variable MIG_HttpPort set to 7070
[undeployear] Checking if master server is responding ...
[undeployear] Finished checking
[undeployear] Initializing ...
[undeployear] Finished initialization
[undeployear] Deleting application ...
[undeployear] Finished deleting application
[undeployear] Finished successfully in 64 seconds
[deployear] Checking if master server is responding ...
[deployear] Finished checking
[deployear] Initializing ...
[deployear] Finished initialization
[deployear] Loading archive ...
[deployear] Finished loading archive
[deployear] Configuring application ...
[deployear] Finished configuring application
[deployear] Deploying application ...
[deployear] Deployed status is Server plugin failed
[deployear] Finished deploying application
[deployear] Failed. Please check log file
BUILD FAILED
C:\Develop\TibcoDeploymentFramework\samples\EchoService\build.xml:71: Missing pa
rameters, check deployear task configuration.
Total time: 2 minutes 49 seconds
C:\Develop\TibcoDeploymentFramework\samples\EchoService>
Thanks,
Palle Phanindranadh
Please check the deployment log files (C:\tibco\tra\domain\your domain\logs). They might give you some more information about what is going wrong. Can you post the last entries so I can take a look at them?
Hope this helps,
- Nikola.
I am getting the following error in the log.
But if I will deploy the same manually it goes fine.
com.tibco.infra.repository.OperationFailedException: Can not find server to connect at com.tibco.pof.admindomain.impl.BwServerDeploymentPlugIn.createRepoClientOnRemoteRepoInstance(BwServerDeploymentPlugIn.java:850) at com.tibco.pof.admindomain.impl.BwServerDeploymentPlugIn.onDeploy(BwServerDeploymentPlugIn.java:477) at com.tibco.pof.admindomain.impl.ApplicationConfigurationImpl.a(ApplicationConfigurationImpl.java:849) at com.tibco.pof.admindomain.impl.ApplicationConfigurationImpl.a(ApplicationConfigurationImpl.java:603) at com.tibco.pof.admindomain.impl.ApplicationConfigurationImpl.deploy(ApplicationConfigurationImpl.java:502) at com.tibco.pof.admindomain.impl.ApplicationConfigurationImpl.deploy(ApplicationConfigurationImpl.java:483) at com.tibco.administrator.command.data.application.Application.deploy(Application.java:698) at com.tibco.administrator.command.tool.ApplicationManagement.if(ApplicationManagement.java:510) at com.tibco.administrator.command.tool.ApplicationManagement.action(ApplicationManagement.java:413) at com.tibco.administrator.command.tool.ApplicationManagement.task(ApplicationManagement.java:194) at com.tibco.administrator.command.tool.ApplicationManagement.main(ApplicationManagement.java:125)
Thanks&Regards,
Palle Phanindranadh
The deployment error is caused because of misconfiguration in the build.xml. Please check the tib.domain property and make sure that its value is the name of your TIBCO Administrator domain. In my case it is "dev". It is easy to get it when logging-in in the TIBCO Administrator web application or using the TIBCO Domain Utility.
Hope this helps,
- Nikola.
Thanks for all your support. Now I am able to run the script fine. The issue was the scipt need to run on the server where administartor is running.I have moved the script to server and run it successfully. Is this script will run locally and deploy to the server.
Thanks,
Palle Phanindranadh
<< Home


