From 6522a64289dfa72a916a9ecda4387cb35e0170c3 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Wed, 14 Oct 2015 20:24:44 -0500 Subject: [PATCH] IDEMPIERE-2756 Background threads losing context when user log out - fix validation / integrate fix from hengsin: Allow null context parameter for PO. Run pipodictionaryservice as system client ( ad_client_id=0 ). --- org.adempiere.base/src/org/compiere/model/PO.java | 4 +--- .../src/org/adempiere/pipo/srv/PipoDictionaryService.java | 3 +++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/org.adempiere.base/src/org/compiere/model/PO.java b/org.adempiere.base/src/org/compiere/model/PO.java index 6de7d06921..0e776ca2bd 100644 --- a/org.adempiere.base/src/org/compiere/model/PO.java +++ b/org.adempiere.base/src/org/compiere/model/PO.java @@ -186,9 +186,7 @@ public abstract class PO */ public PO (Properties ctx, int ID, String trxName, ResultSet rs) { - if (ctx == null) - throw new IllegalArgumentException ("No Context"); - p_ctx = ctx; + p_ctx = ctx != null ? ctx : Env.getCtx(); m_trxName = trxName; p_info = initPO(ctx); diff --git a/org.adempiere.pipo/src/org/adempiere/pipo/srv/PipoDictionaryService.java b/org.adempiere.pipo/src/org/adempiere/pipo/srv/PipoDictionaryService.java index 74a54130fe..e92e2f0032 100644 --- a/org.adempiere.pipo/src/org/adempiere/pipo/srv/PipoDictionaryService.java +++ b/org.adempiere.pipo/src/org/adempiere/pipo/srv/PipoDictionaryService.java @@ -59,6 +59,9 @@ public class PipoDictionaryService implements IDictionaryService { packIn = new PackIn(); packIn.setPackageName(context.getBundle().getSymbolicName()); + if (Env.getCtx().getProperty("#AD_Client_ID") == null) { + Env.getCtx().put("#AD_Client_ID", 0); + } //get package version from file name suffix or bundle header String packageVersion = null; String fileName = packageFile.getName();