این درسته که جوملا session ها ریست میکنه ولی مکانیزمی داره که شما نیازی به value نشست نخواهید داشت
با استفاده از
کد:
if ($user->guest)
میتونید مشخص کنید که کاربر login کرده یا خیر.
(اگر نیاز به value داشته باشید به این صورت
کد:
$session =& JFactory::getSession();
$session->set('name', "value");
میتونید به اون دسترسی داشته باشید)

اما راه حل مشکل شما :
کد:
$user =& JFactory::getUser();
if (!$user->guest) {
        // YOU'r Bussiness logic
 }else{
    header("Location: YOUR LOGIN PAGE.php");
 }