locked
Biztalk 2009 WCF adapter RRS feed

  • Question

  • I'm trying to process a file using wcf custom adapter 64 bit on Biztalk 2009. The sql server that is receiving this file is SQL server 2005 enterprise edition SP 3 and 32 bit machine.

    I'm dropping the file in the receive location and it gets picked up but then the file disappears and no row count in sql inbound table.

    I checked the application log on Biztalk and SQL server and there are no errors.

    Any idea?

    Wednesday, February 26, 2014 3:32 PM

Answers

  • Use the Group Hub (Active Messages, Suspended Messages) and "Tracked Service Instances" to track where the message was sent to.

    Morten la Cour

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Wednesday, February 26, 2014 3:37 PM
  • Hi Chiris,

    You can go to BizTalk Group hub page ,look for Completed Instance and  right click the Orchestration to open Orchestration debugger which will allow you to trace through Message Flow .

    One more thing you can try is to write message to eventvwr when message is send to SQL and when you are getting response from SQL .

    You can also verify the SQL logs for the connection made by specific  user.

    On personal front I can recommned to check your SQL Query once.

    Thanks

    Abhishek

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Wednesday, February 26, 2014 4:51 PM
  • Can you clarify a few points?

    What Adapter are you using to receive the file?

    How is the Send Port subscribing to the received messages?

    Where do you have the Map configured?

    Are there any other Send Ports that might be subscribing to the messages?

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 12:07 AM
    Moderator
  • Please make sure you are the only one polling that receive location. May be some other receive location on some other server or other developers machine is polling the same location.
    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 5:40 PM
  • We faced same issue a while ago on one of our servers, and on digging in we found a receive location on one of our developers machine which was polling the location and file was processing from there. :)
    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 5:45 PM
  • Hi Chris,

    The WCF-SQL Adapter allows generating schema using Stored procedure.

    Go to “Add Generated Items”.”Consume Adapter Service” in Visual studio BizTalk Project Template.

     Select binding “sqlBinding”

    Configure the URI: “mssql://<servername>//<databasename>

    For example“mssql://localhost//DemoTest”

     Select a category:
    Notice, the list contains “Procedures” and “Strongly Typed Procedures” . Select Strongly Typed Procedures

    It will generate you the required Schema and Binding files.

    For Reference you can use below link

    http://seroter.wordpress.com/biztalk-and-wcf-part-ix-biztalk-adapter-pack-biztalk-patterns/

    Thanks

    Abhishek

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 9:09 PM
  • Hi ,

    Stop the Application and change the  Address Property URI at your Send Port

    For example“mssql://localhost//DemoTest”

    Once done STOP/START the host instance so that updated property get loaded into memory .

    Thanks

    Abhishek

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:48 PM
    Thursday, February 27, 2014 10:30 PM
  • Yes it will make sure your new server is picking up the file.

    Once done, follow the steps bellow:

    1. Go to your receive location and point URI to new location

    2. Go to your receive port --> Go to tracking tab and enable all 4 tracking options

    3. Restart the host instances

    4. Place the file in the new receive location (file should disappear)

    5. Now go to BizTalk Group Hub --> Tracked Message Events

    6. There should be two rows against your receive port (one for Receive and one for Send)

    By double clicking the rows you can see what was received on the port and what was sent by this port.

    At this stage, you will find your message in Active Messages or Suspended Messages.

    You can also monitor the Event Viewer for errors or warnings meanwhile.


    BizTalk Specialist

    • Proposed as answer by Muhammad Ehsan Friday, February 28, 2014 10:20 AM
    • Marked as answer by Chris7887 Friday, February 28, 2014 5:48 PM
    Friday, February 28, 2014 9:00 AM

All replies

  • Use the Group Hub (Active Messages, Suspended Messages) and "Tracked Service Instances" to track where the message was sent to.

    Morten la Cour

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Wednesday, February 26, 2014 3:37 PM
  • Everything is Zero on the messagebox group hub. nothing is showing like magic.
    Wednesday, February 26, 2014 3:50 PM
  • Hi Chiris,

    You can go to BizTalk Group hub page ,look for Completed Instance and  right click the Orchestration to open Orchestration debugger which will allow you to trace through Message Flow .

    One more thing you can try is to write message to eventvwr when message is send to SQL and when you are getting response from SQL .

    You can also verify the SQL logs for the connection made by specific  user.

    On personal front I can recommned to check your SQL Query once.

    Thanks

    Abhishek

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Wednesday, February 26, 2014 4:51 PM
  • Can you clarify a few points?

    What Adapter are you using to receive the file?

    How is the Send Port subscribing to the received messages?

    Where do you have the Map configured?

    Are there any other Send Ports that might be subscribing to the messages?

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 12:07 AM
    Moderator
  • I have 3 send ports, 1 wcf custom, 1 file, 1 archive

    I have 1 receive location with edi receive pipeline.

    I do not have a map or orchestration.

    Thursday, February 27, 2014 3:28 PM
  • Hi Chris

    WCF send port call some SP or there is an insert directly?


    EZ BizTalk Specialist

    Thursday, February 27, 2014 3:32 PM
  • Please make sure you are the only one polling that receive location. May be some other receive location on some other server or other developers machine is polling the same location.
    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 5:40 PM
  • We faced same issue a while ago on one of our servers, and on digging in we found a receive location on one of our developers machine which was polling the location and file was processing from there. :)
    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 5:45 PM
  • Muhammad,

    If I change the location path of the receive location, wouldn't that solve the problem that you are mentioning above?

    Thursday, February 27, 2014 8:26 PM
  • I think I have to execute the store procedure because it has been copied to the new server that I'm trying to process the file. any idea?

    Thursday, February 27, 2014 8:26 PM
  • Hi Chris,

    The WCF-SQL Adapter allows generating schema using Stored procedure.

    Go to “Add Generated Items”.”Consume Adapter Service” in Visual studio BizTalk Project Template.

     Select binding “sqlBinding”

    Configure the URI: “mssql://<servername>//<databasename>

    For example“mssql://localhost//DemoTest”

     Select a category:
    Notice, the list contains “Procedures” and “Strongly Typed Procedures” . Select Strongly Typed Procedures

    It will generate you the required Schema and Binding files.

    For Reference you can use below link

    http://seroter.wordpress.com/biztalk-and-wcf-part-ix-biztalk-adapter-pack-biztalk-patterns/

    Thanks

    Abhishek

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:49 PM
    Thursday, February 27, 2014 9:09 PM
  • 570Enrico,

    I have send port configured with Address URI :  mssql://Sqlservername//Databasename

    and soap action header: procedure/inbound/procedurename

    send port using wcf custom adapter, sql binding.

    Thursday, February 27, 2014 10:15 PM
  • I don't have any solution in visual studio. I only have a schema referenced from another application. nothing much.

    I have the same configuration working on a different server but now that I moved to a new environment, I'm not able to see data in my inbound table and there are no errors.

    Thursday, February 27, 2014 10:17 PM
  • Hi ,

    Stop the Application and change the  Address Property URI at your Send Port

    For example“mssql://localhost//DemoTest”

    Once done STOP/START the host instance so that updated property get loaded into memory .

    Thanks

    Abhishek

    • Marked as answer by Chris7887 Friday, February 28, 2014 5:48 PM
    Thursday, February 27, 2014 10:30 PM
  • Yes it will make sure your new server is picking up the file.

    Once done, follow the steps bellow:

    1. Go to your receive location and point URI to new location

    2. Go to your receive port --> Go to tracking tab and enable all 4 tracking options

    3. Restart the host instances

    4. Place the file in the new receive location (file should disappear)

    5. Now go to BizTalk Group Hub --> Tracked Message Events

    6. There should be two rows against your receive port (one for Receive and one for Send)

    By double clicking the rows you can see what was received on the port and what was sent by this port.

    At this stage, you will find your message in Active Messages or Suspended Messages.

    You can also monitor the Event Viewer for errors or warnings meanwhile.


    BizTalk Specialist

    • Proposed as answer by Muhammad Ehsan Friday, February 28, 2014 10:20 AM
    • Marked as answer by Chris7887 Friday, February 28, 2014 5:48 PM
    Friday, February 28, 2014 9:00 AM