BizTalk Server General - Creating custom pipeline components [BT2004]

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server General > May 2004 > Creating custom pipeline components [BT2004]





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Creating custom pipeline components [BT2004]
Jim C

2004-05-30, 10:46 am

Hi all,

I'm currently working on a project that requires a flat file to be read, mapped to a new structure and outputted as another flat file. We have identifed the need to pre-process the inbound file and add some extra delimiters between records within the file
in order to process the data more effectively. The obvious way to do this seems to be to use a custom decoder component before the flat file is dissasembled in the pipeline.

To this end I have created a component that (I hope) will achieve this by using the "FixMsg" example provided with the BizTalk SDK as a base. The issue I have experienced is that when I deploy the complete BizTalk project and the C# class libaraies (which
contain my custom components) I get an error message in the event log just after the inbound flat file enters the pipe:

'There was a failure executing the receive pipeline: "Financial.FinanceRcvPipe" Source: "mscorlib" Receive Location: "c:\projects\PND008TJC\drop\financial_in.txt" Reason: File or assembly name CustomPipe.dll, or one of its dependencies, was not found.'

A quick overview of the solution might help here:

I have two projects, one has the C# classes and resource files that make up the custom pipeline component and the other is a BizTalk project that contains my pipelines, schemas, map and orchestration (etcetc).

Once I had referenced all the DLLs that were necessary to build the C# project I added it to the BizTalk project as a reference. I then added my custom component to the VS toolbox so that it could be 'dragged and dropped' to the decoder stage of my rcv pi
pline, just before the flat file dissasembler. Everything built correctly (no reference problems) and deployed to the GAC using the standard processes outlined in the BizTalk documentation but as mentioned aboved the custom DLL is obviously not being pick
ed up.

I have tried several different approaches (including putting the custom component code into the BizTalk project itself) and have also used the gacutil tool to place the assemblies into the GAC from a command prompt.

Does anyone have any info or insight into what may be happening here? Standard pipleine components work fine and I have successfully developed and deployed and tested the project without the custom component. The 'Pipeline.exe' tool keeps returning the sa
me error message when used with a flat file (including when used against other already working projects):

C:\projects\PND008TJC\Merchandise>pipeline ReceiveMerch.btp -d heirach1.txt -s Merch.xsd -proj Merchandising.btproj -c -v

Error
Source: System.Xml
Message: The data at the root level is invalid. Line 1, position
1.
HRESULT: 80131940

.... can anyone help?

Kind regards.
chabber

2004-05-30, 10:46 am

I had a similar problem that was fixed by simply stopping and restarting the
host after everything was built and deployed succesfully...


"Jim C" <starbug1@NOSPAM_hotmail.com> wrote in message
news:0C04CA4E-4B90-494F-ABFD-14C1D3C6214A@microsoft.com...
> Hi all,
>
> I'm currently working on a project that requires a flat file to be read,

mapped to a new structure and outputted as another flat file. We have
identifed the need to pre-process the inbound file and add some extra
delimiters between records within the file in order to process the data more
effectively. The obvious way to do this seems to be to use a custom decoder
component before the flat file is dissasembled in the pipeline.
>
> To this end I have created a component that (I hope) will achieve this by

using the "FixMsg" example provided with the BizTalk SDK as a base. The
issue I have experienced is that when I deploy the complete BizTalk project
and the C# class libaraies (which contain my custom components) I get an
error message in the event log just after the inbound flat file enters the
pipe:
>
> 'There was a failure executing the receive pipeline:

"Financial.FinanceRcvPipe" Source: "mscorlib" Receive Location:
"c:\projects\PND008TJC\drop\financial_in.txt" Reason: File or assembly name
CustomPipe.dll, or one of its dependencies, was not found.'
>
> A quick overview of the solution might help here:
>
> I have two projects, one has the C# classes and resource files that make

up the custom pipeline component and the other is a BizTalk project that
contains my pipelines, schemas, map and orchestration (etcetc).
>
> Once I had referenced all the DLLs that were necessary to build the C#

project I added it to the BizTalk project as a reference. I then added my
custom component to the VS toolbox so that it could be 'dragged and dropped'
to the decoder stage of my rcv pipline, just before the flat file
dissasembler. Everything built correctly (no reference problems) and
deployed to the GAC using the standard processes outlined in the BizTalk
documentation but as mentioned aboved the custom DLL is obviously not being
picked up.
>
> I have tried several different approaches (including putting the custom

component code into the BizTalk project itself) and have also used the
gacutil tool to place the assemblies into the GAC from a command prompt.
>
> Does anyone have any info or insight into what may be happening here?

Standard pipleine components work fine and I have successfully developed and
deployed and tested the project without the custom component. The
'Pipeline.exe' tool keeps returning the same error message when used with a
flat file (including when used against other already working projects):
>
> C:\projects\PND008TJC\Merchandise>pipeline ReceiveMerch.btp -d

heirach1.txt -s Merch.xsd -proj Merchandising.btproj -c -v
>
> Error
> Source: System.Xml
> Message: The data at the root level is invalid. Line 1,

position
> 1.
> HRESULT: 80131940
>
> ... can anyone help?
>
> Kind regards.



Allen Zhang

2004-05-30, 10:46 am

Did you put the CustomPipe.dll into Program Files\Microsoft Biztalk Server
2004\Pipeline Component directory? That is where we load the pipeline
components from.

See if that helps. Thanks

- Allen Zhang (MSFT)

This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------[vbcol=seagreen]

I'm currently working on a project that requires a flat file to be read,
mapped to a new structure and outputted as another flat file. We have
identifed the need to pre-process the inbound file and add some extra
delimiters between records within the file in order to process the data
more effectively. The obvious way to do this seems to be to use a custom
decoder component before the flat file is dissasembled in the pipeline.

To this end I have created a component that (I hope) will achieve this by
using the "FixMsg" example provided with the BizTalk SDK as a base. The
issue I have experienced is that when I deploy the complete BizTalk project
and the C# class libaraies (which contain my custom components) I get an
error message in the event log just after the inbound flat file enters the
pipe:

'There was a failure executing the receive pipeline:
"Financial.FinanceRcvPipe" Source: "mscorlib" Receive Location:
"c:\projects\PND008TJC\drop\financial_in.txt" Reason: File or assembly name
CustomPipe.dll, or one of its dependencies, was not found.'

A quick overview of the solution might help here:

I have two projects, one has the C# classes and resource files that make up
the custom pipeline component and the other is a BizTalk project that
contains my pipelines, schemas, map and orchestration (etcetc).

Once I had referenced all the DLLs that were necessary to build the C#
project I added it to the BizTalk project as a reference. I then added my
custom component to the VS toolbox so that it could be 'dragged and
dropped' to the decoder stage of my rcv pipline, just before the flat file
dissasembler. Everything built correctly (no reference problems) and
deployed to the GAC using the standard processes outlined in the BizTalk
documentation but as mentioned aboved the custom DLL is obviously not being
picked up.

I have tried several different approaches (including putting the custom
component code into the BizTalk project itself) and have also used the
gacutil tool to place the assemblies into the GAC from a command prompt.

Does anyone have any info or insight into what may be happening here?
Standard pipleine components work fine and I have successfully developed
and deployed and tested the project without the custom component. The
'Pipeline.exe' tool keeps returning the same error message when used with a
flat file (including when used against other already working projects):

C:\projects\PND008TJC\Merchandise>pipeline ReceiveMerch.btp -d heirach1.txt
-s Merch.xsd -proj Merchandising.btproj -c -v

Error
Source: System.Xml
Message: The data at the root level is invalid. Line 1,
position
1.
HRESULT: 80131940

.... can anyone help?

Kind regards.[vbcol=seagreen]

Jitendra

2004-05-30, 10:46 am

Alternatively put the pipeline component (and its dependent assemblies) in the GAC
Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com