[ 
https://issues.apache.org/jira/browse/OFBIZ-12424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17451864#comment-17451864
 ] 

Rohit Koushal commented on OFBIZ-12424:
---------------------------------------

Thanks [~mbrohl] for jumping in, needed I also think the purpose of this ticket 
is getting lost somewhere due to the other things which are being raised. 

If any user is using the feature({*}Link Party{*}) then will run into some much 
serious problem due to the global deactivation of the ECA handler because there 
so many logic that triggers when uses delegator methods(CRUD) 

> Link Party feature stop the EECA rules globally
> -----------------------------------------------
>
>                 Key: OFBIZ-12424
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-12424
>             Project: OFBiz
>          Issue Type: Bug
>    Affects Versions: Release Branch 18.12, Release Branch 17.12, Trunk
>            Reporter: Rohit Koushal
>            Assignee: Rohit Koushal
>            Priority: Major
>         Attachments: OFBIZ-12424.patch, image-2021-12-01-17-18-37-279.png, 
> image-2021-12-01-17-20-21-196.png, image-2021-12-01-18-18-40-267.png
>
>
> In the Link Party Feature({_}*partymgr > profile > Link Party*{_}) there is a 
> code that stops EECA rules globally in the system and as a result it caused 
> major issues in the process which are driven from EECA's.
> *PartyServices.java*
> {code:java}
> public static Map<String, Object> linkParty(DispatchContext dctx, Map<String, 
> ? extends Object> context) {
>     Delegator delegator = dctx.getDelegator();
>     Locale locale = (Locale) context.get("locale");
>     delegator.setEntityEcaHandler(null);
> .
> .
> .
> } {code}
>  
> In the above code you can see that we are updating EntityEcaHandler on 
> delegator object to null.  
> *GenericDelegator.java*
> {code:java}
> protected void evalRules(String event, String currentOperation, GenericEntity 
> value, boolean isError) throws GenericEntityException {
>     if (entityEcaHandler == null) {
>         return;
>     }
>     entityEcaHandler.evalRules(currentOperation, eventMap, event, value, 
> isError);
> } {code}
> On any DB operation(find, create and store) using delegator above method run 
> and due to null EntityEcaHandler object it won't execute any EECA's globally 
> in the system



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to