BF [ 1810182 ] Session lost after cache reset
http://sourceforge.net/tracker/index.php?func=detail&aid=1810182&group_id=176962&atid=879332
This commit is contained in:
parent
5cf47c3fa2
commit
d7ea4de2f5
|
@ -28,6 +28,9 @@ import org.compiere.util.*;
|
||||||
*
|
*
|
||||||
* @author Jorg Janke
|
* @author Jorg Janke
|
||||||
* @version $Id: MSession.java,v 1.3 2006/07/30 00:58:05 jjanke Exp $
|
* @version $Id: MSession.java,v 1.3 2006/07/30 00:58:05 jjanke Exp $
|
||||||
|
*
|
||||||
|
* @author Teo Sarca, SC ARHIPAC SERVICE SRL
|
||||||
|
* <li>BF [ 1810182 ] Session lost after cache reset
|
||||||
*/
|
*/
|
||||||
public class MSession extends X_AD_Session
|
public class MSession extends X_AD_Session
|
||||||
{
|
{
|
||||||
|
@ -43,6 +46,16 @@ public class MSession extends X_AD_Session
|
||||||
MSession session = null;
|
MSession session = null;
|
||||||
if (AD_Session_ID > 0)
|
if (AD_Session_ID > 0)
|
||||||
session = (MSession)s_sessions.get(new Integer(AD_Session_ID));
|
session = (MSession)s_sessions.get(new Integer(AD_Session_ID));
|
||||||
|
// Try to load
|
||||||
|
if (session == null && AD_Session_ID > 0)
|
||||||
|
{
|
||||||
|
session = new MSession(ctx, AD_Session_ID, null);
|
||||||
|
if (session.get_ID() != AD_Session_ID) {
|
||||||
|
Env.setContext (ctx, "#AD_Session_ID", AD_Session_ID);
|
||||||
|
s_sessions.put(AD_Session_ID, session);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Create New
|
||||||
if (session == null && createNew)
|
if (session == null && createNew)
|
||||||
{
|
{
|
||||||
session = new MSession (ctx, null); // local session
|
session = new MSession (ctx, null); // local session
|
||||||
|
|
|
@ -96,6 +96,7 @@
|
||||||
<test name="test.functional.MBPartnerTest" />
|
<test name="test.functional.MBPartnerTest" />
|
||||||
<test name="test.functional.MBPGroupTest" />
|
<test name="test.functional.MBPGroupTest" />
|
||||||
<test name="test.functional.MBPartnerLocationTest" />
|
<test name="test.functional.MBPartnerLocationTest" />
|
||||||
|
<test name="test.functional.MSessionTest" />
|
||||||
<test name="test.functional.PackOutTest" />
|
<test name="test.functional.PackOutTest" />
|
||||||
<test name="test.functional.MWFNodePlaceHolderTest" />
|
<test name="test.functional.MWFNodePlaceHolderTest" />
|
||||||
<test name="test.functional.XMLValidateTest" />
|
<test name="test.functional.XMLValidateTest" />
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package test.functional;
|
||||||
|
|
||||||
|
import org.compiere.model.MSession;
|
||||||
|
import org.compiere.util.Env;
|
||||||
|
|
||||||
|
import test.AdempiereTestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test MSession class
|
||||||
|
* @author Teo Sarca, SC ARHIPAC SERVICE SRL
|
||||||
|
*/
|
||||||
|
public class MSessionTest extends AdempiereTestCase {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test - BF [ 1810182 ] Session lost after cache reset
|
||||||
|
*/
|
||||||
|
public void testBF1810182 () {
|
||||||
|
assertNotNull("Session not found, should not fail here", MSession.get(getCtx(), true));
|
||||||
|
Env.reset(false);
|
||||||
|
assertNotNull("Session not found after cache reset", MSession.get(getCtx(), false));
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue