Bonsoir mes amis,

je travaille actuellement sur un projet (j'utilise la version 2.7 Sous Ubuntu 14.02) qui permet de gérer les statistiques ainsi que la génération des rapports. D’après la recherche que j'ai fais sur google, je trouve le bundle "KnpSnappyBundle" pour la réalisation d'un fichier PDF. Donc j'ai essayé de suivre ce tutoriel.
Voilà mon configuration:
1- installation avec les commandes suivantes:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
composer require knplabs/knp-snappy-bundle  
composer require h4cc/wkhtmltopdf-amd64
2- L'activation de la bibliothèque dans AppKernel.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
 new Knp\Bundle\SnappyBundle\KnpSnappyBundle(),
3-config du KnpSnappy:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
#config knp_snappy:
knp_snappy:
        pdf:
            enabled:    true
            binary:     "%kernel.root_dir%/../vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64"
4- l'action dans le contrôleur;

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
class DefaultController extends Controller
{
 
 
    /**
     * Export to PDF all chapitres
     *
     */
    public function pdfTousAction()
    {
        $html = $this->renderView('ChapitresBundle:Default:pdfTous.html.twig');
 
        $filename = sprintf('test-demo.pdf', date('Y-m-d'));
 
        return new Response(
            $this->get('knp_snappy.pdf')->getOutputFromHtml($html),
            200,
            [
                'Content-Type'        => 'application/pdf',
                'Content-Disposition' => sprintf('attachment; filename="demo"', $filename),
            ]
        );
    }
}
4- Ma view :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>info</title>
 
    <!-- Base Css Files -->
    <link href="{{ asset('template/css/bootstrap.min.css') }}" rel="stylesheet" >
    <!-- Custom Files -->
    <link href="{{ asset('template/css/helper.css') }}" rel="stylesheet" type="text/css" >
    <link href="{{ asset('template/css/style.css') }}" rel="stylesheet" type="text/css" >
 
</head>
<body>
<header class="print-header">
    <div class="clearfix"></div>
</header>
 
<div>
 
        <div class="box mybadge etiquette printed-badge">
 
            <div class="js-barcode">
                <ul class="list-unstyled">
                    <li><strong> chapitre1</strong></li>
                    <li><strong> date: 21-12-25</strong></li>
                </ul>
            </div>
 
            <div class="clearfix"></div>
        </div>
 
    <div class="clearfix"></div>
</div>
 
</body>
</html>
5- route de cette action;

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
chapitres_pdfAll:
   path:     /pdfAll
   defaults: { _controller: "ChapitresBundle:Default:pdfTous" }
6- j'ai testé s'il est bien installé sur ma machine ou non:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
wkhtmltopdf -V
Name:
  wkhtmltopdf 0.9.9
License:
  Copyright (C) 2008,2009 Wkhtmltopdf Authors.
=>le message d'erreur lorsque exécute ce code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
In vendor/knplabs/knp-snappy/src/Knp/Snappy/AbstractGenerator.php at line 336   -
    protected function checkProcessStatus($status, $stdout, $stderr, $command)
    {
        if (0 !== $status and '' !== $stderr) {
            throw new \RuntimeException(sprintf(
                'The exit status code \'%s\' says something went wrong:'."\n"
                .'stderr: "%s"'."\n"
                .'stdout: "%s"'."\n"
 
// message d'erreur
The exit status code '1' says something went wrong:
stderr: "Loading pages (1/6)
[> ] 0%
[===> ] 10%
[===> ] 11%
Warning: Failed to load file:///template/css/helper.css (ignore) 
Warning: Failed to load file:///template/css/style.css (ignore)
[===] 100%
Counting pages (2/6) 
[==] Object 1 of 1
Resolving links (4/6) 
[====] Object 1 of 1
Loading headers and footers (5/6) 
Printing pages (6/6)
[> ] Preparing
[=====] Page 1 of 1
Done 
Exit with code 1 due to network error: ContentNotFoundError
"
stdout: ""
command: /home/syrine01/Desktop/SecurityInfo/app/../vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64 --lowquality '/tmp/knp_snappy579c17164c2002.54204422.html' '/tmp/knp_snappy579c17164c3295.39775580.pdf
J'ai pas arrivé a résoudre ce probléme.
Merci de m'orienter vers la solution (correction de l'URL).