Hello Ahmad,
Does your load balancer have sticky sessions enabled? That is one of the requirements for High Availability Architecture that use load balancers.
We have sticky sessions within our environment as well. We found that we also had to use the Idle timer widget and configure a microflow that calls a LogoutUser java action in order for it to work properly.
IDLE TIMER
LOGOUT MICROFLOW
Java Action
public class LogoutUser extends CustomJavaAction<Boolean>
{
private Boolean logout;
public LogoutUser(IContext context, Boolean logout)
{
super(context);
this.logout = logout;
}
@Override
public Boolean executeAction() throws Exception
{
// BEGIN USER CODE
if (this.logout)
com.mendix.core.Core.logout(getContext().getSession());
return true;
// END USER CODE
}
/**
* Returns a string representation of this action
*/
@Override
public String toString()
{
return "LogoutUser";
}
// BEGIN EXTRA CODE
// END EXTRA CODE
}