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

Deepak Dixit commented on OFBIZ-12424:
--------------------------------------

Why this service removing PartyRole? 

Need to remove code responsible for PartyRole removal.
This service already set party status as PARTY_DISABLED, and disabled party not 
entertained anywhere in code so it should be good.  

I think in this way we can fix the linkParty issue. 

> 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, 
> Upcoming Branch
>            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.10#820010)

Reply via email to