bonjour,
j'essaye d'utiliser le package XMLDOM en plsql
mais j'ai un petit soucis pour avoir le bon résultat
en fait je dois avoir ceci comme résultat
et j'arrive à obtenir ceci ....mais pas le fin !!!<?xml version="1.0"?>
<MARKERS>
<marker lat="123" lng="123">
<message>mon message</message>
<zone type="multipoint" lineColor="#0033FF" lineWidth="1"
lineOpacity="1" fillColor="#0000FF" fillOpacity="0.1">
<p lat="1345" lng="1234"></p>
<p lat="1345" lng="1234"></p>
<p lat="1345" lng="1234"></p>
</zone>
</marker>
</MARKERS>
il me manque donc ceci<?xml version="1.0"?>
<MARKERS>
<marker lat="123" lng="123">
<message>mon message</message>
<zone type="multipoint" lineColor="#0033FF" lineWidth="1"
lineOpacity="1" fillColor="#0000FF" fillOpacity="0.1"/>
</marker>
</MARKERS>
voici mon code :<p lat="1345" lng="1234"></p>
<p lat="1345" lng="1234"></p>
<p lat="1345" lng="1234"></p>
En fait, j'ai remarqué,
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 doc xmldom.DOMDocument; main_node xmldom.DOMNode; root_node xmldom.DOMNode; user_node xmldom.DOMNode; point_node xmldom.DOMNode; item_node xmldom.DOMNode; root_elmt xmldom.DOMElement; item_elmt xmldom.DOMElement; item_text xmldom.DOMText; begin doc := xmldom.newDOMDocument; DBMS_XMLDOM.setVersion(doc, '1.0'); DBMS_XMLDOM.setStandalone(doc, '''yes'''); main_node := xmldom.makeNode(doc); root_elmt := xmldom.createElement(doc,'MARKERS'); root_node := xmldom.appendChild(main_node,xmldom.makeNode(root_elmt)); item_elmt := xmldom.createElement(doc,'marker'); xmldom.setAttribute(item_elmt,'lat','123'); xmldom.setAttribute(item_elmt,'lng','123'); user_node := xmldom.appendChild(root_node,xmldom.makeNode(item_elmt)); item_elmt := xmldom.createElement(doc,'message'); item_node := xmldom.appendChild(user_node,xmldom.makeNode(item_elmt)); item_text := xmldom.createTextNode(doc,'mon message'); item_node := xmldom.appendChild(item_node,xmldom.makeNode(item_text)); item_elmt := xmldom.createElement(doc,'zone'); xmldom.setAttribute(item_elmt,'type','multipoint'); xmldom.setAttribute(item_elmt,'lineColor','#0033FF'); xmldom.setAttribute(item_elmt,'lineWidth','1'); xmldom.setAttribute(item_elmt,'lineOpacity','1'); xmldom.setAttribute(item_elmt,'fillColor','#0000FF'); xmldom.setAttribute(item_elmt,'fillOpacity','0.1'); item_node := xmldom.appendChild(user_node,xmldom.makeNode(item_elmt)); DBMS_XMLDOM.writeToBuffer(doc, v_cresult); dbms_output.PUT_LINE(substr(v_cResult,1,4000)); xmldom.freeDocument(doc); end;
de 1 :
que je n'ai pas le tag de fin de 'zone' = à </zone>
de 2 :
que si j'ajoutais un élément supplémentaire quel qu'il soit après mon
tag "zone", genre ceci :
j'avais tj l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 item_elmt := xmldom.createElement(doc,'a'); item_node := xmldom.appendChild(user_node,xmldom.makeNode(item_elmt)); item_text := xmldom.createTextNode(doc,'b'); item_node := xmldom.appendChild(item_node,xmldom.makeNode(item_text));
Merci pour votre aideERROR:
ORA-06502: PL/SQL: numeric or value error: host bind array too small
ORA-06512: at line 1
Partager