We can Use Linux Commands in Windows with Cygwin

We can use the UNIX/LINUX commands and also run shell scripts in Windows.This can possible with Cygwin it is free software can download from site.

We can refer the bellow links for reference

Installing Cygwin/X

http://x.cygwin.com/docs/ug/setup-cygwin-x-installing.html

 or


http://www.howtogeek.com/howto/41382/how-to-use-linux-commands-in-windows-with-cygwin/

Cygwin Package List

http://cygwin.com/packages/

EMS scripting - How to execute a sequence of EMS commands

We can execute a sequence of EMS commands by writing a simple script file.
write EMS commands in txt file and save in location C:\tibco\ems\5.1\bin
Example script file is dev.scr and its content is

show queues
show topics


open command prompt and go to the location C:\tibco\ems\5.1\bin and run the below command, it will execute the EMS commands

C:\tibco\ems\5.1\bin>
tibemsadmin -server "tcp://localhost:7222" -user admin -password "" -script C:\tibco\ems\5.1\bin\dev.scr


just give the full path of the file with the extension(i.e C:\script.txt or C:\script.scr or C:\script.anything) in the command and run it.
Even if there is no file extension, it doesnt matter :-)...you just need to have a plain text file with all the ems commands.


Syntax of the command is

tibemsadmin -server <server-url> -user <user-name> -password  <password> -script C:\script.txt

Accessing password data type Global Variables in TIBCO ActiveMatrix BusinessWorks

For example, if project defined a global variable named 'dbpassword' and its data type is Password ,So then its value displays as * (Asterisk)  only,we can access " * " the value of the global variable with the following Java code:
 String password =   com.tibco.pe.plugin.PluginProperties.getProperty("tibco.clientVar.dbpassword");

Take one business process in designer and drog & drop the Java Code Activity and define a out parameter "Output" in configuration tab and write the below code 

 String password =   com.tibco.pe.plugin.PluginProperties.getProperty("tibco.clientVar.dbpassword");
 Output=password;


and run this process we can get the password value in Output parameter.

We must specify the full path for global variables contained in variable groups to access the variable’s value. Use the slash character (/) to separate each element in the path.
We can use the com.tibco.pe.plugin.PluginProperties.getProperty() method to retrieve any Java system property or global variables defined in a project.
Global variables are contained in Java System properties that are prefixed with tibco.clientVar.

BW Error: Call process input failed validation , BWENGINE-100067

Development of the project doesn't shown any error in validation for deployment.But this error could be caused by invalid runtime data.

Resolution:Please check the input mappings for the Call Process activity

BWENGINE-100067:Call process input failed validation
Role:errorRole

Category:BW-Core
Description:The input data passed to the Call Process activity did not conform tothe input of the called process


Resolution:Please check the input mappings for the End activity in the process that was called

BWENGINE-100068:Call process results failed validation
Role:errorRole

Category:BW-Core
Description:The process that was called returned results that were not expectedby the Call Process activity


TIBCO BW Java Method does not show the classes of Jar file in "show class browser"

If we have created a simple java class with main method and one another method in the class and compiled the class.created a jar out of it and set the class path in the designer.tra(tibco.env.CUSTOM_CP_EXT) and bwengine.tra file(tibco.env.CUSTOM_EXT_APPEND_CP) with the jar file location.

Now created a bw process having a java method and trying to browse for a class.in the show class browser can able to locate jar file. But, if we can click on that jar file, it may not showing the classes or methods in the jar file to select. So for this issue we may troubleshoot like this below mentioned

Fallow the steps

1. Put your class in this path C:\tibco\bw\5.6\lib\com
2. Create your class with serializable
3. Crete jar file in C:\tibco\bw\5.6\lib
4. Create alias library and add C:\tibco\bw\5.6\lib
5. Java method activity configure library with alias library.
6. Now select your class
7. It will show your method.
8. Give input to java method
9. Desired output will be coming

If we have still the same problem then do this like mentioned here.

while building Jar file in RAD there are different ways in JAVA folder i.e.JAR,JAR file with instrumentation support and Runnable JAR file.
To enable in TIBCO classes window the jar should build as Runnable JAR file only.
So if classes are not showing in window, then should build again the JAR file properly

TIBCO Administrator Fault Tolerant Setup

This is about the configuration and the implementation details for Administrator Fault Tolerant SetUp.

TIBCO Administrator is widely used to deploy BW processes to different machines in the domain. 


If the Administrator server is down for some maintenance or hardware related Issues the deployment cannot happen and roll out dates will be affected.

To over come this problem TIBCO has provided the feature of fault Tolerant setup

1.    Product Versions

Fault Tolerant SetUp is provided with TRA Versions 5.2 and above.

The XMLs are available under

$TRA_HOME/5.6/template/domainutility/cmdline folder.(modify the XMLs to the current environment.)

2.    Configuration

This section talks about the configuration steps.


1.Install Administrator on the secondary server
2.Run create domain  script on the secondary server 

cd /apps/tibco/tra/5.6/bin>
. /domainutilitycmd –cmdFile /apps/tibco/CreateDomain.xml

3. Run Add Secondary script on the secondary server

cd /apps/tibco/tra/5.6/bin
. /domainutilitycmd –cmdFile  /apps/tibco/ModifyLDAPConfiguration.xml

4.Start Administrator on the secondary server

New Features in TIBCO Active Matrix Business Works 5.6 - Deploying to a Business Works Service Container


What is TIBCO ActiveMatrix ?


TIBCO ActiveMatrix software is a scalable and extensible platform for developing, deploying, and managing applications that conform to a service-oriented architecture.





TIBCO ActiveMatrix is a service platform for heterogeneous SOA. It gives enterprises a simpler and more productive way to deliver service-oriented applications by cleanly separating the applications from the technology details. This separation enables companies to incrementally add orchestration, integration, mediation, Java, and .NET for services to a unified runtime platform. Built-in governance allows companies to add policy management or govern the service lifecycle without having to change the applications.

With the TIBCO ActiveMatrix platform organizations are able to build next-generation applications that combine services created with disparate vendor technologies. The platform also replaces much of the technical coding involved in service creation, deployment and management, giving business analysts, architects, developers and administrators a common environment that streamlines application development. With built-in governance and management capabilities administrators have the control they need from a single, reliable console to easily deploy applications, apply policies without having to change the services, and add load balancing or fault tolerance to keep applications up and running.

 
Change in Product Name:
TIBCO Business Works has been rebranded as TIBCO Active Matrix Business works.
 Active Matrix Business Works 5.6 is backward compatible with the earlier 5.x versions of business works

 TIBCO ActiveMatrix Components


  • Hibernate
  • TIBCO ActiveMatrix Service Bus
  • TIBCO ActiveMatrix Service Grid
  • TIBCO ActiveMatrix BusinessWorks Service Engine
  • TIBCO ActiveMatrix Administrator
  • TIBCO ActiveMatrix BusinessWorks
  • TIBCO ActiveMatrix BusinessWorks(TM) BPEL Extension
  • TIBCO ActiveMatrix Adapter Service Engine for Database
  • TIBCO ActiveMatrix Adapter Service Engine for Files
  • TIBCO ActiveMatrix Policy Manager
  • TIBCO ActiveMatrix Policy Agent
  • TBCO ActiveMatrix Registry


TIBCO ActiveMatrix BusinessWorks


TIBCO BusinessWorks has been rebranded as TIBCO ActiveMatrix BusinessWorks. ActiveMatrix BusinessWorks 5.6 is backward compatible with the earlier 5.x versions of BusinessWorks. Some of the advanced features have been added to ActiveMatrix BusinessWorks 5.6 to support ActiveMatrix overall architecture. Some of the added features in ActiveMatrix BusinessWorks 5.6 are as below,

1.     Service Container

TIBCO ActiveMatrix BusinessWorks now offers a new feature, service container in this release. Once you enable a service container, you can upload multiple EAR files in the same container. All the processes running in a service container are isolated and independent of each other. So if there is a need to add new services or upgrade the existing services in future, you can:

• deploy additional EAR in the same service container without bringing down all the running services.
• upgrade an existing process already running in a service container without affecting all the other processes running in the same service container.

2.      Partner Service Invocation

To manage lifecycle of BW service through ActiveMatrix administrator, the BW services need to invoke and be invoked by other TIBCO ActiveMatrix components.TIBCO ActiveMatrix BusinessWorks introduces the following additional resource to invoke services from BW processes using abstract partner definitions.

3.     Security Context Propagation from TIBCO Policy Manager

TIBCO ActiveMatrix BusinessWorks populates the security context for Service resource or SOAP Event Source activity with the security information sent by TIBCO ActiveMatrix Policy Manager.

4.     JMS Local Transaction

TIBCO ActiveMatrix BusinessWorks supports JMS local transactions in the JMS plug-in. JMS local transaction is a new transaction group type into which JMS activities can be added. A JMS process starter can also be linked to this group. At runtime, the underlying JMS activities use the same transacted JMS session to provide transaction semantics for messages sent and received by the JMS activities.

TIBCO ActiveMatrix BusinessWorks Service Engine


TIBCO ActiveMatrix BusinessWorks Service Engine is a gateway for TIBCO ActiveMatrix BusinessWorks to the Service Oriented Architecture (SOA) world. The product provides an ActiveMatrix container to deploy ActiveMatrix BusinessWorks projects using TIBCO ActiveMatrix Administrator. The TIBCO ActiveMatrix BusinessWorks and the TIBCO ActiveMatrix BusinessWorks Service Engine provide enhanced service orchestration in the ActiveMatrix environment. This product installs the ActiveMatrix BusinessWorks container where you can deploy and run an ActiveMatrix BusinessWorks project in the ActiveMatrix environment.

     The main features of the ActiveMatrix BusinessWorks Service Engine are,

1.     Provide Services to Other ActiveMatrix Components
ActiveMatrix BusinessWorks Service Engine allows other ActiveMatrix
Components to discover and invoke ActiveMatrix BusinessWorks services. In
Order to provide services to other ActiveMatrix components, ensure that the
ActiveMatrix BusinessWorks project with Service resources is available. Other ActiveMatrix components can invoke these services based on the PortTypes exposed by these service resources.

2.     Consume Services Provided by Other ActiveMatrix Components
ActiveMatrix BusinessWorks Service Engine allows ActiveMatrix BusinessWorks to consume services provided by other components in the ActiveMatrix platform.
In order to consume services provided by ActiveMatrix components, the
ActiveMatrix BusinessWorks project with partner definitions should be available. Also, a Partner WSDL for the ActiveMatrix service should be available. If you are to consume an external service through SOAP Reference, concrete WSDL of the service should be available.

3.     Manage Life Cycle of Standalone ActiveMatrix BusinessWorks Projects
You can deploy and run a standalone ActiveMatrix BusinessWorks project in the ActiveMatrix platform. By doing so, you can benefit from a single deployment and life cycle management of the components using the ActiveMatrix Administrator.

 TIBCO ActiveMatrix Administrator


TIBCO ActiveMatrix Administrator is the utility used to create, configure, manage, and monitor various objects in the ActiveMatrix runtime. These objects include enterprise assets, environments, machines, nodes, shared resources, containers, service assemblies, service units, and services.

      TIBCO ActiveMatrix Administrator consists of the following components

1)    ActiveMatrix Administrator Server Gathers management data from nodes, responds to requests from the ActiveMatrix Administrator graphical and command-line UIs, interacts with the authentication realm to authenticate users, and interacts with TIBCO Management Daemon to manage nodes.

2)    ActiveMatrix Administrator Cluster Groups one or more ActiveMatrix Administrator servers. ActiveMatrix Administrator servers within a cluster share a database and authentication realm and are kept synchronized.

3)    ActiveMatrix Database Stores ActiveMatrix administration data.

4)    ActiveMatrix Administrator Graphical UI Provides a graphical user interface.

5)    ActiveMatrix Administrator Command-Line Interface Provides a script-based interface

6)    ActiveMatrix Administrator Command-Line Interface Provides a script-based interface.

7)    Management Daemon Gathers installation information and exposes ActiveMatrix node life cycle operations


Deploying to a Business Works Service Container

There are three ’locations’ or ‘containers’ that a Business Work EAR can be deployed to. These are:
1) Business Work Standalone Service Engine
2) Business Work Service Engine Implementation Type (BWSE-IT) within an ActiveMatrix Node
3) Business Work Service Container (BW-SC)
The first two scenarios do not require any special effort during deployment and usually can be done through the admin interfaces (bw-admin for standalone and amx-admin for BWSE-IT). But if one wishes to deploy an EAR to a Service Container then we need to setup the container and make a change in the Process Archive. This tutorial is for a Windows-based system.
Before we get into all that let us figure out what a BW Service Container (BW-SC) and why one would want to use it.
A BW-SC is a virtual machine which can host multiple processes and services within individual process engines. Each EAR deployed to a BW-SC gets its own process engine. The number of such process engines that can be hosted by a container depends on the running processes and the deployment configurations. To give an analogy, the load that an electric supply (service container) can take depends on not just the number of devices (i.e. process engines) on it but also how electricity each device requires (processes running within each engine).
Keeping in mind the above, when using BW-SC, it becomes even more important to have proper grouping of processes and services within an EAR.
The standard scenario when you would use a BW-SC is for fault-tolerance and load-balancing. In other words, to deploy the same service (fault-tolerance) and required backend processes (load balancing) on multiple containers.  Also Service Containers can be used to group related services together to create a fire-break for a failure-cascade.
The first step to deploying to a BW-SC is to enable the hosting of process engines in a container. The change has to be made in the bwengine.xml file found in the bw/<version>/bin directory. Locate the following entry (or add it if you cannot find it):
<property>
<name>BW Service Container</name>
<option>bw.container.service</option>
<default></default>
<description>Enables BW engine to be hosted within a container</description>
</property>
The second step  is to start a service container to which we can deploy our EARs. Go to the command line and drill down to the  bw/<version>/bin directory. There run the following command:
bwcontainer –deploy <Container Name>
Here the <Container Name> value, supplied by you, will uniquely identify the container when deploying EARs. Make sure  that the container name is recorded properly. In the image below you can see an example of starting a container called Tibco_C1.

The third step is to deploy our application to the container (Tibco_C1). Log in to the BusinessWork Administrator and upload the application EAR. In the image below the test application EAR has been uploaded and awaits deployment.
The fourth step is to point the process archive towards the container we want to deploy to. Click on the Process Archive.par and select the ‘Advanced’ tab. Go down the variable list and locate the bw.container.service variable which should be blank if you are already not deploying to a container.
Type the container name EXACTLY as it was defined during startup. TIBCO will NOT validate the container name so if you set the wrong name you will NOT get a warning, you will just be left scratching your head as to why it didn’t work. In our example we enter ‘Tibco_C1′ in the box (see below).
  
 Save the variable value and click on Deploy. Once the application has been deployed, start the service instance. That is it.
To verify that your application is running on the container, once the service instances enter the ‘Running’ state, go back to the command line and the bin directory containing bwcontainer.exe. There execute the following:
bwcontainer –list
This command will list the process engines running in any active containers on the local machine. The output from our example can be seen below.




We can see the process archive we just deployed, running in the Tibco_C1 container.
If you have any other containers they will also show up in the output.
Remember one important point: If a service container goes down, all the deployed applications also go down. These applications have to be re-started manually through the Administrator, after the container has been re-started.


Warn Message -[Oracle JDBC Driver]The wireProtocolMode connect option has been internally changed to 2,

When using JDBC activity in project you may get this Warn Message every time in logs

"[tibcosoftwareinc][Oracle JDBC Driver]The wireProtocolMode connect option has been internally changed to 2, due to the use of UTF8 transliteration."


To avoid this warn message add ';WireProtocolMode=2' to JDBC URL of the jdbc connection configuration
example:
jdbc:tibcosoftwareinc:oracle://XXXXXXXX.XXXX.nsroot.net:1234;SID=ABC;WireProtocolMode=2

This Warn message may come in case of BW version upgradation or oracle 11g or Oracle 10g

SSL certificates configuration in Tibco AMBW for HTTPS ?

Step 1: Server Certificate - Generate Key

To create the certificate ,can use a command line utility tool called 'keytool'  This tool will get  with jdk/jre.

“C:\Program Files\Java\jre1.6.0_02\bin” as keytool or it is available in tibco folder while installation of TIBCO software

Generate key, Export key commands for HTTPS Server and  Import key command is for HTTPS Client.

The command for generate key is

keytool -genkey -alias server-alias -keyalg RSA -keypass <KeyPassword> -storepass <StoresPassword> -keystore keystoreCerts.jks

The command for export public key.

keytool -export -alias server-alias -storepass <StoresPassword>  -file server.cer -keystore keystoreCerts.jks

keystoreCerts.jks is name of the file which acts as repository of keys, This key will be publish to the world by server.cer which can give this file to anyone who wants to connect to your server

Step 2: Install key at server side- Identity

Create an Identity in your BW project. Choose type “Identity file”. Provide URL as path to keystoreCerts.jks.
Give the file type 'JKS' and password. Save the server identity.

This is the HTTPS configuration for Server Side

Step 3: Importing the certificate and installing it at client side - Import the key

Get the server.cer from the server authority which is publicly available.

The command for import  public key

keytool -import -v -trustcacerts -alias server-alias -file server.cer -keystore cacerts.jks -keypass <Keypassword> -storepass <StoresPassword>

As this command succeeds, you will have public key imported in the local keystore cacerts.jks

Step 4: Install key at client side- Identity

Create an identity i.e. client identity using file cacerts.jks.
Certificate in PEM format. In the BW project import the public certificate using Tools>Trusted Certificates>Import into PEM format.

Create 'HTTP send Request' and use SSL.

This is the HTTPS configuration for client Side
Note : By deafault expiry date for these certs are 3 months only So can change the validity of the Certs  expiry date by adding a"- validity" token in genkey command .Example shown in below.

Example :
open the command prompt and go to the java Key Tool path "C:\Program Files\Java\jre1.5.0_15\bin"
 Fire these below commands and can show the certs in same path "C:\Program Files\Java\jre1.5.0_15\bin"

keytool -genkey -alias server-alias -keyalg RSA -validity 365 -keypass ExampleKey1234 -storepass ExampleKey1234 -keystore ExampleKeystoreCerts.jks
keytool -export -alias server-alias -storepass ExampleKey1234  -file ExampleServer.cer -keystore ExampleKeystoreCerts.jks
keytool -import -v -trustcacerts -alias server-alias -file ExampleServer.cer -keystore cacerts.jks -keypass ExampleKey1234 -storepass ExampleKey1234

  © Blogger templates The Professional Template by Ourblogtemplates.com 2008

Back to TOP