joomla Jfactory没有在joomla web应用程序中实例化自己(joomla 2.5)

时间:2012-04-05 16:11:45

标签: php joomla virtuemart

我正在尝试构建一个外部webApp来上传Joomla中的一些产品!与virtmart。
所有工作都按预期工作,但我仍然遇到Jfactory::getApplication的问题。

我已经按照本教程进行了操作:

http://docs.joomla.org/How_to_create_a_stand-alone_application_using_the_Joomla!_Platform

但是当我在VmModel方法上调用__construct时,它会调用parent::__construct($config)

$this->_cidName = $cidName;
// Get the pagination request variables
$mainframe = JFactory::getApplication() ;
$limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', $mainframe->getCfg('list_limit'), 'int');

这会引发以下错误:

  

vCall to undefined method JException :: getUserStateFromRequest()

如果有帮助,还有:

  

vNotice:尝试在第201行的/home/giuseppe/homeProj/ModaNuovo/libraries/joomla/application/application.php中获取非对象的属性

提出:

public static function getInstance($client, $config = array(), $prefix = 'J')
{
    if (empty(self::$instances[$client]))
    {
        // Load the router object.
        $info = JApplicationHelper::getClientInfo($client, true);

        $path = $info->path . '/includes/application.php';
        if (file_exists($path))

1 个答案:

答案 0 :(得分:0)

解决方案是将主应用程序与您的应用程序一起实例化,如果需要,还可以通过以下方式登录:

$app = JFactory::getApplication('administrator');

// create a form token
$user = JFactory::getUser(42);
$session = JFactory::getSession();
$hash = JApplication::getHash($user->get('id', 0) . $session->getToken(true));

如果需要,您还必须执行登录以验证此哈希值。