This project is read-only.

Service Broker Trigger

Feb 8, 2011 at 8:13 AM

Hi, in case its not entirely obvious I am very very new to this space so forgive me if this is a silly question (or its been asked somewhere else, I havnt found anything though). I come from an IBM integration background so I am trying to get my head around what is possible within the Microsoft environment. I like the sound of this ESB framework very much.

As part of a project I am proving I need to be able to trigger ESB style processing via Service broker queues, is there any plan to implement some form of endpoint via Service broker at all?




Feb 9, 2011 at 12:52 PM

Hi Paul.

There is no specific out-of-the-box support for MS SQL Server Service Broker.

Having said that, there's no reason you can't:

1)Call ESB.NET web services from Service Broker

2)Have a listener (copy the WSMQ v.dir  & change appropriate code) that pulls messages out of Service Broker Queues & processes them via ESB.NET (IIS hosted).

    • Easiest way to do this is to have the Queue messages be in one of the ESB.NET Envelope formats.
    • Use the following as a starting point.
      • Copy the "C:\ESB\Dev\Source\ESB\Base\Transports\ESB.Core.Adaptors.Transport.Internet.Receive.WSMQ" project to something like "C:\ESB\Dev\Source\ESB\Base\Transports\ESB.Core.Adaptors.Transport.Internet.Receive.SBMQ"
      • then change the following files:
      • "C:\ESB\Dev\Source\ESB\Base\Transports\ESB.Core.Adaptors.Transport.Internet.Receive.SBMQ\AutoStartAction.vb"
      • "C:\ESB\Dev\Source\ESB\Base\Transports\ESB.Core.Adaptors.Transport.Internet.Receive.SBMQ\ESBHTTPTransportInternalAsync.aspx.vb"
        • change the GetNextMsgFromQueue() method to get from Service Broker queues instead of WSMQ queues.

Let me know if you have any issues with this, or if you're after something different.

I don't think the ESB.NET inproc hosting model will work within SQL Server as it uses files for configuration & assembly loading.