The URI configuration mechanism does rock - I agree with Guillaume,
it'd be a very useful way to configure an ECA / BAM configuration.

On 7/31/06, Guillaume Nodet <[EMAIL PROTECTED]> wrote:
On 7/31/06, Soumadeep-Infravio <[EMAIL PROTECTED]> wrote:
>
> I agree... but in a content based routing too the end result is a path to
> an
> application or service etc... though the technology used could be the same
> but from a BAM perspective the utility factor is effectively greater...


Agreed. And be sure that I do not underestimate the need for such easier
configuration,
though I still think that using endpoint resolution would avoid duplicating
code, and
allow using any existing BC that support such feature, while keeping a
centralized configuration.

Maybe I miss something, i would have thought a BAM component would be more
about
monitoring than embedding business logic with rules: see one definition of
BAM at
http://www.ebizq.net/topics/bam/features/4689.html --  of course all
definitions can be argued ;)


----- Original Message -----
> From: "Guillaume Nodet" <[EMAIL PROTECTED]>
> To: <servicemix-dev@geronimo.apache.org>
> Sent: Monday, July 31, 2006 4:41 PM
> Subject: Re: BAM Component
>
>
> > On 7/31/06, Soumadeep-Infravio <[EMAIL PROTECTED]> wrote:
> >>
> >> Thanks Guillaume,
> >>
> >> comments inline...
> >>
> >> Thanks
> >> Soumadeep
> >>
> >> ----- Original Message -----
> >> From: "Guillaume Nodet" <[EMAIL PROTECTED]>
> >> To: <servicemix-dev@geronimo.apache.org>
> >> Cc: <servicemix-users@geronimo.apache.org>
> >> Sent: Monday, July 31, 2006 3:14 PM
> >> Subject: Re: BAM Component
> >>
> >>
> >> > Great, thx a lot !
> >> > CCing servicemix-dev, as I think this is the place where this
> >> > discussion
> >> > should take place.
> >> >
> >> > Do you have any plan / ideas of future features for this component ?
> >>
> >> Well, to start with we can have
> >> 1) Marshaler for various input sources
> >> 2) integration with GUI based monitoring applications
> >> 3) integration with OpenOffice, where you can directly feed data to a
> >> spread
> >> sheet template
> >> 4) have an intelligence module to monitor usage/evaluation patterns and
> >> predict or forcast based on those patterns
> >> ... possibilities are infinite...
> >>
> >> > Currently, it seems this that the component is a router with actions.
> >> > How will it differ from existing content based routers (xpath router,
> >> > drools
> >> > component) ?
> >>
> >> Traditionally, routing is more in terms of providing options for
> >> failover,
> >> parallel, load balancing etc...techniques not for monitoring and for
> >> taking
> >> corrective actions it's again restricted to finding a path to a
> >> service/app
> >> etc nothing more than that.
> >
> >
> > I was talking about content-based routing ;)
> > I also agree with James that we could leverage ServiceMix expressions.
> >
> > But I do agree we can factor out the existing SM Samples code base and
> use
> >> it
> >>
> >> > Another point I am wondering about, is the fact that the component
> >> embeds
> >> > the
> >> > email code inside an action: i think it would be better to reuse the
> >> > existing components
> >>
> >> Yes, our intension is to factor out the common parameters and use a
> >> global
> >> configuration file which can be referenced.
> >>
> >> > for that, else the BAM component would end up lots of BCs code
> >> internally
> >> > (what about
> >> > jms, jabber, etc...).
> >>
> >> You are right as a feature extension we will certainly use all possible
> >> ways
> >> of communication/transport , my idea was to provide adaptors for it ->
> >> actions
> >
> >
> > That was exactly what was worrying me. Having duplicate code will lead
> to
> > a
> > more
> > difficult maintenance.  Maybe we could use URIs (
> > http://servicemix.goopen.org/site/uris.html),
> > or more generally endpoint resolution.  This would allow configuring
> > endpoints in the BAM
> > component, while putting the code in the respective BCs.
> >
> >>
> >> > On 7/31/06, Soumadeep-Infravio <[EMAIL PROTECTED]> wrote:
> >> >>
> >> >> Hi Guillaume/All,
> >> >>
> >> >> We feel that a Business Activity Monitoring Component would be a
> good
> >> >> addition to ServiceMix's existing samples. We have worked on a
> >> prototype
> >> >> for
> >> >> such a component and would like to contribute it.
> >> >>
> >> >> We have phased it out and depending on the feedback we will add
> other
> >> >> features as required.
> >> >>
> >> >> Please send us your feedback...
> >> >>
> >> >> Best regards
> >> >> Soumadeep
> >> >>
> >> >> Details of the component
> >> >> ==================
> >> >>
> >> >> Phase 1
> >> >> This is a Business Activity Monitoring Component which would work
> only
> >> >> for
> >> >> Web services message payload in phase 1. An XPath expression could
> be
> >> >> provided in a config file which will be used to evaluate the
> incoming
> >> >> message. Depending on the evaluation result it will allow one or
> more
> >> >> actions to be taken. These actions again could be made available in
> a
> >> >> config
> >> >> files as below.
> >> >>
> >> >> Config file:
> >> >> =======
> >> >>
> >> >> <SM-WS-BAM>
> >> >>     <Service url=http://www.xmethod.com/getVersion>
> >> >>         <Rule name="sendEmailWhenGetQuoteInvoked">
> >> >>             <expression value/Envelope/Body/GetQuote">
> >> >>             <Action name="emailer"/>
> >> >>             <Action name="..."/>
> >> >>         </Rule>
> >> >>         <Rule name=.../>
> >> >>     </Service>
> >> >> </SM-WS-BAM>
> >> >>
> >> >> <Actions>
> >> >>             <Action name="emailer">
> >> >>                 <Description/>
> >> >>                 <Adaptor name="org.apache.sm.Emailer">
> >> >>                     <smtp-host name="mail.webmail.org">
> >> >>                     <from address="[EMAIL PROTECTED]">
> >> >>                     <to [EMAIL PROTECTED];[EMAIL PROTECTED]>
> >> >>                     <message value="There is a new quotation coming
> >> your
> >> >> way!!">
> >> >>                 </Adaptor>
> >> >>             </Action>
> >> >> </Actions>
> >> >>
> >> >> Flow (inside the BAM component)
> >> >> ===
> >> >> note: The usual MEP will be followed to pass the payload to the next
> >> >> component in line.
> >> >>
> >> >> 1) Fetch the Source from the Normalized Message
> >> >> 2) Fetch the rule to evaluate depending on the endpoint-request URL
> >> >> 3) Check for condition and get the evaluation result (using
> >> >> java1.5xpath's evaluate method)
> >> >> 4) Get the adaptor to invoke and invoke it. (Adaptor instances will
> be
> >> >> cached ) - from the action definition.
> >> >>
> >> >>
> >> >> Phase 2
> >> >> The component would be extended to monitor any payload. This will be
> >> >> achieved using appropriate marshalers, which will convert the
> payload
> >> to
> >> >> xml. The marshaler to use could be indicated as a property value in
> >> >> the
> >> >> MessageExchange. The rest will be per phase 1.
> >> >>
> >> >> Possible use:
> >> >> ==========
> >> >>
> >> >> Servicemix 3.0 currently is distributed with several samples, one of
> >> them
> >> >> being the http-binding, which internally uses a saaj binding to
> >> redirect
> >> >> the
> >> >> message to a soap endpoint. The BAM component could be used
> in-between
> >> >> which
> >> >> would enable the user to monitor the payload and take action.
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > Cheers,
> >> > Guillaume Nodet
> >> >
> >>
> >>
> >>
> >
> >
> > --
> > Cheers,
> > Guillaume Nodet
> >
>
>
>


--
Cheers,
Guillaume Nodet




--

James
-------
http://radio.weblogs.com/0112098/

Reply via email to