How to create framework component?

Posted by Admin on 28-Jan-2010 15:08

Hello,

Is there any documentation available, how to create a framework component that can be embedded to sonic MF container (the similar way to broker) and is started when container is started?

I know that creating such a component is possible, i have seen those, even developed by third parties. Some references to documentation, and even better, few samples would be most welcom.

Thanks in advance,

Margus

All Replies

Posted by Bill Wood on 28-Jan-2010 15:22

My understanding was that this was not something commonly done -- or rather only done by partners (and possibly the Progress field organization).  The supported extension is to build Sonic ESB ServiceTypes (even if they don't connect to the ESB).

What was your use case?

Posted by tsteinbo on 29-Jan-2010 02:43

Margus,

it is certainly doable, but the interfaces to implement are not public and don't come with any guarantuee that they will be stable across releases and/or there will be a migration path.

So as Bill already indicated you should use our public APIs. Otherwise you need a good business case to go down that route and be prepared for some heavy lifting between releases.

Thomas

Posted by Admin on 10-Mar-2010 12:39

Hello,

well. The business case is there. The simple trick is that Sonic has some XML API-s modified, but we are using the management API-s via web interface within BEA cluster. And we were between rock and a hard place: either loose the management functionalities (creation of queues etc) of sonic from the BEA cluster. Or have no proper XML parsing. We only use MQ, not ESB, therefore we thought that we will send the management requests to MQ, specially to this framework component that performs the actual configuration.

But, thank you all for answering.

Posted by Bill Wood on 10-Mar-2010 13:45

margus wrote:

Hello,

well. The business case is there. The simple trick is that Sonic has some XML API-s modified, but we are using the management API-s via web interface within BEA cluster. And we were between rock and a hard place: either loose the management functionalities (creation of queues etc) of sonic from the BEA cluster. Or have no proper XML parsing. We only use MQ, not ESB, therefore we thought that we will send the management requests to MQ, specially to this framework component that performs the actual configuration.

But, thank you all for answering.

Looking at your request, I think there may be some confusion about the term "Framework Component".   Within Sonic, a Framework Component is a:

  • runtime component
  • hosted by a Sonic MF Container (MF = Management Framework)
  • loaded into the Directory Service by a ds.seed file
  • packaged in a component archive (.car) file with associated SMC plug-in and management api proxy

You could host this as a Sonic ESB service, and send JMS messages to it. Or host it in a separate container.   The first one (create a Sonic ESB Service that takes JMS messages and calls Sonic Management functions) is something that has been done many times by customers and will work.  Many customers and users have created a Sonic ESB service that they send their own remote requests to, and this service connect to the Sonic DS as an administrative client, and that performs the actual configuration.

Posted by tsteinbo on 16-Mar-2010 04:08

Can you elaborate what XML APIs Sonic modified that make things incompatible with BEA, please?

Also, if I understand you correctly, you have a webapp hosted in BEA and now want to proxy Sonic Mgmt requests (like queue creation) by way of a component running in a sonic container to avoid this incompatiblity? But how is the communication between BEA and that new component done?

BTW, I assume you referring to Adaptris' mgmt framework plugin?

This thread is closed