BizTalk Server Orchestration - FTP adapter - How to catch an exception?

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server Orchestration > March 2006 > FTP adapter - How to catch an exception?





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 FTP adapter - How to catch an exception?
roppliger@iware.ch

2006-02-26, 10:48 am

Hi,

I've an orchestration (biztalk 2004).

The goal of this orchestration is
to receive an xml file
to extract a node of this file
to send the node (in a xml file) on a server by FTP
(This remote server analyses this file and constructs a response
file in another directory)
to receive the response (by FTP)
to put the response in the original file.

If the FTP server is up, all is OK.
The problems appear when the ftp server is down.

I've put my send form and the receive form in a scope with an exception
handler(Microsoft.XLangs.BaseTypes.DelveryFailureException). I've a
correlation between these forms because I've to wait the response.The
"Delivery notification" propertie of the send port is marked as
"Transmitted".

And when the remote server is down, the orchestration is stopped on the
receive port.

Any idea?

Thanks

Raoul

Stephen W. Thomas

2006-02-26, 10:48 am

Hello.

Have you tried to move the Receive Shape outside (below) the scope shape?
You might need some branching logic as well. So, if you do not have an
exception inside the send you go to the Receive Shape inside the branch. You
can do that by setting a bool to true inside the catch of the scope shape.

This sample might help as well:
http://www.biztalkgurus.com/Labs/Sh...Exceptions.html

Hope this helps.

Stephen W. Thomas
http://www.biztalkgurus.com
http://geekswithblogs.net/sthomas/


"roppliger@iware.ch" wrote:

> Hi,
>
> I've an orchestration (biztalk 2004).
>
> The goal of this orchestration is
> to receive an xml file
> to extract a node of this file
> to send the node (in a xml file) on a server by FTP
> (This remote server analyses this file and constructs a response
> file in another directory)
> to receive the response (by FTP)
> to put the response in the original file.
>
> If the FTP server is up, all is OK.
> The problems appear when the ftp server is down.
>
> I've put my send form and the receive form in a scope with an exception
> handler(Microsoft.XLangs.BaseTypes.DelveryFailureException). I've a
> correlation between these forms because I've to wait the response.The
> "Delivery notification" propertie of the send port is marked as
> "Transmitted".
>
> And when the remote server is down, the orchestration is stopped on the
> receive port.
>
> Any idea?
>
> Thanks
>
> Raoul
>
>

roppliger@iware.ch

2006-02-26, 10:48 am

Hello,

Thanks for your message.

I've already tried this solution but I've a problem with the
correlation.

I send a message and I have to wait the response. So I've defined a
correlation set and I use "Initializing Correlation sets" on the send
form and "Following Correlation Sets" on the receive form.
If I put the receive form out of the scope, I have the following
message when I build the solution : "uninitialised correlation".

Any idea?

Raoul

Stephen W. Thomas

2006-02-26, 10:48 am

Yep, you are right. I got the same error.

Ok, I re-read you original post. So if the remote server is down you are
not getting your errors back? Have you tried changing the retry count on
the Send Port to 0? Then, you should get the error right away. I think you
are probably waiting on the Send Shape – not the Receive.

Hope this helps.

Stephen W. Thomas
http://www.biztalkgurus.com
http://geekswithblogs.net/sthomas/


"roppliger@iware.ch" wrote:

> Hello,
>
> Thanks for your message.
>
> I've already tried this solution but I've a problem with the
> correlation.
>
> I send a message and I have to wait the response. So I've defined a
> correlation set and I use "Initializing Correlation sets" on the send
> form and "Following Correlation Sets" on the receive form.
> If I put the receive form out of the scope, I have the following
> message when I build the solution : "uninitialised correlation".
>
> Any idea?
>
> Raoul
>
>

roppliger@iware.ch

2006-02-26, 10:48 am

Hi,

I've tried to change the retry count on the Send Port. It's exactly
the same situation than before.

With the "Health and Activity Tracking", I can debug my orchestration
and I see
a ligne for the entry in the scope
2 lignes for the send form
1 ligne for the receive form

I suppose that I'me waiting on the receive form and not on the send
form.

Any idea?

Thanks

Raoul

Stephen W. Thomas

2006-02-26, 10:48 am

Not sure on this one. It sounds like you have everything set up right.

If you wanted to send me the solution, I could take a look at it. My email
is swthomas at biztalkgurusu.com.

Stephen W. Thomas
http://www.biztalkgurus.com
http://geekswithblogs.net/sthomas/


"roppliger@iware.ch" wrote:

> Hi,
>
> I've tried to change the retry count on the Send Port. It's exactly
> the same situation than before.
>
> With the "Health and Activity Tracking", I can debug my orchestration
> and I see
> a ligne for the entry in the scope
> 2 lignes for the send form
> 1 ligne for the receive form
>
> I suppose that I'me waiting on the receive form and not on the send
> form.
>
> Any idea?
>
> Thanks
>
> Raoul
>
>

roppliger@iware.ch

2006-03-03, 6:17 pm

Thanks for your response.

It seems that there's not really a good solution in Biztalk 2004.

As you said me, I try to explore another way:

I use an external FTP client, add this client in my references and I
detect if the ftp server is up or down (in a atomic scope). If the
server is up, I can use my send/receive forms otherwise a message is
generated.

After, I've add my exterbal dll in the GAC (gacutil /i myexternal.dll).

Now it's OK!

Thanks.

Raoul

Younes Amar

2006-03-06, 5:51 pm

Hi,
did you activate the delivery notification in your send port and try to do a
try catch exception on your FTP send Port
Younes
<roppliger@iware.ch> wrote in message
news:1141374312.013947.114760@v46g2000cwv.googlegroups.com...
> Thanks for your response.
>
> It seems that there's not really a good solution in Biztalk 2004.
>
> As you said me, I try to explore another way:
>
> I use an external FTP client, add this client in my references and I
> detect if the ftp server is up or down (in a atomic scope). If the
> server is up, I can use my send/receive forms otherwise a message is
> generated.
>
> After, I've add my exterbal dll in the GAC (gacutil /i myexternal.dll).
>
> Now it's OK!
>
> Thanks.
>
> Raoul
>



Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com