Thursday, August 27, 2009

Installation of SSO on SQL Cluster continued

Couple month ago in June I described in a post how to cluster SSO. This was SQL Server 2005 cluster on Windows 2003 R2 scenario. How to cluster SSO for BizTalk Server 2009 is described here in online documentation. I have not yet have experience with clustering SSO on Windows 2008, but Kent wrote an interesting post about it. If you want to cluster SSO Single Sign On with BizTalk Server 2009 on Windows 2008, check online documentation before you start and check out this post and some other resources available on web right now discussing SSO, clustering, BizTalk 2009:


Technorati:

Tuesday, August 25, 2009

Complex Event Processing Technology

I read some posts today around Complex Event Processing (CEP) where Microsoft has provided a solution for. This solution is Microsoft’s new Complex Event Processing technology to help businesses derive better insights by correlating event streams from multiple sources with near-zero latency and called: ‘Microsoft® SQL Server® StreamInsight’. A CTP can be downloaded from Microsoft.I have not yet been able to try this out, but I will as soon as time is available. Some bright minds in the BizTalk community already made some comments like Charles Young and Richard Seroter mentioned in his recent post. Latter also written about CEP in BizTalk in his SOA Patterns with BizTalk 2009 book. So it is worth checking out if you have the time.


Technorati:

Sunday, August 16, 2009

BizTalk Configuration Manager

Michael Stephenson has released a new version of configuration manager for BizTalk. I myself was not familiar yet with this tool. I downloaded it from CodePlex and tried it out on one of virtual machines. To use the tool there is a video out that explains the tool. Tool itself is used to help you manage the different settings needed for binding and configuration files across different environments and allows you to connect this with your build process.

Once you have downloaded the tool in zip file, you need to unzip it. There is a compiled help file that will tell you about the tool, how to set it up and install it, walkthroughs and utilities. I did a quick and simple install, setting up the database and application. In VPC I used was BizTalk 2006 R2 environment with VS2005 and SQL2005. Setting up database will result in following database schema

image 

Application will need its connection string set to database (ConfigurationManagement) on your server. I added the test data and started the application (ConfigurationManagement.Administration.exe).

 image

Setup is easy and straight forward. This kind of tool will come very handy in DTAP environment and will something to introduce this week at customer I work for now to use it in DTAP. We have a deployment framework now in place using Excel sheet for keeping configuration settings.


Technorati::

BizTalk Development Center

BizTalk support team has started adding content to BizTalk Development Center on MSDN.

image

Their goal is continually update with information:

  • Common call generators, including Symptoms and potential Resolutions
  • Potential scenarios and their fixes
  • Contributing to the monthly theme
  • Providing learning materials, including some of the same BizTalk 2009 training materials that the BizTalk support team used:
  • BizTalk Server Training from Microsoft Customer Service and Support. The last offers training information about BizTalk Server. There I found some interesting documents, which you can download from there:

    • Learning the New EDI Features of BizTalk Server 2009
    • Learning the New EDI Features of BizTalk Server 2009
    • Understanding the New BizTalk Adapter for Oracle E-Business Suite
    • Understanding the New BizTalk Adapter for SQL Server

    Technorati:

    Thursday, August 13, 2009

    BizTalk Adapter Pack 1.0 on x64 Considerations

    Last week I posted an issue around BizTalk Adapter Pack 1.0 in x64 environment. Now I like to clarify a couple of things concerning installation BizTalk Adapter Pack 1.0 in x64 environment and running the adapter in x64 host instance. One thing to consider is having an Oracle specialist around and someone with access to meta-link, because for x64 environment you will need patch 5337014 and 6344569, latter being a OPatch. For 64-bit according to installation guide a Oracle 10.2.0.3 64-bit client is required, which supposed to be a part of one of the mentioned patches. This is how I interpreted, but this is not the case. The patches do not contain a 64-bit Oracle client. You will need to download and install 102010 win64 x64 client first and then install ODAC and apply patch 5337014 and oPatch 6344569 in same directory as ODAC. Applying patch 5337014 is pretty straight forward, but oPatch something different. First you will to need to copy patch in oPatch directory of 64-bit client and then through command prompt navigate to <directory oracle 64-bit client>\OPatch directory and type following command:

    set ORACLE_HOME=”<directory oracle 64-bit client>\OPatch” enter and then optach apply.

    Note: confirm with Y when asked!

    image

    image

    Before applying patches and installing Oracle clients, you need to consider that first 32-bit software needs to be in installed before to proceed to 64-bit. Table below from installation guide with scenario’s will make that clear.

    image

    To summarize a 64-bit Platform you will need the necessary Oracle clients (x86,x64), Oracle Patches, WCF LOB SDK (x86,x64), BizTalk Adapter Pack 1.0 (preferable to get official licensed one, because download is 120-evaluation!). Hope this will help you if you require a 64-bit environment (scenario).


    Technorati:

    Monday, August 10, 2009

    Multiple Sandboxes for Development

    Some of latest posts I read where quite interesting. One is about unattended/silent install of BizTalk 2009 by Kent Weare. Some background on him can be found at Richard Seroter’s interview series on his blog. Brought back a thought of other post months ago from Thiago Almeida about syspreping VHD with BizTalk. Creating BizTalk installation on virtual machine is fun, but also complex depending on what one want to develop solutions for. Developing integration solution for Oracle demand other set of software (LOB Adapters, BizTalk Adapter Pack) than developing solution integrating Dynamics AX 2009 for instance. Having multiple sandbox’s with different set of prerequisite software helps a lot I think and using sysprep or an unattended install of BizTalk helps speedup the process. Having everything on one sandbox to develop any kind of BizTalk solution is not wise idea and a lot dependencies will make it complex. This is just a thought I like to share; comments are welcome.


    Technorati:

    Creating Hosts in BizTalk Script

    Creating Hosts and host instances can be done with scripts. Below is script for creating hosts:



    This script will result in following outcome:



    image



    Looking at properties it, 32-bit only is checked and others are unchecked. The same behaviour occurs if this script is performed in 64-bit environment and something you might not want.



    image



    Script I showed at begin is one I have been provided with by a colleague and useful to create one or more hosts. Key here is MSBTS_HostSetting that has a couple properties like AuthTrusted, HostType, HostTracking, IsDefault and IsHost32BitOnly (there are more). This gave some insight that script can be altered to have a more desirable outcome. I altered the script by adding setting for HostTracking, Isdefault and IsHost32BitOnly.





    Running this script gave me a more desirable outcome:



    image



    As you can see there is a lot flexibility here as you can alter the script to any possible outcome depending on the situation required. There is also a tool available to create hosts and some explanation (background) that is very useful.



    Technorati::

    Sunday, August 09, 2009

    Process Monitor 2.5

    On my sandbox with BizTalk 2009 on it I wanted to download and install FileMon and RegMon. I got this message when I wanted to run FileMon.

    image

    There is tool now called Tool ‘Process Monitor’2.5. I got the wrong version of FileMon, but it showed me this tool is available now.

    image 

    This UI contains views for Registry, FileSystem, Network, Process and Profiling Events. This 2.5 version has been released about three weeks ago. Excellent tool for monitoring what is going on your machine and very useful for troubleshooting an environment. For me my sandbox.

    Friday, August 07, 2009

    BizTalk Hotrod Magazine Issue 7

    New BizTalk Hotrod Magazine is out. I have been reading this magazine in the beginning and it is a good resource to read and absorb knowledge provided in there. This issue contains article about:

    • B2B 2.0 Azure
    • Unit Testing Schemas and Maps in BizTalk Server 2009
    • Book Review for "SOA Patterns with BizTalk Server 2009"
    • How to Throw Typed Fault Exceptions from Orchestrations Published as WCF Services
    • Microsoft Dynamics AX integration using Microsoft BizTalk Server (I am interested  in that one, cause I like to try something's out with AX 2009)

    Great work guys (authors and publisher).


    Technorati:

    Wednesday, August 05, 2009

    BizTalk Adapter Pack 1.0 Issues

    You can run into some trouble installing BizTalk Adapter Pack 1.0. I stumble upon the following:

    image

    1: Messaging Engine

    The Messaging Engine failed to add a receive location "MyReceiveLocation" with URL "oracledb://xxxx" to the adapter "WCF-Custom". Reason: "Microsoft.BizTalk.Adapter.Wcf.Converters.CreateBindingException: Unable to get binding type for binding extension "oracleDBBinding". Verify the binding extension is registered in machine.config.
       at Microsoft.BizTalk.Adapter.Wcf.Converters.BindingFactory.GetBindingType(String bindingName, Type& bindingElementType)
       at Microsoft.BizTalk.Adapter.Wcf.Converters.BindingFactory.CreateUserBinding(String bindingName, String bindingConfiguration)
       at Microsoft.BizTalk.Adapter.Wcf.Converters.BindingFactory.CreateBinding(String bindingName, String bindingConfiguration, String bindings)
       at Microsoft.BizTalk.Adapter.Wcf.Config.CustomRLConfig.CreateBinding(RHConfig rhConfig)
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.BtsServiceHostBase.InitializeRuntime()
       at System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)
       at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint.Enable()
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint..ctor(BizTalkEndpointContext endpointContext, IBTTransportProxy transportProxy, ControlledTermination control)
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiver`2.AddReceiveEndpoint(String url, IPropertyBag adapterConfig, IPropertyBag bizTalkConfig)".

    2: Warning

    The receive location "MyReceiveLocation" with URL "oracledb://xxxx is shutting down. Details:"The Messaging Engine failed while notifying an adapter of its configuration. "

    There is a site, where you can find useful information to resolve issues with Oracle Adapter Pack 1.0. I had to change some things in machine config (as explained on website).There is also information available concerning adapter pack in x64 environments, so definitely check this inforation out!


    Technorati:

    Monday, August 03, 2009

    BizTalk Adapter Pack 2.0: OracleBinding

    In previous post before my holiday to France I tried out BizTalk Adapter Pack 2.0 with SQL Binding. As said back then I also wanted to try out the Oracle Binding. On my Sandbox I installed Oracle 10G Express Database (similar to SQL Express). To download this database you will need to register to Oracle Technology Network (OTN). For Oracle Database 10g Express Edition installation I did the following:

    Password voor SYSTEM database e.a. I used: welkom.

    Destination Folder: D:\oraclexe\
    Port for 'Oracle Database Listener': 1521
    Port for 'Oracle Services for Microsoft Transaction Server': 2030
    Port for HTTP Listener: 8080

    After installation Oracle Database Express Edition browser UI is fired up. I logged in with username system and password welkom.

    image

    I then unlocked sample user by following the procedure below:

    To unlock the sample user account:

    1.Make sure you are still logged on as the database administrator, as described in the previous section.

    2.Click the Administration icon, and then click Database Users.

    3.Click the HR schema icon to display the user information for HR.

    Description of the illustration gs_hr_icon.gif

    4.Under Manage Database User, enter the following settings:

    •Password and Confirm Password: Enter hr for the password.

    •Account Status: Select Unlocked.

    •Roles: Ensure that both CONNECT and RESOURCE are enabled.

    5.Click Alter User.

    After unlocking the sample user account I logged in with HR and am able to view for instance Employees TABLE.

    image

    To work with Adapter Pack 2.0 and Oracle you will need Oracle.DataAccess.dll version 2.111.7.0 (check out this tread!). This is included in ODAC 11g Beta 11.1.0.7.10.  I installed this on my Sandbox environment, selecting only Oracle Data Provider for .NET 2.0.11.1.0.7.10 Beta and Oracle Instant Client 11.1.0.7.0.

    image image

    I checked GAC and Oracle.DataAccess.dll (proper version) was there. Now I started my project I used also for testing BizTalk Adapter Pack (SQL binding) and tried to connect to Oracle.

    image

    Right click project and select Add Adapter Service Reference, select oracleDBBinding and click Configure. You will get something like screenshot above. Fill in ServerAddress and ServiceName (you can find these in OracleTNS : //OracleXE/app/oracle/10.2.0/server/NETWORK/ADMIN). Next Security Tab and select credential type UserName and fill in username (unlocked HR) and password.

    image

    Click Connect and connection is there. I then selected in category HR, choose Select in Available categories and operations and click on Add.

    image

    Finally I clicked OK. I then implemented some code (based on provided sample from Microsoft) to get some data from Employees table based on selection criteria: Last Name.

    image

    Code under test button is as follows:

    private void btnTestOracle_Click(object sender, EventArgs e)
            {
                EMPLOYEESRECORDSELECT[] selectRecords = new EMPLOYEESRECORDSELECT[0];
     
                // Initialize WCF client variables
                HR_Table_EMPLOYEESClient aaTableClient = null;
     
                try
                {
     
                    // initialize the EMPLOYEES table client
                    aaTableClient = new HR_Table_EMPLOYEESClient("OracleDBBinding_HR_Table_EMPLOYEES");
                    //Security Credentials
                    aaTableClient.ClientCredentials.UserName.UserName = "HR";
                    aaTableClient.ClientCredentials.UserName.Password = "welkom";
                    //Open Client
                    aaTableClient.Open();
                    // Select all records and write them to the textbox result
                    selectRecords = aaTableClient.Select("*", "LAST_NAME = '" + txtLastName.Text + "'");
                    txtResultOracle.Text = "First Name :" + selectRecords[0].FIRST_NAME + "\r\n" + "Email :" + selectRecords[0].EMAIL + "\r\n" + "Phone Number : " + selectRecords[0].PHONE_NUMBER;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                finally
                {
                    aaTableClient.Close();
                }
     
    }




    view raw This Gist brought to you by GitHub.







    Filling in Last Name King will result in screenshot below:



    image



    After Adapter Service Reference is added the app.config is altered, so configuration is done for you.




    Also do not forget to include namespaces in your code:



    // Include this namespace for Adapter LOB SDK and Oracle exceptions

    using microsoft.lobservices.oracledb._2007._03.HR.Table.EMPLOYEES;

    using microsoft.lobservices.oracledb._2007._03;



    As you can see working with BizTalk Adapter and OracleBinding is fairly easy, but you need to do some configuring in your environment to make it work.



    Technorati:

    Microsoft BizTalk Server 2009 Operations Guide

    image

    During my holiday I missed out the release of new BizTalk Server 2009 Operations Guide. BizTalk Server Operations Guide is a valuable resource for anyone involved in the implementation and administration of a BizTalk solution, particularly IT professionals. The guide provides detailed information for planning a BizTalk Server environment, as well as recommendations and best practices for configuring, testing, maintaining, and monitoring this environment. The Operations Guide contains checklists for all the key tasks to help BizTalk users. Guide is for BizTalk deployments on following supported operating systems:

    • Windows Server 2003;
    • Windows Server 2008;
    • Windows Vista;
    • Windows XP.

    I reckon guide will be updated for Windows 7 that will be released this fall probably and for Windows 2008 R2. For documentation of guide there is an pdf, docx and executable available. Besides the Operation Guide that can be downloaded there is a site that contains links to all sorts of checklists.


    Technorati:

    Sunday, August 02, 2009

    BizTalk Best Practice Analyzer V1.2 on my Sandbox

    BPA (BizTalk Best Practice Analyzer) 1.2 is out a couple of months already. I did not think of using it on one of my sandboxes, so I tried on my Sandbox with BizTalk Server 2009 on Windows 2008 Standard Edition OS and SQL Server 2008 Developer Edition. In past I did a blog post of using BPA. First thing one must do is check for updates.

    image

    After no updates where found I did a scan.

    image

    Resulted in this:

    image

    Some jobs have not been enabled or run. Common issues since I came across them before and can be resolved in same way. Besides these critical issues there are other less critical, but not uncommon in case of a sandbox environment.

    image

    A lot of these issues listed above may apply for BizTalk production (maybe test, acceptance environments), but not for individual development environment.

    BPA is a valuable tool and useful in following environments:

    • Windows Server 2003 Service Pack 2;
    • Windows Server 2008;
    • Windows Vista Service Pack 1;
    • Windows XP Service Pack 3.

    Check this news report out if like to know some background about the tool.


    Technorati: