Bonjour à tous,
Je m'en remets à vous tous, la communauté de Developpez, car je n'arrive pas à faire fonctionner correctement la serialization.
A savoir, j'utilise Symfony 3.1 et le Bundle JMSSerializerBundle.
Voici un exemple simplifié de ce que je peux avoir :
Entité Personne.php:
Serializer de l'entité Personne.php:
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 namespace AppBundle\Entity; use Symfony\Component\Validator\Constraints as Assert; use Doctrine\ORM\Mapping as ORM; /** * Personne * * @ORM\Table(name="personne") * @ORM\Entity(repositoryClass="AppBundle\Repository\PersonneRepository") */ class Personne { /** * @var int * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @var string * @ORM\Column(name="nom", type="string") * @Assert\Type("string") * @Assert\NotBlank() * @Assert\Length( * max = 255, * ) */ private $nom; /** * @var string * @ORM\Column(name="prenom", type="string") * @Assert\Type("string") * @Assert\NotBlank() * @Assert\Length( * max = 255, * ) */ private $prenom; /** * @var int * @ORM\Column(name="prenom", type="integer") * @Assert\Type("integer") * @Assert\NotBlank() */ private $age; /** * @var string * @ORM\Column(name="date_naissance", type="string") * @Assert\Type("string") * @Assert\NotBlank() */ private $date_naissance; etc avec les getters et setters qui vont bien...
Mon soucis est lorsque je serialize tout ceci, cela me donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14AppBundle\Entity\Personne: xml_root_name: Personnes exclusion_policy: ALL properties: nom: serialized_name: nom xml_attribute: true prenom: serialized_name: prenom age: serialized_name: age date_naissance: serialized_name: date_naissance
Or moi je souhaiterai obtenir le noeud age et à l'intérieur un noeud avec date_naissance comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9<?xml version="1.0" encoding="UTF-8"?> <result> <entry nom="DURANT"> <prenom><![CDATA[Pierre]]></prenom > <age><![CDATA[25]]></age> <date_naissance><![CDATA[29/07/1991]]></date_naissance> </entry> </result>
Je n'ai pas de collection ni de tableau et je ne vois pas comment faire un noeud avec des attributs à l'intérieur sans.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10<?xml version="1.0" encoding="UTF-8"?> <result> <entry nom="DURANT"> <prenom><![CDATA[Pierre]]></prenom > <age enChiffre="<![CDATA[25]]>"> <date_naissance><![CDATA[29/07/1991]]></date_naissance> </age> </entry> </result>
Pouvez vous m'aider?
Merci beaucoup je suis disponible si besoin de plus d'informations.
Partager