Ошибки интеграции Joomla и DOMPDF - PullRequest
0 голосов
/ 03 января 2012

Я пытаюсь интегрировать DOMPDF в наш проект Joomla (версия 1.5.24) и продолжаю получать следующие ошибки:

    Strict standards: Non-static method JLoader::load() should not be called statically in C:\xampp\htdocs\proj\libraries\loader.php on line 162
    Strict standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\proj\libraries\loader.php on line 139
    Fatal error: Class 'DOMPDF' not found in C:\xampp\htdocs\proj\components\com_reports\views\details\view.pdf.php on line 23
    Strict standards: Non-static method JFactory::getDBO() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\oasis\libraries\joomla\session\storage\database.php on line 84
    Strict standards: Non-static method JTable::getInstance() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\oasis\libraries\joomla\session\storage\database.php on line 89
    Strict standards: Non-static method JFactory::getDBO() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\oasis\libraries\joomla\database\table.php on line 112

Функция, которая создает экземпляр объекта DOMPDF, находится в одном из представлений компонента:

class ReportsViewDetails extends JView{
  function display($tpl = null){
    global $mainframe;
    //echo "hello";
    $this->generatePDF();
   }

  function generatePDF(){
    require_once("./components/com_reports/helper/dompdf/dompdf_config.inc.php");

    $html =
      '<html><body>'.
      '<p>Put your html here, or generate it with your favourite '.
      'templating system.</p>'.
      '</body></html>';

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->render();
    $dompdf->stream("sample.pdf");
   }
}

Он видит файл, который требуется, но dompdf_config.inc.php выводит ошибки, описанные выше. Я не уверен, что является причиной этого, так как файл содержит только define строк и autoload функции. Содержание файла можно посмотреть здесь: http://code.google.com/p/dompdf/source/browse/trunk/dompdf/dompdf_config.inc.php.

Пожалуйста, помогите! Спасибо!

1 Ответ

1 голос
/ 04 января 2012

все эти строгие стандартные предупреждения, которые вы получаете, из-за этой строки

error_reporting (E_STRICT | E_ALL);

в dompdf_config.inc.php

и вы должны включить dompdf / include / dompdf.cls.php

...