Tuesday 15 September 2015

BizTalk SSO Manager A new Tool to manage your SSO settings

BizTalk SSO Manager Tool :

Aim : Aim to Create a new SSO application without  deploying your BizTalk solution and also manage your existing settings or add new configuration values for existing deployed interface.

Background : If you deploy a BizTalk interface in any environment with SSO enable ) 
True )
at you BDDF project , it would eventually deploy the solution and publish your environment settings to SSO. This is great option in BTDF. However it is quite hard to manage the settings in case of any changes like Add / Delete new entry , Delete Complete SSO settings without un-deploying the BizTalk interface or event Create a New SSO Application without deploying BizTalk interface.


This tool would be a best solution for you play. 

Screen1a : When you run the tool by default it loads the applications which are deploying using BTDF. 


Screen1b :  You can add new Row / update existing row.

Screen2 : You are in free hand to create a Brand new Application without deploying a BizTalk interface


Screen3 : You can even Delete complete SSO settings without un-deploying a BizTalk interface


Drop a comment if this article helps you. you can reach me @ raj.webjunky@yahoo.com
If you wish to download the code drop your comments.


Monday 7 September 2015

BizTalk Untyped Message Promoting MessageType Context Property

Handling UntypedMessage message is a bit of fun in BizTalk . You could assign anytype of message at your construct shape and submit to messageBox. However Untypeed message will not promote MessageType to BizTalk Context.

Here is a simple scenario where you would need a MessageType is a Key Element to handle at your BizTalk Send Port Collection.

Scenario :  An orchestration designed with Request-Response Port which receive multiple requests (Schema published as WCF Service) and you would eventually submit transformed message to SEND Port.
The Send Port Message has been defined as UnTyped Message. So the Static SendPorts has configured at Biztalk Admin Console to Subscribe a request based on MessageType Filter property.

Problem:
When I submit a Untyped message to SendPort it doesn't recognize the Message due to missing the Context property of "BTS.MessageType"
So I tried by adding Correlation as BTS.MessageType at SendPort but it doesn't work. Finally I made a simple component which promote MessageType for UnTyped Message.

Solution :
----------------------------------------------------------------------------------------------------------------------
namespace RajWebjunky.Utility
{
    [Serializable]
    public class ContextPromoteHelper
    {
        //Assingn Context message for incoming "UnTyped" message
        public static void PromoteMessageType(XLANGMessage inMessage)
        {
            ReceivePipelineOutputMessages pipelineMsg = XLANGPipelineManager.ExecuteReceivePipeline(typeof(Microsoft.BizTalk.DefaultPipelines.XMLReceive), inMessage);
            pipelineMsg.MoveNext();
            pipelineMsg.GetCurrent(inMessage);
        }
    }
}
----------------------------------------------------------------------------------------------------------------------
The above component should invoke before you submit message to SendPort
at your Orchestration Construct Shape


Drop a comment if this article helps you. you can reach me @ raj.webjunky@yahoo.com