Thanks Deepak for your prompt response, that looked promising, however i could not get that to work when i copied the SECA to my customComponent (that extended order) and added enabled="false", but that did not suppress the existing SECA, Just for verification i added enabled="false" in the original order component itself but for whatever reason that did not work either, BTW, i'm still on 12.04.03, yea it is long due for upgrade :(; it is possible it is fixed in a later version, but for now i have created a new SECA in my customComponent (that extended order) with a different event i.e. event="return" instead of event="commit", that created an additional event with the message that i need, however it did not suppress the original event/message, but i guess will have to live with that or comment out the original SECA in the original order component. But i really appreciate your time to answer my question.
Sakthi On Mon, Jun 1, 2020 at 1:52 AM Deepak Dixit <dee...@apache.org> wrote: > Hi Sakthi, > > Which ofbiz version are you using? > > You can disable seca rule, copy seca rule in custom component and set > enabled="false" > it will disable the existing seca rule. > Please refer the [1] service-eca.xsd for reference > > [1] http://ofbiz.apache.org/dtds/service-eca.xsd > Thanks & Regards > -- > Deepak Dixit > ofbiz.apache.org > > > > On Fri, May 29, 2020 at 9:24 PM Sakthivel Vellingiri < > info.integ...@gmail.com> wrote: > > > Thanks Jason for immediate response, yes we do have below in our extended > > component; i understood, we could have multiple SECAs, however in this > > particular case we only want our custom SECA to fire and not the > original, > > as we want to change the message that is passed in the original SECA > > definition. hence wondering overriding the original SECA is possible > which > > will prevent original from running > > <service-resource type="eca" loader="main" > > location="servicedef/secas.xml"/> > > > > Sakthi > > > > On Fri, May 29, 2020 at 10:58 AM Jason RJ <jason_of...@reast.net> wrote: > > > > > > > > On 29/05/2020 15:46, Sakthivel Vellingiri wrote: > > > > Hi All - > > > > *Summary:* > > > > Appreciate any pointers, Is it possible to override SECA definition > by > > > > overriding the same definition in > > > > hot-deploy/<extended-component>/servicedef/secas.xml > > > > > > > > *Details:* > > > > There is a SECA definition in > applications/order/servicedef/secas.xml, > > as > > > > you can see noteInfo is hardcoded, and i want to replace wih my > > noteinfo > > > > without touching code under applications > > > > <!-- send a system note to all Customer request participants > > (excluding > > > > the originator) > > > > when a note is added to a particular customer request.--> > > > > <eca service="createCustRequestItemNote" event="commit"> > > > > <set field-name="noteParty" env-name="partyId"/> > > > > <set field-name="noteInfo" value="A note has been added to > > > customer > > > > request"/> > > > > <set field-name="moreInfoItemName" value="custRequestId"/> > > > > <set field-name="moreInfoItemId" env-name="custRequestId"/> > > > > <set field-name="moreInfoUrl" > > > > value="/ordermgr/control/ViewRequest"/> > > > > <action service="createSystemInfoNote" mode="sync"/> > > > > </eca> > > > > Is it possible to achieve this by overriding this in hot-deploy that > > has > > > > extended this component > > applications/order-extended/servicedef/secas.xml > > > > <!-- send a system note to all Customer request participants > (excluding > > > the > > > > originator) > > > > when a note is added to a particular customer request.--> > > > > <eca service="createCustRequestItemNote" event="commit"> > > > > <set field-name="noteParty" env-name="partyId"/> > > > > <set field-name="noteInfo" value="Custom Note"/> > > > > <set field-name="moreInfoItemName" value="custRequestId"/> > > > > <set field-name="moreInfoItemId" env-name="custRequestId"/> > > > > <set field-name="moreInfoUrl" > > > > value="/ordermgr/control/ViewRequest"/> > > > > <action service="createSystemInfoNote" mode="sync"/> > > > > </eca> > > > > > > > > I had tried this without success, however i'm using this approach for > > > > overriding services. > > > > > > > > regards > > > > Sakthi > > > > > > > > > Hi Sakthi, > > > > > > Do you have a reference to secas file in your ofbiz-component.xml: > > > > > > <!-- For Service Event Control Action files, use the following --> > > > <service-resource type="eca" loader="main" > > > location="servicedef/secas.xml"/> > > > > > > In theory multiple SECAs can be called so both the original and yours > > > will be called, I'm not sure how the priority would be decided, but > > > hopefully core SECAs will fire first. > > > > > > Jason > > > > > > > > >