From 21c2f0c05b90a07902456eb4cde0b0399e0c1bc5 Mon Sep 17 00:00:00 2001 From: Heng Sin Low Date: Mon, 17 Dec 2012 11:05:30 +0800 Subject: [PATCH] IDEMPIERE-254 2Pack Stabilization and Enhancement. Fixed pack in bug with generic po. --- org.adempiere.base/src/org/compiere/process/SvrProcess.java | 4 ++++ .../org/adempiere/pipo2/handler/GenericPOElementHandler.java | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/org.adempiere.base/src/org/compiere/process/SvrProcess.java b/org.adempiere.base/src/org/compiere/process/SvrProcess.java index a4374b6f58..927867ff8f 100644 --- a/org.adempiere.base/src/org/compiere/process/SvrProcess.java +++ b/org.adempiere.base/src/org/compiere/process/SvrProcess.java @@ -108,8 +108,10 @@ public abstract class SvrProcess implements ProcessCall boolean success = false; + ClassLoader contextLoader = Thread.currentThread().getContextClassLoader(); try { + Thread.currentThread().setContextClassLoader(getClass().getClassLoader()); m_ctx.put(PROCESS_INFO_CTX_KEY, m_pi); if (processUI != null) m_ctx.put(PROCESS_UI_CTX_KEY, processUI); @@ -143,6 +145,8 @@ public abstract class SvrProcess implements ProcessCall // outside transaction processing [ teo_sarca, 1646891 ] postProcess(!m_pi.isError()); + + Thread.currentThread().setContextClassLoader(contextLoader); } return !m_pi.isError(); diff --git a/org.adempiere.pipo.handlers/src/org/adempiere/pipo2/handler/GenericPOElementHandler.java b/org.adempiere.pipo.handlers/src/org/adempiere/pipo2/handler/GenericPOElementHandler.java index 161183c1a6..b115ae2865 100644 --- a/org.adempiere.pipo.handlers/src/org/adempiere/pipo2/handler/GenericPOElementHandler.java +++ b/org.adempiere.pipo.handlers/src/org/adempiere/pipo2/handler/GenericPOElementHandler.java @@ -73,8 +73,8 @@ public class GenericPOElementHandler extends AbstractElementHandler { String uuidColumn = PO.getUUIDColumnName(tableName); String idColumn = tableName + "_ID"; MTable table = MTable.get(ctx.ctx, tableName); - if ((!element.properties.containsKey(uuidColumn) || element.properties.get(uuidColumn).contents == null || element.properties.get(uuidColumn).contents.toString().trim().length() > 0) - && (!element.properties.containsKey(idColumn) || element.properties.get(idColumn).contents == null || element.properties.get(idColumn).contents.toString().trim().length() > 0)) { + if ((!element.properties.containsKey(uuidColumn) || element.properties.get(uuidColumn).contents == null || element.properties.get(uuidColumn).contents.toString().trim().length() == 0) + && (!element.properties.containsKey(idColumn) || element.properties.get(idColumn).contents == null || element.properties.get(idColumn).contents.toString().trim().length() == 0)) { POInfo info = POInfo.getPOInfo(ctx.ctx, table.getAD_Table_ID()); MColumn columns[] = table.getColumns(false); StringBuilder whereClause = new StringBuilder();