Vishal Mody

Architect

  Home  |   Contact  |   Syndication    |   Login
  38 Posts | 0 Stories | 37 Comments | 0 Trackbacks

News

free counters

Twitter




Tag Cloud


Archives

Post Categories

Blogs

Links

Tags

Friday, April 06, 2012 #

Hello folks,

     Recently I got involved in a project for building a demo application for one of our customers with Kinect for Windows. Yes, something similar what Tom Cruise did in the movie Minority Report. Waving arms, moving stuff around, swipes, speech recognition, manipulating computer screens without even touching it. Pretty cool!!! The idea in the movie showed us how technology would be after 50 years from that day.

 

Minority Report Movie clip.

    

     Well, that 50 years of time frame got squeezed and recently on Feb 1st 2012, Microsoft released the official Kinect for Windows SDK. That’s just 10 years from the movie release. Although, the product is in it early stages but with developer creativity and continuously improving hardware, those features shown in the movie are not very far away from becoming a reality. Soon after releasing the SDK, Microsoft again announced in March the release of its new Kinect for Windows SDK version 1.5 which is coming out in sometime May. More history about Kinect.

Anyways, so for a newbie with Kinect, where would you start. Here is what I would suggest you can do.

I always hate developing UI application but well, you would need to get your hands dirty with WPF too in order to work with Kinect. So get started with WPF concepts too.

I will keep adding stuff to the list once I come across them but so far the above list would definitely get you started building your first Kinect apps.

Till then Happy Kinecting…!!!!! Winking smile


Thanks,


Vishal Mody 

kinect


Tuesday, February 21, 2012 #

In this post we will see few of the initial steps for developing BizTalk Solutions for integrating with PeopleSoft Enterprise Systems using PeopleSoft Adapter. In order to proceed further, you must have Installed and Configured PeopleSoft Adapter properly, both on BizTalk side and PeopleSoft System side. This particular post is based on PeopleSoft HRMS 9.0 system. But the steps shown below should be same for any PeopleSoft Enterprise System.

The steps will be same to connect to any Component Interface of PeopleSoft System. Here we will be connecting to the Employee Personal Data component interface.

Environment:

BizTalk Server 2010

Visual Studio 2010

SQL Server 2008 with SP2

PeopleSoft HRMS 9.0 with PeopleTools 8.52

Steps:

  • Open Visual Studio 2010 and create a new BizTalk Solution. In this case we named it as PSDemo.

1

  • Open BizTalk Server Administration Console and you can use any Application or you can create a new Application. Here we are using the BizTalk.EnterpriseApplication.

2

  • Go to Send Ports for this application and right click and create a new Static Solicit Response Send Port.

13

  • Name the send port appropriately and select PeopleSoft as the Transport Type and XML Transmit and XML Receive as the pipelines as shown in the screenshot.

3

  • Click Configure for the PeopleSoft Adapter and fill in the appropriate values for the PeopleSoft adapter properties. You can keep other values as default ones apart from the Application Server Path, Java_Home, Password, PeopleSoftJarFile and Username.

4

  • Click Apply –> Ok. Restart the BizTalk Host Instance and then Stat this particular Send Port. Check the event log if you have any errors after starting the Send Port.

5

  • Go back the the Visual Studio solution. Right click the project and click Add Generated Items.

6

  • Click Add Adapter Metadata.

7

  • From the list of registered adapters, select PeopleSoft Adapter and wait for a second and you will see the list of Send Ports registered with PeopleSoft Adapter. Select the one which we created above and click Next.

8

  • Wait for few seconds and you will see all the Component Interfaces for the PeopleSoft System. If you don’t see any CI then there might be some issue in your PeopleSoft Adapter configuration on the send port side. Check the Event Log for any error. For any JVM related errors, check out this blog post to fix them. It also discusses other error fixes.

9

  • Select the component interface from the list for which you want to generate the metadata for. Here we will be using CI_Personal_Data which is a component interface for PeopleSoft HRMS Employee Personal Data.

10

  • Once selected click Finish and after few seconds you will see the schemas and orchestration added for this CI.

 11     12

 


Tuesday, February 14, 2012 #

Commonly when you try to connect the Enterprise Applciatons with BizTalk Adapters you might get errors like :

E-PSFT0029: JVM was not started

OR

Unable to find JAVA_HOME.

As the error says, it is unable to locate the JVM.dll and unable to start it.

Resolution:

  • Make sure the folder having JVM is present as a value in PATH variable of environment variables. Say for PeopleSoft Applications, the JVM can be found with the app called JRockit so make sure the folder path of JRockit containing the JVM is properly present in the environment variable value.

Path Env Variable

  • Apart from PATH variable, make sure you also have a variable named CLASSPATH with the Jar file location in it. The mentioned below is a psjoa.jar file needed for PeopleSoft Adapter. 

ClassPath Env Variable

  • Download this exe and provide the path of the JVM.dll and check if its able to start it successfully. If yes then you can use this Folder path in the BizTalk Server Adapter configurations on the BizTalk Receive or Send Ports. If the JVM is unable to start with this tester then you know the problem is with this JVM.dll. May be some kind of security settings or access issues. Get the JVM.dll working.

Success:

JVMTest1

Failure:

JVMTest2

  • Make sure you have all the necessary access to the user which will be connecting to the Enterprise Application. Also for the user on which the BizTalk Host Instance, BizTalk Adapters, BizTalk Send Handlers, BizTalk Receive Handlers etc are running. For eg, for PeopleSoft Applications, you will have to configure the PeopleSoft System as shown in this post so that BizTalk Adapter can connect to it.
  • Lastly, make sure you have all the values in the BizTalk Send/Receive Port Adapter configurations properly with all the usernames, passwords, case sensitive values correctly.

Hope these helps.

Thanks,

Vishal Mody


Wednesday, January 25, 2012 #

Architecture of PeopleSoft Adapter:

The BizTalk PeopleSoft Adapter is based on the BizTalk Server Adapter Framework. More info: How the Adapter Is Designed: The Adapter Framework. The PeopleSoft adapter basically communicates with the PeopleSoft Component Interfaces via the PeopleSoft JOLT protocol (over TCP/IP). The adapter communicates with PeopleSoft system by receiving a XML message which is later encapsulated into a SOAP request using the PeopleSoft psjoa classes. With this connection we can get the metadata to call into the existing Component Interfaces and generate the API schemas and use them within BizTalk Server for mapping, orchestrations at design time and runtime. According to Microsoft, if you need to have PeopleSoft Enterprise to initiate the call to BizTalk Server, they recommend using the HTTP adapter. More info : Creating a PeopleSoft HTTP Host and Port

PS Adp 1

More detailed information on PeopleSoft Adapter Architecture can be found on MSDN.


Requirements for PeopleSoft Adapter:

  • BizTalk Server Enterprise Adapters installed and configured and of course BizTalk Server 2010 installed and configured.
  • Java Development Kit (JDK) 1.4.2 or later.
  • Access to the PeopleSoft Application Designer to deploy Component Interface. The PeopleSoft Application Designer does not have to be on the BizTalk server.

Installing BizTalk Server Enterprise Adapters:

  • Open the BizTalk Server 2010 setup and click Install Microsoft BizTalk Adapters.

BTS1

BTS2

    • Install Adapters packs for all the 4 Steps.

BTS3

BTS4

BTS5

BTS6

BTS7

BTS8

BTS9

  • This concludes the installation the BizTalk Adapters for Enterprise Applications. Don’t worry about the warning in Step1.

BTS10


Configuring PeopleSoft Adapter for BizTalk Server:

  • Open BizTalk Server Administration Console –> Platform Settings –> Adapters –> Right Click –> New –> Adapter

BTS11

  • In the new window, choose name as PeopleSoft and from the adapter dropdown choose PeopleSoft Enterprise. Click Apply –> OK and restart your Host Instances. Now you can see the PeopleSoft Adapter as the installed BizTalk Adapters.

BTS12

BTS13

  • This concludes the configuration of PeopleSoft adapter on the BizTalk side. Next is to create a Component Interface on the PeopleSoft side though which BizTalk PeopleSoft adapter can communicate.

Configuring a New Component Interface for PeopleSoft:

Environment

- PeopleSoft PeopleTools 8.52

- PeopleSoft Enterprise HRMS 9.0

- Oracle Web Logic Server 10.3.4.0

- Tuxedo 10gR3

- JRockit JDK R28.1

Step1: Creating a New Component Interface:

  • Go to the Server where you have PeopleSoft Enterprise Application installed.
  • Go to Start –> All Programs –> PeopleSoft (can differ according to version you have installed) –> Application Designer. Log in with your PeopleSoft user ID.

PS Adp 2

  • On the File menu, click New. In the New dialog box, select Component Interface.

PS Adp 3

  • Click Select on the next window and it will show list of current CI. Select any Component Interface which does not have any keys. After you select the appropriate component, you see a message asking if you want the fields exposed in the selected component to become the default properties of the Component Interface.

PS Adp 4

PS Adp 5

  • Click Yes to confirm the Default Property Definitions or No if you don’t want any properties initially created.

PS Adp 6

  • On the File menu, click Save As. In File Name, enter GET_CI_INFO, and then click OK.

PS Adp 7

  • Right-click any method of your new Component Interfaces, and then click View PeopleCode. A new blank window will pop up.

PS Adp 8

  • Copy and paste the contents of <PeopleSoft installation directory>\PeopleSoft Enterprise\config\get_ci_info.pc into the window. Open the file in notepad and copy the contents of it.

PS Adp 10

PS Adp 9

  • On the File menu, click Save. You now have a new Component Interface.
  • Just to verify if you perfomed the steps correct. Close the Application Designer. Reopen Application Designer and Log in with your PeopleSoft user. Go to File –> Open –> Component Interface and browse to GET_CI_INFO and open it. You should see something similar as shown below.

PS Adp 11

Step2: Set the PeopleSoft Component Interface security:

In the below steps, the Permission lists, Roles and User Profile are just selected randomnly to display the steps. Please select the appropriate Permission List, Roles and User Profile according to your use and accessibility. Highly recommend setting up this security with a PeopleSoft Administrator person or a PeopleSoft expert.

  • Sign in to PeopleSoft Web Portal.

1

  • Select PeopleTools, Security, Permissions & Roles, Permission Lists.

2

  • Click Search, select the relevant Permission List, and click the appropriate list hyperlink. The Permission List pane opens on the right.

3

  • Click the right arrow next to the Sign-on Times tab to display the Component Interfaces tab. Click the Component Interfaces tab.

4

  • Click the + button to add a new row to the Component Interfaces list.

5

  • Select the GET_CI_INFO component interface and click Edit.

6

7

  • Click Full Access (All) to set the methods to Full Access. Click OK.

8

  • Scroll down to the bottom of the Component Interfaces window and click Save.

9

  • Select PeopleTools, Security, Permissions & Roles, Roles. Click Search, select the relevant Role and click the appropriate list hyperlink.

10 

  • The Role pane opens on the right. Click the Permission List tab.

  • Click the + button to add a new row to the Permission List.

  • Select the GET_CI_INFO Permission List.

  • Scroll down to the bottom of the Roles window and click Save. [Save as GET_CI_ROLE]

11

  • Select PeopleTools, Security, User Profiles, User Profiles.

  • Click Add New Value, type BizTalk into the text box, and click Add to display the General tab

12

  • Select a Symbolic ID in the drop-down box.

  • Type a Password and Confirm Password.

  • Choose an appropriate Navigator Homepage.

  • Choose an appropriate Process Profile.

  • Choose an appropriate Primary Permission List for the Primary field.

  • Choose an appropriate Row Security Permission List for the Row Security field.

13

  • Click the Roles tab.

  • Click the + button to add a new row to the Roles list.

  • Select the GET_CI_INFO Role.

  • Select the PeopleSoft User Role.

  • Select the Standard Non-Page Permissions Role.

  • Scroll down to the bottom of the User Profile window and click Save.

14

Step3: Testing the Component Interface:

  • Start  PeopleSoft Application Designer. Click File, Open and select Definition = Component Interface.

  • Select GET_CI_INFO CI from the list of Component Interfaces.

15

  • After opening GET_CI_INFO, right-click anywhere in the right pane of your Component Interface definition and select Test Component Interface.

    The Component Interface Tester dialog box appears.

16

  • GET_CI_INFO should not contain any keys. If keys are present, you need to return to Application Designer and remove them.

This concludes the set up of the GET_CI_INFO Component Interface needed to communicate with BizTalk Server. Open-mouthed smile


In the next coming blog posts we will see how we can generate metadata with this GET_CI_INFO Component Interface.


Regards,

Vishal Mody Winking smile


PS: Reference from MSDN article : Microsoft BizTalk Adapters for PeopleSoft

 


Tuesday, January 24, 2012 #

Step 9: Completing the Database Setup:

This step is a very critical step and should performed with very much attention. Below mentioned steps are the ones which I thought were required for the environment I was building but I very highly recommend that you perform this step from the Oracle Installation document which can be found here. Look at Chapter 7 in this document. 

Updating PeopleTools System Tables:

  • Here PS_HOME is the directory where you have installed your PeopleTools. In our case its C:\PT852 directory.
  • Got to PT852\scripts and run rel851u.sql and rel852u.sql sql scrips.
  • Edit and run the grant.sql script in the PS_HOME\scripts directory. This will grant permissions to the CONNECTID. Run the script as a user with Microsoft SQL Server system administrator privileges.
  • Invoke Data Mover by running PS_HOME\bin\client\winx86\psdmt.exe. The PeopleSoft Logon window appears.Log on using a valid PeopleSoft Operator ID, such as PS for HRMS.
  • Run the storeddl.dms Data Mover script in the PS_HOME\scripts directory.
  • Invoke Data Mover by running PS_HOME\bin\client\winx86\psdmt.exe. The PeopleSoft Logon window appears. Log on using the ACCESSID you specified when you created your Data Mover scripts with the Database Setup program. This will start Data Mover in bootstrap mode.
  • Run the msgtlsupg.dms Data Mover script in the PS_HOME\scripts directory. This will update the PeopleSoft PeopleTools messages in your database.

Updating PeopleTools Database Objects

  • Launch Appplication Designer and sign on to your databse with a valid PeopleSoft UsedID.
  • Select Tools, Copy Project, From File.
  • In the resulting dialog box, change the import directory to PS_HOME\projects, select PPLTLS84CUR from the list of projects and click the Select button.

PostDB1

  • The Copy From File dialog box appears. Select all object types and then click the Copy button. When the progress window disappears, the project has been copied

PostDB2

Altering PeopleTools Tables:

  • Launch Application Designer with a valid PeopleSoft user ID and sign on to the installed database. Select File, Open. Select Project, enter PPLTLS84CUR in the name dialog box, and click OK.
  • Select Build, Project.

PostDB3

  • Select Create Tables and Alter Tables in the Build Options region.
  • Select Build script file in the Build Execute Options region.
  • Click Setting. The Build setting dialog box appears:

PostDB4

PostDB5

PostDB6

  • Click OK.The Build dialog box reappears. Click Build. Click Close when the process is completed.

Updating the PeopleTools System Data:

  • Invoke Data Mover by running PT852\bin\client\winx86\psdmt.exe. The peoplesoft logon window appears.
  • Log on with the AccessID and Password.
  • Run the DataMover scripts from the application database version. In our case run Pt851tls.dms and pt852tls.dms
  • Run the pslanguages.dms Data Mover script in the PS_HOME\scripts directory.
  • Run the tlsupgnoncomp.dms Data Mover script in the PS_HOME\scripts directory.
  • Open Data Mover using a valid PeopleSoft Operator ID, such as PS for HRMS
  • Run the msgtleng.dms Data Mover Script in the PS_HOME\scripts directory.
  • Run the ptstreng.dms Data Mover script in the PS_HOME\scripts directory.
  • Run the storept.dms Data Mover script in the PS_HOME\src\cbl\base directory.
  • Run the ptdefnsec.dms Data Mover script in the PS_HOME\scripts directory.
  • Run the createvw.dms Data Mover script in the PS_HOME\scripts directory.

This concludes post database configurations.


Step10: Configuring the Application Server on Windows:

  • Go to command prompt and go the the location C:\PT852\appserv
  • Type PSAdmin and click enter
  • Select 1 for Application Server and press enter.
  • Specit 2 to Create a domain and press enter.
  • Enter the domain name to create: say HR84
  • Specify 4 for small if this is your initial domain installation and press Enter.
  • After the system creates the domain, this prompt appears:
  • Would you like to configure this domain now? (y/n) [y] :

Enter y. The PeopleSoft Application Server Administration menu appears with a Quick-configure menu

similar to this:

---------------------------------------------------------

Quick-configure menu -- domain: HR84

---------------------------------------------------------

Features Settings

========== ==========

1) Pub/Sub Servers : No 15) DBNAME :[HR84]

2) Quick Server : No 16) DBTYPE :[MICROSFT]

3) Query Servers : No 17) UserId :[QEDMO]

4) Jolt : Yes 18) UserPswd :[QEDMO]

5) Jolt Relay : No 19) DomainID :[TESTSERV]

6) WSL : No 20) AddToPATH :[c:\Program FilesÞ

\Microsoft SQL Server\100\Tools\Binn]

7) PC Debugger : No 21) ConnectID :[people]

8) Event Notification : Yes 22) ConnectPswd :[peop1e]

9) MCF Servers : No 23) ServerName :[]

10) Perf Collator : No 24) WSL Port :[7000]

11) Analytic Servers : Yes 25) JSL Port :[9000]

12) Domains Gateway : No 26) JRAD Port :[9100]

13) Load config as shown

14) Custom configuration

h) Help for this menu

q) Return to previous menu

HINT: Enter 15 to edit DBNAME, then 13 to load

Enter selection (1-26, h, or q):

· Press 6 and Enter this is enable WSL

· Press 8 and Press Enter this will disable Event Notifications.

· Press 17 and type PS

· Press 18 and type PS

· Press 21 and Type PSCID ( This will be your connect ID)

· Press 22 and Type P@ssw0rd (This will be your connedID Password)

· Press 13 and this will Load the configuarations which we configured above.

  • In the next menu, select 1 to Boot this Domain
  • In the next menu, select 1 for Serial Boot and 2 for Parallel Boot. This will boot the domain which we created above.
  • Next we will be doing PIA installation so keep the App server up and running.
  • Check the screenshots for your references.

AS1

AS2

as3

as5

  • This concludes configuration of Application Server

 


Step11: Setting up the PeopleSoft Pure Internet Architecture(PIA):

  • Go to PS_HOME\setup\PsMpPIAInstall and run setup.bat.
  • Click Next on the Welcome to the Installation Wizard for PeopleSoft Internet Architecture window.
  • Next follow the instruction’s as shown in the screenshots below.

PIA1

PIA2

PIA3

PIA4

PIA5

PIA6

PIA7

PIA8

PIA9

PIA10

PIA11

PIA12

PIA13

  • This will create a PIA domain. Next step is to start this Domain.
  • GO to Command Prompt and go to C:\PT852\appserv location
  • Type psadmin and Press Enter.
  • Specify 4 for Web PIA Server
  • Select 1 for Administer a domain.
  • Select the domain you want to administer by entering the appropriate number.
  • To start a web server domain, enter 1, Boot this domain.
  • The boot command invokes the startPIA.cmd script, and you see the progress and a status message on the console window.

Starting the domain..................

The domain has started.


Step12: Accessing the PeopleSoft Application:

PS Sign On

PS HomePage

This concludes the installation and configuration of PeopleSoft HRMS 9.0 Application.


Step6: Installing People Tools 8.52:

  • After you download and extract the PeopleSoft PeopleTools installation files you can find the installer in PS_INSTALL/disk1. Launch the installer using setup.bat. Click Next when you see the Welcome screen for PeopleTools 8.52.
  • Follow the steps as shown in the screen shots below.

clip_image001

clip_image002

clip_image003clip_image004

clip_image005

clip_image006

clip_image007

clip_image008

clip_image009

clip_image010

clip_image011

clip_image012

clip_image013

  • This concludes the installation of PeopleTools 8.52.

Step 7: Installation PeopleSoft Application Software (HRMS 9.0):

  • Download and extract the step up files at PS_APP_HOME location on C:\.
  • Launch the installer with Setup.bat.
  • Follow the instructions as shown in the screenshots below.

clip_image015

clip_image017

clip_image019

clip_image021

clip_image023

clip_image025

clip_image027

clip_image029

  • This concludes the installation of PeopleSoft HRMS 9.0

Step8: Installing and configuring PeopleSoft Databases:

  • Go to the location C:\PT853\setup\PsMpDbInstall, double click setup.exe
  • In the welcome screen click Next to continue and follow the instructions as shown in the screenshot below.

clip_image002[4]

clip_image004[4]

clip_image006[4]

clip_image008[4]

clip_image010[4]

clip_image012[4]

clip_image014

clip_image016

clip_image018

clip_image020

clip_image022

clip_image024

clip_image026

clip_image028

clip_image030

clip_image032

Next steps continued in Part 3.

Thanks,

Vishal Modi


Environment what we are building consists of:

    • Operating System: Windows Server 2008 SP2.
    • Database Server: SQL Server 2008 with SP2.
    • PeopleSoft Application: PeopleSoft Enterprise Human Resources Management System and Campus Solutions 9.0
    • PeopleTools: PeopleSoft PeopleTools 8.52
    • Web Server: Oracle Web Logic Server 10.3.4

The machine name given for this environment is WIN2K8 and currently only 1 user, the default one which is Administrator and it is the local admin.

The below steps are performed with reference to the installation document of PeopleTools 8.52 on Microsoft SQL Serer provided by Oracle which can be found here. This document is indeed very good and describes everything in very much details. Only drawback is that it is like 700 pages document and very tedious to go through and perform steps. Hence thought of writing same instruction set but in bit easy format and more screenshots. Although, if you are not short of time and you really want to understand the installation and how each piece of software goes hand in hand with other then I highly recommend performing the installation with the Oracle document.


Step1: Download and install SQL Server 2008 with SP2:

  • Minimum requirement is Service Pack 2. If you have SP2 installed then you should see the SQL Server Native Client version as 2007.100.4000.00 as shown below in the screenshot. As of date, the latest Service Pack out for SQL Server 2008 is SP3 so even if you install SP3 then it works.

ODBC


Step2: Download all software required from Oracle

  • Go to Https://edelivery.oracle.com and sign in with your Oracle Account. If you do not have one, you can easily create one and its free registration.

edelivery

  • On the Media Pack Search Page select Product Pack as PeopleSoft Enterprise and Platform as Microsoft Windows x64.

PS Ent X64

  • On the next page select PeopleSoft Human Resources Management System and Campus Solutions 9.0 Media Pack and select Continue.

PS HRMS 9.0

  • On the next page download the following Softwares.

o PeopleSoft Enterprise Human Resources Management System and Campus Solutions 9.0: Feature Pack - March 2011

o PeopleSoft Enterprise Human Resources Management System and Campus Solutions 9.0 Supplemental Installation Information (Revision 3)

o PeopleSoft PeopleTools 8.52 Disc 1 of 3

o PeopleSoft PeopleTools 8.52 Disc 2 of 3

o PeopleSoft PeopleTools 8.52 Disc 3 of 3

o Tuxedo 10gR3 for MS Windows Server 2008 w/MS VS 2008 x86 32-bit

o JRockit JDK R28.1 for Java SE 6 with JRockit Mission Control 4.0.1 for Microsoft Windows (64-bit x86)

o Oracle WebLogic Server 11gR1 (10.3.4) Generic and Coherence


Step3: Installing JRockit for Microsoft Windows:

  • Unzip the downloaded file and double click the setup file. Click Next on the Welcome screen window.

JRockit1_thumb5_thumb

  • Change the installation directory to C:\Program Files\Java\jrockit-jdk1.6.0_20-R28.1.0-4.0.1 and click next

JRockit2_thumb1_thumb

  • Keep the default values on all other pages and as shown in below screen shots.

JRockit3_thumb1_thumb

JRockit4_thumb1_thumb

JRockit5_thumb1_thumb

JRockit6_thumb1_thumb

JRockit7_thumb1_thumb

  • This concludes the installation of JRockit.

Step4: Installing Oracle WebLogic on Windows:

  • Save the installation file wls_generic.jar from Oracle EDelivery in the directory called WLS_Install on C:\
  • Open a command prompt and go to WLS_INSTALL.
  • Set the environment variable JAVA_HOME to be the location where you installed the JRockit and Use the following command to launch the installer.

WLS-1_thumb7_thumb

set JAVA_HOME=”C:\Program Files\Java\jrockit-jdk1.6.0_20-R28.1.0”

%JAVA_HOME%\bin\java -jar wls1034_generic.jar -mode=GUI -log=C:\WLS_Install\Wls1034Install.log

WLS-1_thumb15_thumb

  • Wait for few seconds or also this might take few minutes and the Oracle WebLogic Installer Window will come up. Follow the instructionas as shown in the screenshots for next installation steps.

WLS-2_thumb1_thumb

WLS-3_thumb1_thumb

Remove the check box which says “I wish to receive security updates via My Oracle Support” . And click yes to remain uninformed for next 2 windows.

WLS-4_thumb1_thumb

WLS-5_thumb1_thumb

WLS-6_thumb1_thumb

WLS-7_thumb1_thumb

WLS-8_thumb1_thumb

WLS-9_thumb1_thumb

WLS-10_thumb1_thumb

WLS-11_thumb1_thumb

WLS-12_thumb1_thumb

  • This concludes the Installation of Oracle Web Logic Server 10.3.4.0

Step5: Installing Oracle Tuxedo:

  • Save the zip file to a temporary directory on your local system, referred to in this documentation as TUX_INSTALL.. Extract the files into TUX_INSTALL.
  • First you need to designate an existing user or create a new user such as TUXADM to be the Application Server Administrator. The Application Server Administrator and not the Windows Administrator. This user will install Oracle Tuxedo. The designated user must be a local Microsoft Windows administrator and must have full system privileges. The PeopleSoft PeopleTools 8.52 program for the Oracle Tuxedo installation creates a new service for Microsoft Windows called “ORACLE ProcMGR V10gR3 with VS2008” for which you need administrator privileges. Administrator rights are required since system registry settings are updated. Once this new service is created, you must reboot to start it.
  • To designate the Application Server Administrator:

1. To add the user, add the user ID by choosing Start, Settings, Control Panel, Administrative Tools, Computer Management, Local Users and Groups.

2. Expand Local Users and Groups.

3. If the user ID does not yet exist, highlight the Users folder, and select Action, New User.

4. On the New User dialog box, specify the information for the new account. Make sure to deselect the User must change password at next logon check box.

5. Expand the Groups folder.

6. Right-click the Administrators group, and select All Tasks, Add to Group, Add.

7. Click Locations to select the local machine or the network domain in which you created the new user.

8. Enter the new user name you created in the object names box.

9. Click OK, and click Apply and OK again to accept the changes.

  • Double-click TUX_INSTALL\tuxedo10gR3_32_win_2k8_x86_VS2008.exe to begin the installation process. Click OK on the initial window.
  • Follow the steps shown in screenshots below.

tux-1_thumb1_thumb

tux-2_thumb1_thumb

tux-3_thumb1_thumb

tux-4_thumb1_thumb

tux-5_thumb2_thumb

tux-6_thumb1_thumb

tux-7_thumb1_thumb

tux-8_thumb1_thumb

tux-9_thumb2_thumb

tux-10_thumb2_thumb

tux-11_thumb1_thumb

tux-12_thumb1_thumb

tux-13_thumb1_thumb

  • Go to Windows –> Services

tux-14_thumb1_thumb

  • Instead of Administrator use the User account name which you created in the first few steps of Oracle Tuxedo Installation.

tux-15_thumb2_thumb

  • This concludes the installation and configuration of Oracle Tuxedo.

Next steps continued in Part 2.

Thanks,

Vishal Modi


Tuesday, July 12, 2011 #

Today we are glad to announce HERMES, an Open Source Infrastructure for publish subscribe messaging model based on MongoDB and RESTful Services.

 

This is 8th release of an open source project from TellagoDevLabs on Codeplex. Hermes is months of hard work by us, including Silvio Massari, Jose Romaniello and Gustavo Machado.

 

Hermes is not BizTalk Server. BizTalk Server has pub-sub mechanism in its infrastructure but in very traditional way and it hasn’t provided a foundation that can be seamlessly used by any .NET application. BizTalk pushes the message to its subscribers. If the subscribers are down, BizTalk retries it with the retry configurations. Even after all the retries, it suspends the message. In Hermes model, it not only pushes the message to the subscriber but also the Subscriber can come and poll for the message. Though, Hermes is not a message broker. Hermes does not care about what message it has been sent to what subscriber. Also, all the transformation are taken care by the subscriber and this removes that responsibility of the messaging engine of Hermes. Solely, Pub/Sub.

 

Hermes is over HTTP so it can be used by any Platform which makes everything really easy. Mostly all the platforms today have capability to communicate over HTTP. Hermes is very light weight and it can run easily on premise.  Check, how to setup Hermes on your machine. Also we are looking forward to test Hermes on “The Cloud”.

 

Hermes uses MongoDB to store its messages. MongoDB, which itself is ridiculously fast and hence, Hermes is very very fast. Using MongoDB, it made it extremely easy to store, partition and index high volumes of messages for a large number of topics and subscriptions.  Hermes also has an Admin Portal where you can administer Topics, Groups, Publishers, Subscribers and some statistics. You can even push messages through this portal. We are currently working on enhancing this portal.

 

We also provide a Client Library for C#. Using this library, it becomes fairly simple to create Groups, Topics, Subscriptions etc.  You can find a sample on how to use this library with the source code.

 

Licensing: Hermes is using BSD license. Completely Open Source.

 

You can check the Hermes documentation here. Read more about Hermes annoucement on Jesus Rodriguez blog post.

 

What’s Next:

  • Enhance the Administration Portal of Hermes.
  • Provide more sample applications using Hermes.
  • Enhance the REST API.
  • Build a JavaScript Client Library.
  • Hermes deployment on the “Cloud”. (AmazonEC2 and Windows Azure)
  • Explore new Messaging patterns.

 

Give it a try with Hermes and we are looking forward to hear feedback from you.

 

Thanks,

 

Vishal Mody


Monday, July 11, 2011 #

Hi there,

 

Recently we had a requirement to integrate a RESTful Service with BizTalk Server. Well no biggie. You can use WCF – Custom Adapter and use webHTTP binding and add a webHttp Endpoint behavior. Wala. Easy to say, little bit tricky to do.

 

You can look at some of these post by my company folks Jesus Rodriguez, Adrian & Leandro and also nice one on MSDN. Well there are bunch of other posts out there.

 

That all is fine, but what if you want to have a polling receive location which needs to go and do an HTTP GET to a RESTful Service. Aahh!! That’s even more trickier. Bunch of you reading this post would have already thought about some or other way of doing it.

 

1. Create a basic windows service which runs at scheduled time and drops a message into BizTalk and Biztalk picks up, a RESTful send port subscribes to that message and do the regular RESTful call.

 

2. Have a SQL Task to drop a message and have a RESTful SendPort to do the regular RESTful call.

 

3. Many more way..

 

But what if we can have a Receive Port itself polling at regular interval and make the RESTful Service call? This eliminates the need of unnecessary windows service or the SQL Task or any other triggering process you think of. Cool right..!!

 

So I came across the BizTalk Scheduled Task Adapter.

 

This is a task scheduling adapter which can execute a prescribed task at a configured time. It comes with few default scheduling tasks like XmlString, FileReader, HttpDownload. Also has few version of it out there which can work with almost all versions of BizTalk Server. Lot of people are using it without any issues.

 

How does it solve our scenario of invoking RESTful Service?

 

Well, I decided to write a custom Task for it which will be invoking the RESTful Service. I tried to make this component pretty generic so that anyone can use it but ofcourse, it also depends upon type of RESTful service you are invoking. Few might need authentication, keys etc. You can always extend it according to your needs. Anyways, below is how you can use it.

 

1. Download and install the BizTalk Scheduled Task Adapter. Here is a blog post on how you can use the defaults Tasks which comes with it.

 

2. Download and Open the RESTServiceAdapterProvider Project in Visual Studio. Compile the code and GAC the assembly if it does not do it by itself.

 

3. Open BizTalk Server Admin Console and create a new Receive Port, Receive Location under your application.

 

4. In the receive location properties, Adapter type = Scheduler. This is the name you give to the BizTalk Scheduled Task Adapter while configuring it. If you don’t see this make sure you go to the Platform Setting à Adapters à New Adapter and from the drop down select the Schedule Adapter and name it whatever you want. In my case, I named it as Scheduler.



 

5. Next click Configure next the Adapter Type. In the configuration window, type the name of Schedule Task you want to give. In this case “RESTfulScheduler”


 

6. Next click the Schedule tab on this window and specify the time you want this scheduler to run.


 

7. Next click the Task tab on the same window and under the Class, click Find Task and Click browse under Assembly Qualified Type Name and select the RESTServiceAdapterProvider.dll from the file location of the RESTServiceAdapterProvider project.


8. In the Assembly Qualified Type Name, select RESTProvider and click Select and its fully qualified name will appear at the bottom and click OK.


9. If you get Invalid Assembly class selected, make sure you Gac the RestProvider dll, close the BTS Admin Console, reopen it and restart the HostInstance and try again.

10. Next specify the URL, Content Type, WebMethod and click Apply, OK.


11. Once you are done configuring, you will see the URI as : schedule://TimeSpan/RESTfulScheduler


12. Next is according to your requirements for the message. You can have pipeline component doing bunch of stuff or have orchestration, schemas, maps, business rules for this message or have a send port subscribing to this message. Anything.

 

You can download the source code of the RESTfulAdapterProvider here

 

So, above you saw way of configuring a BizTalk Receive Location Polling a RESTful Service. Thanks for reading.

 

 

-Vishal Mody


Friday, July 01, 2011 #

Tellago Studios proudly announces its newest product, a third one within a year of time : TELESHARP

.NET Configuration Management has always been a nightmare for any enterprise. TeleSharp is an innovative product that addresses the most common challenges of .NET applications in the enterprise. After years of struggle developing and managing large .NET applications, we decided to create a tool that makes .NET applications truly agile.

You can read more about Telesharp and what difference it can make into your enterprise. Also if you want to see Telesharp in action, check the videos about it.

Click here to get more information about TeleSharp trial version!

Click here to register for the TeleSharp webinar on July 6th from 2PM - 3PM EST.

 

-Vishal

 

 

 


Tuesday, June 07, 2011 #

Recently I was building a VM for a BizTalk 2006 R2 project.  My VM configuration was :

 

  • Windows 2003 R2
  • SQL 2005 with SP4
  • Visual Studio 2005 with SP1
  • BizTalk Server 2006R2 

 

I installed the BizTalk Server 2006 R2 SP1 update from the Windows Update.  Life was good so far. 

 

Next I got requirement to use WCF SQL adapter and there I went and started installing the pre-requisite for it. 

 

1.   WCF LOB Adapter SDK SP2 

 

2.  Microsoft BizTalk Adapter for SQL Server.

 

After that I went and tried to Add the Adapter metadata but then I did not see the WCF – SQL option itself. I was wondering what happened. I did some research and came across this blog post which told to change the BizTalk Version Number manually in the registry. I did that and reinstalled/repaired the packages like multiple times but in vain.

 

Finally I came across Microsoft’s this post which describes few issues which the BizTalk Server 2006 R2 SP1 update creates. 

What’s the fix then??

 

Install the BizTalk Server 2006 R2 SP1 Cumulative Update.

 

Hope this helps.

 

Thanks,

 

VISHAL MODY


Wednesday, May 04, 2011 #

Hi there,

After the successful launch of the new website for Tellago, today we announce the new series of webinar’s called the Tellago Technology Updates. Today in the fast growing IT Industry it is very difficult to stay up-to-date with the latest and greatest Technologies out there in the market. Doesn’t matter if you are a Developer or an Architect or CTO for a company but you are every now and then challenged to evaluate new technologies and implement them.

Understanding that challenge, we at Tellago had started a weekly Tellago Technology Dojo where we have open discussion about the latest technologies out there. This Technology Dojo was a great success and today we are happy to announce a similar version of the Dojo as the Tellago Technology Updates. These are a montly series of webinars intended to help decision makers, developers and IT Professionals to understand the latest technology trends in the software industry as well as the strategies to leverage them in their organizations. These webinars will cover emerging technologies in the software industry from a practical standpoint that reflects the perspective of decision makers, developers and IT professionals.

We try to stay away from boring formal presentations and instead foment a practical dialog with the attendees in which we help them to understand the benefits and challenges of adopting specific technologies in their organizations.

UPCOMING WEBINARS:

  • NoSQL databases for the .NET developer: What’s the fuss all about?     

Date:  May 24 2011 - 2:00pm - 3:00pm EST  

http://www.regonline.com/970013 

NOSQL (Not Only SQL) databases are one of the hottest technology trends in the software industry. Ranging from web companies like Facebook, Foursquare, Twitter to IT power houses such as the US Federal Government, Banks or NASA; the number of companies that invest in the NOSQL paradigm as part of their infrastructure is growing exponentially. What is this NOSQL movement? What are the different types of NOSQL databases? What are the real advantages, challenges and ROIs? Can we leverage NOSQL databases from my .NET applications? This webinar will present an overview of the NOSQL movement from the perspectives of a .NET developer. We will explore the different types of NOSQL databases as well as their .NET interfaces. Finally, we will present a series of real world examples that illustrate how other companies have taken advantage of NOSQL databases as part of their infrastructure. 

  • I like IPhone and Android but I am a .NET developer: Developing .NET applications for IPhone and Android  

Date: Jun 21 2011 - 2:00pm - 3:00pm EST

https://www.regonline.com/developingnetapplicationsforiphoneandandroid

Do you have an investment in Microsoft technologies but are starting to develop mobile applications for the IPhone, IPad and Android devices?
Wouldn’t you love to be able to build IPhone, IPad and Android applications using the .NET framework? After years of working with Microsoft.NET-based solutions, your developers have become very proficient at delivering solutions using Microsoft technologies. Now your business and customers are looking to build applications that target the IPhone, IPad and Android ecosystems. Can you reuse your existing investment in .NET technologies? This session will highlight the strategies for developing IPhone, IPad and Android applications using the .NET Framework. The session will explore the existing technologies that make this possible as well as challenges and benefits compared to alternative approaches. Our practical viewpoint will help you to start strategizing how to extend your existing investment in .NET technologies to the IPhone, IPad and Android ecosystems. We will share real world stories of companies that already invested in this path and we will explore different ideas to get you started.

Thanks and looking forward to see you at the Tellago Technology Updates.

 

Vishal Mody

 


Tuesday, February 15, 2011 #

Hi there,

Microsoft is hosting the first edition of their annual TechReddy conference. TechReady is an internal Microsoft conference but Microsoft invited Tellago Studios to present a session about how to enable Agile SOA Governance on the Microsoft platform using our recently release product: SO-Aware.

As part of our session, we will take a look at the current challenges that organizations face when enabling SOA governance capabilities on the Microsoft platform and how organizations can benefit from  more agile, lightweight and modern SOA governance models.

The session will provide a practical view to the role of Tellago Studios' SO-Aware as an essential technology to enable native SOA governance on the Microsoft platform. We will explore in detail important capabilities of SO-Aware such as

  • Centralized service repository
  • Centralized configuration management
  • Service testing
  • Monitoring
  • Transparent integration with technologies such as Visual Studio, BizTalk Server, Windows Server & Azure AppFabric among many others

But the fun doesn't stop there.....

As part of this session, we will showcase for the first time our upcoming SO-Aware Test Workbench product which enables load and functional web service testing capabilities on the Microsoft technology stack.

SO-Aware Test Workbench provides developers with a visually rich environment to model and control the execution of load and functional tests in a SOA infrastructure. This tool includes the first native WCF load testing engine allowing developers to transparently load test applications built on Microsoft's service oriented technologies such as WCF, BizTalk Server or the Windows Server or Azure AppFabric.

 


Monday, February 07, 2011 #

A few months ago we at Tellago had open sourced the BizTalk Data Services. We were meanwhile working on other artifacts which comes along with BizTalk Server like the “Business Rules Engine”.  We are happy to announce the first version of BRE Data Services. BRE Data Services is a same concept which we covered through BTS Data Services, providing a RESTFul OData – based API to interact with the Business Rules Engine via HTTP using ATOM Publishing Protocol or JSON as the encoding mechanism.
 
In the first version release, we mainly focused on the browsing, querying and searching BRE artifacts via a RESTFul interface. Also along with that we provide the functionality to execute Business Rules by inserting the Facts for policies via the IUpdatable implementation of WCF Data Services.
 
The BRE Data Services API provides a lightweight interface for managing Business Rules Engine artifacts such as Policies, Rules, Vocabularies, Conditions, Actions, Facts etc. The following are some examples which details some of the available features in the current version of the API.
 
Basic Querying:
Querying BRE Policies
http://localhost/BREDataServices/BREMananagementService.svc/Policies
Querying BRE Rules
http://localhost/BREDataServices/BREMananagementService.svc/Rules
Querying BRE Vocabularies
http://localhost/BREDataServices/BREMananagementService.svc/Vocabularies
 
Navigation:
The BRE Data Services API also leverages WCF Data Services to enable navigation across related different BRE objects.
Querying a specific Policy
http://localhost/BREDataServices/BREMananagementService.svc/Policies(‘PolicyName’)
Querying a specific Rule
http://localhost/BREDataServices/BREMananagementService.svc/Rules(‘RuleName’)
Querying all Rules under a Policy
http://localhost/BREDataServices/BREMananagementService.svc/Policies('PolicyName')/Rules
Querying all Facts under a Policy
http://localhost/BREDataServices/BREMananagementService.svc/Policies('PolicyName')/Facts
Querying all Actions for a specific Rule
http://localhost/BREDataServices/BREMananagementService.svc/Rules('RuleName')/Actions
Querying all Conditions for a specific Rule
http://localhost/BREDataServices/BREMananagementService.svc/Rules('RuleName')/Actions
Querying a specific Vocabulary:
http://localhost/BREDataServices/BREMananagementService.svc/Vocabularies('VocabName')
 
Implementation:
With the BRE Data Services, we also provide the functionality of executing a particular policy via HTTP. There are couple of ways you can do that though the API.
 
Ø First is though Service Operations feature of WCF Data Services in which you can execute the Facts by passing them in the URL itself. This is a very simple implementations of the executing the policies due to the limitations & restrictions (only primitive types of input parameters which can be passed) currently of the Service Operations of the WCF Data Services. Below is a code sample. 

              Below is a traced Request/Response message.             
 
            
 
 
Ø Second is through the IUpdatable Interface of WCF Data Services. In this method, you can first query the rule which you want to execute and then inserts Facts for that particular Rules and finally when you perform the SaveChanges() call for the IUpdatable Interface API, it executes the policy with the facts which you inserted at runtime. Below is a sample of client side code. Due to the limitations of current version of WCF Data Services where there is no way you can return back the updates happening on the service side back to the client via the SaveChanges() method. Here we are executing the rule passing a serialized XML as Facts and there is no changes made to any data where we can query back to fetch the changes. This is overcome though the first way to executing the policies which is by executing it as a Service Operation call.
 
 
This actually generates a AtomPub message shown as below:
 
POST /Tellago.BRE.REST.ServiceHost/BREMananagementService.svc/$batch HTTP/1.1
User-Agent: Microsoft ADO.NET Data Services
DataServiceVersion: 1.0;NetFx
MaxDataServiceVersion: 2.0;NetFx
Accept: application/atom+xml,application/xml
Accept-Charset: UTF-8
Content-Type: multipart/mixed; boundary=batch_6b9a5ced-5ecb-4585-940a-9d5e704c28c7
Host: localhost:8080
Content-Length: 1481
Expect: 100-continue
 
--batch_6b9a5ced-5ecb-4585-940a-9d5e704c28c7
Content-Type: multipart/mixed; boundary=changeset_184a8c59-a714-4ba9-bb3d-889a88fe24bf
 
--changeset_184a8c59-a714-4ba9-bb3d-889a88fe24bf
Content-Type: application/http
Content-Transfer-Encoding: binary
 
MERGE http://localhost:8080/Tellago.BRE.REST.ServiceHost/BREMananagementService.svc/Facts('TestPolicy') HTTP/1.1
Content-ID: 4
Content-Type: application/atom+xml;type=entry
Content-Length: 927
 
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<entry xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
  <category scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" term="Tellago.BRE.REST.Resources.Fact" />
  <title />
  <author>
    <name />
  </author>
  <updated>2011-01-31T20:09:15.0023982Z</updated>
  <id>http://localhost:8080/Tellago.BRE.REST.ServiceHost/BREMananagementService.svc/Facts('TestPolicy')</id>
  <content type="application/xml">
    <m:properties>
      <d:FactInstance>&lt;ns0:LoanStatus xmlns:ns0="http://tellago.com"&gt;&lt;Age&gt;10&lt;/Age&gt;&lt;Status&gt;true&lt;/Status&gt;&lt;/ns0:LoanStatus&gt;</d:FactInstance>
      <d:FactType>TestSchema</d:FactType>
      <d:ID>TestPolicy</d:ID>
    </m:properties>
  </content>
</entry>
--changeset_184a8c59-a714-4ba9-bb3d-889a88fe24bf--
--batch_6b9a5ced-5ecb-4585-940a-9d5e704c28c7—
 
 
Installation:
The installation of the BRE Data Services is pretty straight forward.
·         Create a new IIS website say BREDataServices.
·         Download the SourceCode from TellagoCodeplex and copy the content from Tellago.BRE.REST.ServiceHost to the physical location of the above created website.
 
 

·         The appPool account running the website should have admin access to the BizTalkRuleEngineDb database.

·         TheRight click the BREManagementService.svc in the IIS ContentView for the website and wala..

 
 
Conclusion:
The BRE Data Services API is an experiment intended to bring the capabilities of RESTful/OData based services to the Traditional BTS/BRE Solutions. The future releases will target on technologies like BAM, ESB Toolkit.
This version has been tested with various version of BizTalk Server and we have uploaded the source code to our Tellago's DevLabs workspace at Codeplex. I hope you guys enjoy this release.
Keep an eye on our new releases @ Tellago Codeplex. We are working on various other Biztalk Artifacts like BAM, ESB Toolkit.
 
 
Till than happy BizzRuling…!!!
 
 
Thanks,
 
Vishal Mody

 


Friday, January 07, 2011 #

Hello folks,

 

If you are implementing a service oriented architecture, and are unsure of the best governance approach to follow, then this webinar is a must-attend event for you.  We will discuss why SO-Aware is the more efficient and interoperable alternative to traditional UDDI-based SOA-governance.

 

Specifically, we will address the differences between UDDI and SO-Aware in terms of service discovery, configuration, and policy resolution.  Finally, we will address why the REST/Odata based model implemented by SO-Aware enables the most efficient governance not only for WCF but for BizTalk, the Windows Server AppFabric and the Windows Azure AppFabric as well.

 

Join us on January 26th at 2:00 ET - to register, click here 

 

Thanks,

 

Vishal

 


Wednesday, September 15, 2010 #

Hi,
 
Shown below is one of the most easiest way to configure a BizTalk Receive Location which can receive any WCF Message based on the Binding type you provide in the configuration.  This uses the WCF Custom WebService Host Factory.
 
Where you can use this type of configurations?
 
·         Scenario where you need to send a WCF Message from .NET Code.
·         BizTalk Unit Testing.
·         Receive Locations which will be using ESB Toolkit receive locations.
·         and Many more.
 
Anyways, below are the steps:
 
- Create a IIS Virtual Directory and name it with some relevant name, say “Testing”. (Make sure the AppPool identity you select has proper priviledges.)
 
 
 
 
- Create a blank .svc file in the physical location of the directory, say “ReceiveMsg.svc”
 
 
- Open up that svc file in note pad and copy the below markup stuff in it.
 
<%@ ServiceHost Language="c#" Factory="Microsoft.BizTalk.Adapter.Wcf.Runtime.CustomWebServiceHostFactory, Microsoft.BizTalk.Adapter.Wcf.Runtime, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
 
- Next, open up BizTalk Admin Console and Create a Receive Port in whichever BizTalk App where you want the port to be.       
 
- Create a Receive Location for that Receive Port.
 
- Select the Transport Type as WCF-CustomIsolated.
 
 
- Next configure the WCF-CustomIsolated type. For the URI type "/Testing/ReceiveMsg.svc".
 
 
- For the binding you can select any WCF binding, here for the example I choose basicHTTPBinding. You can also configure the security configuration for this binding but lets leave it default for the example. Make sure you configure your client which sends the message according to same binding configurations.
 
 
- Pipeline: You can have your own Custom Pipeline or use BizTalk default ones. Here, lets keep it PassThruReceive.
 
- That’s it. Your receive location is configured and now just enable it.Next go to IIS and browse the ReceiveMsg.svc. You should see the below screenshot.
 
 
There are bunch of blog posts where it shows how you can send message to Biztalk though custom .net code. You can refer my previous blog post in which I have shown how you can use netNamedPipeBinding. One of my collegue Uri Katsir has blog post where he shows about WSHttpBinding.
 
Thanks,
 
Vishal Mody

 


Hi there everyone,

We have a Webinar coming up for BizTalk Governance using SO-Aware on Thursday, October 28th 2010 (2:00PM to 3:00PM EST). Like you guys might be knowing now that SO-Aware is a "WCF RESTful Registry solution" and its one of the attractive feature is Centralizing Configurations. This webinar will be showing you some of those features and also how you can use SO-Aware extensively with other BizTalk Solutions.

You can register/sign up here: http://tellagostudios.com/hottopics

Meanwhile you can read this blog post from Jesus Rodriguez in which he talks more about Simpliying BizTalk Adapter Configurations using SO-Aware.

 

Thanks and Happy BizSoAwaring...!!!

 Vishal Mody


Sunday, August 15, 2010 #

Hey folks,

Recently, TellagoStudios released our first product SO-Aware and now there are couple of episodes discussing the architecture and different capabilities of SO-Aware available to view on Channel9. You can check out the videos and please send us some feedback about the product and also you can download the Express Edition of and product for free.  

Meet SO-Aware Part1 on Channel9.

Meet SO-Aware Part2 on Channel9.

 

Thanks and Happy SO-Awaring...!!! 

-Vishal Mody


Friday, August 06, 2010 #

Hi there folks,

I have created few more ESB Itineraries samples which uses the SO-Aware ESB Resolver for different kinds of scenarios. Scenarios like:

1. Two Way Itinerary :

Msg In -- Transform -- Route -- ReqestResponse WCF Svc (Registed in SoAware) -- Transform -- Route -- Destination WCF Service (Registered in SoAware).

 

 

 

 

2. One Way Routing:

Msg in -- Resolve Routing parameters -- WCF Service (Registered in SOAware)

 

 

Thanks and Happy SO-Awaring with ESB and BizTalk. ;-)

-Vishal Mody


Hey,

Windows Azure and SQL Azure is free for one month. Unfortunately, its only for US Developers. But anyways, good news for US folks though. Also Microsoft is offering free phone, chat and email support through their Front Runner for Windows Azure Program.

Windows Azure One Month Pass USA.

 

Happy Azuring.....

-Vishal Mody

 


Thursday, August 05, 2010 #

Hey folks,
 
Recently, Tellago Studios released its first product SO-Aware, A WCF RESTful Service Metadata Repository. Now talking about WCF Services and how can we forget them being used extensively by BizTalk Server. Let’s check it out with a simple scenario.
 
Say you are using SO-Aware as a central repository for all your Web Services. Some of those services are also integrated with BizTalk. Now on one hand you have a central repository for your services and your life is going smooth but when it comes to integrate with BizTalk, you have to again deal with that pain of identifying your service location, its URI, bindings etc. Naah…!!
 
Well “THERE’S A SO-AWARE RESOLVER FOR THAT.”
 
SCENARIO: Msg In -- Itinerary Selector -- Transform -- Route -- Msg Out to WCF Service registered with SO-Aware.
 
STEPS:
 
o   First of all you will have to run the msi file for the SO Aware ESB Resolver from the SO Aware SDK folder. This will register the SO Aware resolver for ESB Toolkit. Open the ESB.Config file to verify that you do see SO Aware configuration in there.
o   Assuming that you have already registered your WCF Service with SO Aware. In this case I have a very simple WCF Service which takes in any message in and dumps out a xml body to a file location. This Video which shows how you can register WCF Services in SO-Aware. Below are few screenshots of the WCF Sample Service registered in SO-Aware.
 
 
 
 
 
o   Next create a new BizTalk Project and add couple of schemas and a map for sample. Below are the screenshots.
 
 
 
o   Lets open up BTS Admin Console and create a Receive Port and Send Port for a new BizTalk Application say “SoAwareBizTalkESBSample”. You can choose any BizTalk Adapter for the incoming message but I choose File for now to make it simple. Below is the screenshot of my Receive Port and Send Port(Make sure you choose a Dynamic Send Port). Select the SendPort filters as shown in snapshot. Let’s do the Pipeline configuration later and keep the default one for now.
 
 
 
 
 
 
o   Next thing lets configure BRE for the SO-Aware Sample. So open up Business Rules Composer. Create Business couple of Policies, one which resolves the Itinerary, second which resolves the Map. Below are screen shots. Make sure you specify the fully qualified name for the Map.
 
  
 
o   Now let’s build an Itinerary for the above scenario. Assuming you have successfully installed and configured ESB Toolkit on your machine. Open a New Class Library Project and delete the Class.cs file from it. Click Add New Itinerary and name it “OneWaySample”.
o   From the ESB Toolbox, add a OnRamp, OffRamp and 3 Itinerary Service to the Itinerary Designer window.
o   Configure the OnRamp and Off Ramp for the above configured BizTalk Application.
 
 
 
 
o   Configure the first Itinerary Service as shows in screenshot. The first Itinerary Service is basically for the message transformation based on BRE Resolver.
 
 
 
o   Now the Second Itinerary Service is for the Routing. This Itinerary Service will be using the SO Aware Resolver to fetch the destination service Routing Information
o   When you choose the Resolver Implementation as Custom SO Aware Resolver, the Seaware Resolver properties will be available. In the properties, the ServiceURL is not the destination Service URL but it’s the SO Aware ServiceRepository(a RESTful Service) URL. And the Service Name is the name of your WCF Service which you previously registered in SO Aware UI.
 
 
 
 
o   Configure the third Itineary Service Shape as shown in the screen shot.
 
 
o   Finally connect all the shapes, select the exporter model as Database exporter and Export the Itinerary. Just to verify, open up EsbItineraryDB and in the Itinerary table check if you see your itinerary present.
 
 
o   Make sure you have published and deployed your Business Rules.
o   Last but not the least lets open up the BTS Admin Console again and configure the Pipeline. So before we do that, for your current SoAware.BiztalkESBSample Application, add reference to Microsoft.Practices.ESB Application.
o   Open up the Receive Location and for the pipeline select ItinearySelectReceiveXml Pipeline. Configure the Pipeline properties as shown in the snapshot. Also open up SendPort and select the SendPort pipeline as ItinerarySendPassthough. Keep the properties as default in it.
 
 
 
o   Finally, start up the BizTalk Application, paste a message in the File Location for the Receive Location and if you have ESB Tracking turned on, you can open up DebugView and see the entire message flow.
 
You can download the SO Aware SDK for TellagoStudios.
 
 
Thanks and Happy SOAwaring.
 
 
Vishal Mody
 
 

 


Wednesday, July 28, 2010 #

And the day is Today. Today Tellago launches its new sister company “Tellago Studios” which focuses on developing Enterprise Software’s. The basic motive of the company is to convert the lessons we learn in our day to day life working with our customers while providing them Enterprise Software Solutions into new Enterprise Software. Many times using current technologies we feel that something is missing. What if we can also do this with this technology. We at Tellago, have this passion for innovation and finally today we have our one such product “SO-Aware” out.
 
So what is SO-Aware?
 
SO-Aware is a Web Services repository that enables the cataloging, management, monitoring and testing of Web Services. Contrasted against the complexity of traditional UDDI-centric SOA governance products, SO-Aware uses a simple and unique design based on the principles of REST and OData which enables the manipulation of service artifacts using standard http verbs like GETs or POSTs. Whether SO-Aware can manage Web Services developed on any technology stack, it excels in the management of Windows Communication Foundation (WCF) solution enabling capabilities that are very needed in enterprise SOA-WCF solutions. Specifically, the first version of SO-Aware focuses on the following aspects:
· Service cataloging: SO-Aware provides the infrastructure to organize different versions of web services using a simple category-based taxonomy. SO-Aware extends these capabilities beyond traditional SOAP services by supporting REST and OData  services.
· Centralized configuration management: SO-Aware provides a creative model for the centralization and configuration of WCF services and endpoints that removes the need for maintaining large and complex configuration files. Additionally, SO-Aware facilitates the modeling and creating of configuration artifacts such as bindings or behaviors in a way that is accessible to non-WCF  experts.
· Testing: The first release of SO-Aware includes a sophisticated testing subsystem that enables the testing of WCF services. The tests created using SO-Aware can either be executed on-demand using the management portal or periodically using the test scheduling system. Additionally, SO-Aware tracks the execution of tests and enables specific analytics that help testers and members of IT operations teams accurately monitor the behavior of the  tests.
· REST-OData API: SO-Aware is 100% OData centric. In that sense, every capability of SO-Aware from service cataloging to testing is accessible through simple HTTP interfaces using OData as the encoding mechanism.
· Service activity monitoring: SO-Aware enables a simple model for tracking the message flow for the various services in your SOA. Using this information, SO-Aware provides specific analytics that help to accurately describe the runtime behavior of services.
· Dependency modeling: Services that depend on other services are very common in SOA environments. SO-Aware enables developers and architects to model the dependencies between services using a simple visual interface included in the management  portal.
· Management Portal: SO-Aware is 100% OData centric. In that sense, every capability of SO-Aware from service cataloging to testing is accessible through simple HTTP interfaces using OData as the encoding mechanism.
· PowerShell provider: SO-Aware can be completely managed using a scripting environment based on Windows PowerShell. The current version of SO-Aware includes a PowerShell provider that contains a large number of commands that abstract the different SO-Aware capabilities.
 
Five Reasons why SO-Aware is Different:
 
-Participatory Governance
-Centralizes metadata not messaging
-Manages service artifacts like WSDL, Policies, but also includes WCF Specific artifacts like Bindings and Behaviors.
-Provides for scheduled and on-demand testing.
-Provides a simple, intuitive and highly interoperable REST Odata-based API model
 
We have bunch of introductory videos for the SO-Aware.
 
We are having the Express Edition of SO-Aware free. Yep free. You can download it here. This edition is limited to 5 services. We encourage the WCF folks to try SO-Aware and give us valuable feedback.
 
You can contact us to know more details about the product or if you want to give us feedback.
 
Happy SO-Awaring....!!!

Friday, June 25, 2010 #

     We at Tellago, Inc. had recently open sourced first version of BizTalk Data Services by Jesus Rodriguez and ESB ToolKit 2.0 Extensions by Dwight Goins on Codeplex. The BizTalk Data Services was more about based on Querying, Browsing for BizTalk Artifacts via RESTful interface.

Today we have a new release for the BizTalk Data Services which is an extension of the earlier release. The new release v0.6 contains:

·         IUpdatable

·         Enabling and Disabling Receive Locations

·         Starting and Stopping Send Ports

·         Starting and Stopping Applications

·         Starting, Stopping and Unenlisting orchestrations

·         Starting, and Stopping Host Instances

·         Resume, Suspend and Terminating Instances

·         IQueryable for host instances

 

The newer release was the hard work of Tellago’s Architect Adrian Lopez ("the happy argentine"). Now I got to support Argentina for the World Cup 2010 or I am dead...!!! ;-) You can read more about the new release on his Blog here.

 

Keep checking folks. There's even more to come.

 

Thanks,

Vishal Mody

 


Wednesday, June 23, 2010 #

Let’s develop a SharePoint WebPart for executing BAM SSIS Packages. The SharePoint site can be on remote server other than the BizTalk Database Server. This won’t be a fancy UI WebPart, just a basic dropdown to select a BAM SSIS Package and execute it. ;-) The approach I am used is of using a asp.net User Control hosted as a sharepoint webpart. There are bunch of different ways you can develop Sharepoint webpart. This is just one of them and easier one. Less error prone and easily debug able.
 
·         Create a new solution and add a SharePoint WebPart project to it. Name it Tellago.WebParts.SSIS4BAM
 
       
·         Rename the WebParts1 folder to say SSIS4BAM_WP.
·         In the same solution add another ASP.NET Web App.  Name it as Tellago.WebParts.WebApp.
·         In the Web Application add a Web User control and name it as SSIS4BAM_UC.
 
 
·         Let’s keep it simple with a Label, Dropdown and a Button. Below is the UI source.
 
 
·         Now let’s first finish the User Control code behind. Below is the Page Load event code. Here, we are using the bam_Metadata_ActivityViews table from the BAMPrimaryImport Database but you can also use the bam_Metadata_Activities table.
 
 
  protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                using (SqlConnection conn = new SqlConnection("Integrated Security=True;Initial Catalog=BAMPrimaryImport;Data Source=localhost;"))
                {
                    try
                    {
                        SqlCommand cmd = new SqlCommand("SELECT ActivityName, ViewName FROM bam_Metadata_ActivityViews", conn);
                        cmd.CommandType = System.Data.CommandType.Text;
                        conn.Open();
                        SqlDataReader sdr = cmd.ExecuteReader();
                        if (sdr != null && sdr.FieldCount > 0)
                        {
                            CountersDropDown.DataTextField = "ActivityName";
                            CountersDropDown.DataValueField = "ViewName";
                            CountersDropDown.DataSource = sdr;
                            CountersDropDown.DataBind();
                        }
                        else
                        {
                            EventLog.WriteEntry("SSIS4BAM--UC", "No Activities were fetched from the BAM Database.", EventLogEntryType.Error);
                        }
                    }
                    catch (Exception ex)
                    {
                        EventLog.WriteEntry("SSIS4BAM--UC", "Error occured while page load event for ResetCounterUC : "
                        + ex.Message + ex.InnerException.ToString(), EventLogEntryType.Error);
                    }
                }
            }
        }
 
·         Next àExecute Button Event. For this reference the Microsoft.SqlServer.ManagerDTS assembly. If you are not able to find it in the Program Files, its sometimes hidden in the GAC_MSIL. Manually copy to the project and reference it.
·         There are bunch of different blogs and references available online for how to execute SSIS packages programmatically. You can always extend this piece of code or have totally different approach with say Linq. There are many ways.
 
  protected void ExecuteButton_Click(object sender, EventArgs e)
        {
            try
            {
                Application app = new Application();
                DTSExecResult result;
                Package pkg = new Package();
                      pkg = app.LoadFromSqlServer("BAM_AN_" + CountersDropDown.SelectedValue,"WIN2K8MK2", "", "", null);
                result = pkg.Execute();
              
                      if (result == DTSExecResult.Failure)
                {
                    foreach (DtsError error in pkg.Errors)
                    {
                        EventLog.WriteEntry("SSIS4BAM WebPart", "Error Description :" + error.Description, EventLogEntryType.Error);
                    }
                }
                EventLog.WriteEntry("SSIS4BAM Web Part.", "The SSIS Package for " + CountersDropDown.SelectedValue + " execution was a " + result.ToString(), EventLogEntryType.Information);
            }
            catch (Exception ex)
            {
                EventLog.WriteEntry("SSIS4BAM WebPart", "Error occured : " + ex.Message + ex.InnerException, EventLogEntryType.Error);
            }
        }
  
·         Now getting back to the WebPart project. Create a folder structure as shown in the figure. And when you add an existing item for the last SSIS4BAM folder, make sure you add it as a link for the SSIS4BAM_UC.ascx.
 
 
·         Below is the code for the SSIS4BAM WebPart.
 

namespace Tellago.WebPart.SSIS4BAM
{
    [Guid("ecca03ad-ea87-496b-85ff-c68237457c19")]
    public class SSIS4BAM_WP : System.Web.UI.WebControls.WebParts.WebPart
    {
        public SSIS4BAM_WP()
        {
        }
        private SSIS4BAM_UC ssis4bamUC;
        protected override void CreateChildControls()
        {
            base.CreateChildControls();
            try
            {
                ssis4bamUC = (SSIS4BAM_UC)Page.LoadControl("~/_controltemplates/SSIS4BAM/SSIS4BAM_UC.ascx");
                // Adds it to the controls collection of the Web Part
                this.Controls.Add(ssis4bamUC);
            }
            catch (HttpException ex)
            {
                EventLog.WriteEntry("ResetCounters WebPart", "Error occured : " + ex.Message + ex.InnerException, EventLogEntryType.Error);
            }          
        }
    }
}
 
·         Open the SSIS4BAM_UC.ascx and remove the CodeBehind line in the source file. Also change the namespace in the .cs and designer.cs file to the WebPart project namespace.
·         Once again in the SSIS4BAM_UC.ascx source file change the Inherits value to the fully qualified name of the User Control file.
Like : Inherits="Tellago.WebPart.SSIS4BAM.SSIS4BAM_UC, Tellago.WebPart.SSIS4BAM, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c04b4b556fc8f897"
·         Build the solution and check for errors. Point the web part project to a SharePoint site URL and Deploy it. Walla..!!!
 
 
·         Test it and if it errors out, check out the event viewer for errors. If you want to debug the User Control or the WebPart, place break points in the code and attach it to a w3wp.exe.  
 
·         If you get errors about SSIS Package failure due to following error SQLISPackage100 check out this link.
 
·         If you have problems in loading the WebPart in SharePoint please refer this link and check if you might have not missed anything
 
·    The Solution can be downloaded here..!!
 
 
Thanks,
 
Vishal Mody
 

 


Thursday, April 29, 2010 #

 

During the last year, we (Tellago) have been involved in various business intelligence initiatives that leverage some emerging BI techniques such as self-service BI or complex event processing (CEP). Specifically, in the last few months, we have partnered with Microsoft to deliver a series of events across the country where we present the different technologies of the SQL Server 2008 R2 BI stack such as PowerPivot, StreamInsight, Ad-Hoc Reporting and Master Data Services. As part of those events, we try to go beyond the traditional technology presentation and provide a series of best practices and lessons we have learned on real world BI projects that leverage these technologies.

Now that SQL Server 2008 R2 has been released to manufacturing, we have launched a series of quick adoption programs that are designed to help customers understand how they can embrace the newest additions to Microsoft's BI stack as part of their IT initiatives. The programs are also designed to help customers understand how the new SQL Server features interact with established technologies such as SQL Server Analysis Services or SQL Server Integration Services. We try to keep these adoption programs very practical by doing a lot of prototyping and design sessions that will give our customers a practical glimpse of the capabilities of the technologies and how they can fit in their enterprise architecture roadmap.

Here is our official announcement (you can blame my business partner, BI enthusiast, and Tellago's CEO Elizabeth Redding for the marketing pitch ;)):

Tellago Marks Microsoft's SQL Server 2008 R2 Launch With

Business Intelligence Quick Adoption Program

Microsoft launched SQL Server 2008 R2 last week, which delivers several breakthrough business intelligence (BI) capabilities that enable organizations to: 

  • Efficiently process, analyze and mine data
  • Improve IT and developer efficiency
  • Enable highly scalable and well-managed Business Intelligence on a self-service basis for business users

The release offers a new feature called PowerPivot, which enables self service BI through connecting business users directly to enterprise data sources and providing improved reporting and analytics.

The release also offers Master Data Management which helps enterprises centrally manage critical data assets company-wide and across diverse systems, enabling increased integrity of information over time.

Finally, the release includes StreamInsight, which is a framework for implementing Complex Event Processing (CEP) applications on the Microsoft platform. With StreamInsight, IT organizations can implement the infrastructure to process a large volume of events near real time, execute continuous queries against event streams and enable real time business intelligence.

As a thought leader in the Business Intelligence community, Tellago has recognized the occasion by launching a series of quick adoption programs to enable the adoption of this new BI technology stack in your enterprise.

Our Quick Adoption programs are designed to help you:

  • Brainstorm BI solution options 
  • Architect initial infrastructure components
  • Prototype key features of a solution

As a 2-3 day program, our approach is more efficient and cost effective than a traditional Proof of Concept because it allows you to understand the new SQL Server 2008 R2 feature set  while seeing directly how you can leverage it for your business intelligence needs.

If you are interested in learning more about the BI capabilities of Microsoft's Business Intelligence stack, including SQL Server 2008 R2, we can help.  As industry experts and software content advisers to Microsoft, Tellago is the place where ideas meet technology expertise. 

Let us help you see for yourself the advantages that you can gain from Microsoft's 
SQL Server 2008 R2.

Email or call for more information - info@tellago.com or 847-925-2399.