Home Page › Forums › BizTalk 2004 – BizTalk 2010 › Getting error on Custom Pipe line component..
- This topic has 4 replies, 1 voice, and was last updated 9 years, 3 months ago by
community-content.
-
AuthorPosts
-
-
December 29, 2009 at 10:41 PM #23967
Hi Gurus…
I was creating custom pipe line component with three properties…when i was adding to the toolbar…it is not visible in the toolbar.
steps i did…
1) added Microsoft.Biztalk.Pipeline.dll
2) Add three properties(name/author/copyright) on IPropertiesBag
3) update Execute method
IBaseMessagePart partObject = inmsg.BodyPart;
Stream outgoingStream=null;
streamReader readerObject=null;
try
{
outgoingStream=partObject.GetOriginalDataStream();
readerObject=new StreamReader(outgoingStream);
string outgoingData=readerObject.ReadtoEnd();
string ORIGINAL_DATA_FORMAT=
@”<Organization Name='{0}’>
<Author>{1}</Author>
<Data>{2}</Data>
<Footer>
<Copyright>{3}</Copyright>
</Footer>
</Organization>”;
string originalData=string.format(ORIGINAL_DATA_FORMAT,
this.OrganizationName, this.Author,outgoingData, this.Copyright);MemoryStream msObject= new MemoryStream();
byte[] originalBytes = Encoding.ASCII.GetBytes(originalData);msObject.Write(originalBytes, 0, originalBytes.Length);
msObject.Position=0;pc.ResourceTracker.AddResouce(msObject);
partObject.data=msObject;
}
catch (Exception ex)
{
EventLog.WriteEntry(“Application”, ex.Message)
}4) copy this dll to “Pipeline Component” folder
-
December 29, 2009 at 10:49 PM #23968
sorry to tell one thing….i have add GUID which I have created by Guidgen.exe, into the method getClassID in IPersistPropertyBag…and also another Guid created for [System.Runtime.InteropServices.Guid(“9d0e4103………………………”)]
-
December 30, 2009 at 10:04 AM #23973
The component will not simply show up in the toolbox after you have placed it in the “pipeline components” directory. You need to go through the process of adding the new component into the toolbox. Here are the steps:
To add a pipeline component to the Toolbox
-
On the Tools menu, click Choose Toolbox Items.
—Or—
Right-click the Toolbox and then click Choose Items.
-
In the Customize Toolbox dialog box, click the BizTalk Pipeline Components tab.
A dialog box displays the compatible pipeline components. You can navigate through the categories by clicking the tabs at the top of the dialog box.
-
Select the component you want to add to the Toolbox.
-
Click OK. The component will appear on the BizTalk Pipeline Components tab of the Toolbox.
-
December 30, 2009 at 10:57 PM #23978
Hi wmichel,
thanks for your reply…I have added component same way …i have reset the toolbox also…but no luck…then i have again created a new class library with new GUID…i can able to see the pipeline component…i have three question
1) what is the relation between? it is suppose to be same?
[System.Runtime.InteropServices.Guid(“DEE41A46-A104-40b0-A94F-3E0457425838”)]
AND
public void GetClassID(out Guid classID)
{
classID = new Guid(“655B591F-8994-4e52-8ECD-2D7E8E78B25C”);
}2) If i have declared [ComponentCategory(CategoryTypes.CATID_Any)]
why it is asking me to implement “IDisassemblerComponent” when i am draging to Disassemble stage?
3) How to bebug pipeline component? is there any tools avaible?
-
January 1, 2010 at 11:25 AM #23986
1) Yes, they should be the same
2) Any pipeline component used in the disassemble stage needs to have this interface implemented. It looks for that interface.
3) I have never used these tools to debug a pipeline, but some friends of mine swear by them: http://msdn.microsoft.com/en-us/library/aa547988(BTS.10).aspx
-
-
-
-
AuthorPosts
- The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.