I need an External Activation Example

Unanswered I need an External Activation Example

  • Thursday, January 21, 2010 11:50 PM
     
     
    Hi,
     
    Plagiarizing a question from a year ago:
    Can anyone tell me where I can find an end to end example of external activation?  I am using the External Activation service from the 2008 feature pack.  I cant get it to work tho'. 
    I have the S B ExternalActivation service installed and running. I've changed the config file to point to a ssb_HelloWorld database in which I've created objects per the advice in

    http://blogs.msdn.com/sql_service_broker/archive/2009/05/18/get-started-with-using-external-activator.aspx
    Specifically I need to know how another external application can create a conversation that notifies the ssbEA to run and kick off the other application. 
    Thank you for any suggestions but perhaps especially for an example.

All Replies

  • Friday, January 22, 2010 6:47 PM
    Moderator
     
     
    Your question ("how to create a conversation") doesn't seem to be related to External Activator. Provided you have configured External Activator and the event notification as per the blog entry, now you just want to create a regular conversation. Take a look here for tutorials.
  • Friday, January 22, 2010 11:44 PM
     
     

    Thanks for your response Pawel.  I'm quite a newbi with respect to EA, so let's see if I can make my question more meaningful.

    I have a little database, ssb_HelloWorld.  I created objects per the url above:
    ----------------------------------------
    create queue my_notif_queue
    go

    create queue my_user_queue
    go

    create service my_notif_svc on queue my_notif_queue
    ( [http://schemas.microsoft.com/SQL/Notifications/PostEventNotification])
    go

    CREATE EVENT NOTIFICATION my_evt_notif
    ON QUEUE my_user_queue
    FOR QUEUE_ACTIVATION
    TO SERVICE 'my_notif_svc' , 'current database'
    GO
    -----------------------------

    I've installed AE using SSBEAS.msi and configured the config file to use my database and where to go to get the external executable I want to run.

    So, does the action of creating 'my_evt_notif' kick off send the message to kick off the executable?  Or, do I have to do something else to do this, like send a message to my_notif_svc? 

    I'm confused enough to not know how to frame the question, perhaps.

    Thanks for any extra help.

  • Saturday, January 23, 2010 11:48 PM
    Moderator
     
     
    Creating the event notification will not kick off the executable. Sending a message to my_notif_svc will, but that's not the way to do it. Once you have the infrastructure in place (and it seems like you do), messages incoming to the USER QUEUE will trigger external application.
  • Monday, February 15, 2010 5:44 PM
    Moderator
     
     

    A good example on using the External Activator is on the Service Broker Blog:
    http://blogs.msdn.com/sql_service_broker/archive/2009/05/18/get-started-with-using-external-activator.aspx

  • Wednesday, January 19, 2011 3:00 PM
     
     

    Hi,

    I'm also looking at getting this working.  The example in the link above is a good starting point, and I've found this link to be very useful..
    http://blogs.msdn.com/b/appfabriccat/archive/2010/10/27/updating-appfabric-cache-via-sql-service-broker-external-activator.aspx

    as it contains a code sample that could be used for the app the External Activator calls...

    However, after following both examples closely.. ensuring Message/Notify queues, services and notifications are all correctly set up, all permissions are
    correctly set up (both db and EAService) ... The External Activator just seems to sit there (the EATrace.log file only has initial startup messages in it, no error messages or anything)

    Are there any other logs I can look at to see if Event Notifications are being fired when messages get added to my message queue ("user queue")?  Or is there
    any reason why EA isn't responding?