Autore Topic: Errore con i tag XmlWriter in gb.xml  (Letto 10844 volte)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.724
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #15 il: 16 Giugno 2012, 01:09:53 »
Oramai sono una pallina di ping-pong  :rolleyes: (è dura la vita dell'Ambasciatore !) e ti riporto un altro messaggio del nostro amico lì nella lista internazionale. Lui dice di aver letto questa discussione e di aver risposto. Ma qui non vedo niente.... forse attraverso un altro tipo di canale collegato ?  :-\

" I have read the discussion on gambas-it, I reply directly here, so that it
will avoid you a trip.

(And sorry for the bad translation, I don't speak Italian, thanks Google...)

For the management of small documents ... but what does that mean? Or are
> they great, or treat them?


For the parser, small documents are files < 10 MB. Beyond this, the DOM
parser might eat a lot of memory, but the Reader will parse larger files
fwithout problem (1 GB if you want).

Just to put it simply, even after an open (file), or a OpenStream (), it
> seems that they read, and yet make no parsing of the xml content, returning
> 0 in all properties. This obviously makes it a little difficult to decode
> the data ... do not you think?


When you call Open(), the file is just opened like an Gambas Open, but
nothing is loaded/parsed until you call Read(). That's why all is Null.

It 'true that, as a response to, these classes are still incomplete, and
> therefore still not stable, so better not use them.


If you found a problem, please report it, with the code and the file that
is loaded, otherwise it won't ever be stable.

I downloaded the latest version of the source of Gambas3 (4833), but the
> anomalies persist.
>
> The following is the code I'm using, and that is a purified extract of the
> original one used in pgDesigner3, for reading the configuration file, which
> worked before and now I go more.

There are some print to understand what they contain variables, but they
> are all empty.



I tried your code with the lastest revision, and with the provided file,
and here is the output :

  • ,[],[0],[],[0]

0
Read = 1
[1],[pgDesigner3  ],[1],[],[3]
1
Element::pgDesigner3
Type    Config
Version 3.0.0
Date    06/09/2012 11:56:06.713
Read = 1
[2],[APPLICATION],[1],[],[0]
2
Element::APPLICATION
Read = 1
[3],[Debug],[1],[],[0]
3
Element::Debug
Read = 2
[3],[#text],[2],[ALL],[0]
3
Text::ALL

[and so on...]

For me, it works, doesn't it ?

Regards,
Adrien.
"
« Ultima modifica: 16 Giugno 2012, 01:29:36 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #16 il: 16 Giugno 2012, 08:06:36 »
Scusate l'intromissione, ma forse sarebbe meglio che, come proposto da Adrien, la discussione sia spostata qui nel forum; e prosegua direttamente tra md e Adrien, in modo da evitare problemi di traduzione e di spazi temporali  :)

@md9327
so che il tempo ti è nemico, ma nella traduzione da una lingua ad un'altra si possono perdere alcuni concetti, soprattutto se chi traduce è persona differente da chi affronta il problema.

L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #17 il: 16 Giugno 2012, 12:58:17 »
Si, lo sò. Avevo attivato vuott, in quanto è sempre meglio avere un solo interlocutore, un rappresentante (siamo in democrazia, no?)  ;D

Scherzi a parte, dalla risposta sembra che all'amico và tutto bene, come del resto dimostrano i risultati che ha postato.
A questo punto non capisco perchè a me non funziona...
Ho compreso che Read avvia il parsing, e in effetti così faceva prima...

Ad ogni modo, come indicato da sotema, se è un problema il passaggio posso scavalcarti vuott, e passare direttamente alla comunicazione con Adrien, anche se comunque devo necessariamente utilizzare il traduttore di google...  ;D

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #18 il: 16 Giugno 2012, 13:01:11 »
Mi stà venendo un dubbio... non è che il problema è legato a librerie esterne, come ad esempio libxml?

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #19 il: 16 Giugno 2012, 13:38:23 »
Il dubbio è + che giustificato.
libxml è la vecchia gb.xml rinominata. Infatti, come ti segnalai tempo addietro, con libxml pgdesigner funziona perfettamente.
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline Prokopy

  • Gamberetto
  • *
  • Post: 19
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #20 il: 16 Giugno 2012, 14:38:45 »
Hi all.
It's me, Adrien. It's faster to reply directly here.

Citazione
Scherzi a parte, dalla risposta sembra che all'amico và tutto bene, come del resto dimostrano i risultati che ha postato. A questo punto non capisco perchè a me non funziona...

Have you got the lastest revision ? I have the #4837.
Or maybe there are errors during the compilation. Can you send here the output ?

Citazione
Ad ogni modo, come indicato da sotema, se è un problema il passaggio posso scavalcarti vuott, e passare direttamente alla comunicazione con Adrien, anche se comunque devo necessariamente utilizzare il traduttore di google... ;D

I use it too. That's very helpful.  :)
Moreover, often Italian sounds like French, so it helps me understanding.
Does anyone speak French here ? No ? Never mind... ;D

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #21 il: 16 Giugno 2012, 14:52:33 »
Welcome Adrien,
I am here just to avoid a basic misunderstanding.
When md9327 starts writing pgDesigner3 the component available in Gambas to treat xml file was gb.xml. It was based on libxml library.
When you introduced the new component for xml management the old one was renamed into gb.libxml and the new one named gb.xml
The code in pgDesigner3 works perfectly with gb.libxml, but fails with gb.xml
Obviously something changed in the way xml documents and their structure is treated by gb.xml.
That has broken the project.
what I suspect is md9327 needs to switch the component into the project properties from gb.xml to gb.libxml. Otherwise he must implement a different methods and code.
« Ultima modifica: 16 Giugno 2012, 14:55:46 da sotema »
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline Prokopy

  • Gamberetto
  • *
  • Post: 19
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #22 il: 16 Giugno 2012, 15:09:15 »
Hi sotema,

yes, there were some changes in XmlReader, but normally, it should not be any difference in behavior between gb.libxml and gb.xml, so it is a bug.
Maybe with the full project, I can find where is the problem.

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #23 il: 16 Giugno 2012, 15:13:48 »
Well, if md9327 agrees i can extrapolate the involved code and post it.
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #24 il: 16 Giugno 2012, 16:12:19 »
Non ho ben capito cosa volete fare...

In effetti nell'elenco i componenti sono due: gb.xml e gb.libxml, che forniscono ciascuno le due classi XmlReader e XmlWriter.

Nel progetto pgDesigner è inclusa gb.xml, come anche nelle precedenti versioni, e fino ad alcune release precedenti di Gambas3 funzionava tutto regolarmente.

Attualmente stò verificando le differenze (svn di -r 4820:4833) tra la versione che mi risulta funzionava (4820) e l'ultima (4833), il cui risultato è in allegato a questo post.
Ho notato molte modifiche relative alla libreria, in particolare l'integrazione con i nuovi oggetti XmlDocument, XmlNode, ecc.

Dai test, e dalle differenze di risultato con le verifiche fatte da Adrien, sembra che la libreria gb.xml non faccia il suo dovere, e non emette alcun output. Ora proverò scambiando le librerie gb.xml -> gb.libxml, per vedere se funziona, e vi farò sapere...

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #25 il: 16 Giugno 2012, 16:16:55 »
Ciao md....

quello che sto tentando di dirti da parecchio tempo ( :evil:) è proprio questo. Se nelle proprietà del progetto, scheda componenti, selezioni gb.libxml e deselezioni gb.xml il tutto funziona "come una lippa".

Secondo Adrien però non ci sono differenze tra i due componenti che possano dare luogo al problema; indi chiede di disporre dei sorgenti di pgdesigner per analizzare l'errore.
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #26 il: 16 Giugno 2012, 16:24:04 »
Rieccomi qui...  :D

Il problema è la libreria gb.xml !!!

Ho sostituito la libreria, e ora il codice di esempio và bene.
Ora devo provare il programma, ma confido che vada bene come prima, compresa la fase di lettura/scrittura con XmReader/XmlWriter.

La differenza tra le librerie è sostanziale, considerando che include altre classi specializzate per il trattamento dei dati xml. La libreria g.libxml ha fondamentalmente due classi principali (Reader e Writer) e un'altro paio di classi di supporto.
Probabilmente la libreria gb.xml è in fase di costruzione e, per alcune funzionalità mancano ancora i necessari agganci, come per XMlReader.
Faccio notare che anche XmlWriter funziona piuttosto male, aggiunge spazi indesiderati, interpreta male i tag, gli elementi e le properties.

Ad ogni modo, credo sia necessario far notare nella documentazione, le differenze tra le librerie, o eventualmente segnalarne lo stato. Attualmente sono tutte e due in uno stato "non finito ma stabile", ma non è la realtà, perlomeno per quanto riguarda lo scarico da repository.

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #27 il: 16 Giugno 2012, 16:26:35 »
Ciao md....

quello che sto tentando di dirti da parecchio tempo ( :evil:) è proprio questo. Se nelle proprietà del progetto, scheda componenti, selezioni gb.libxml e deselezioni gb.xml il tutto funziona "come una lippa".

Secondo Adrien però non ci sono differenze tra i due componenti che possano dare luogo al problema; indi chiede di disporre dei sorgenti di pgdesigner per analizzare l'errore.

I sorgenti sono di pubblico dominio, in quanto sotto licenza GPL, per cui può scaricarli come vuole.

Riguardo alle libreria, l'ho scritto nel precedente post.
Riguardo le differenze, queste ci sono, e pure tante, tant'è che non funzionano...  :D

E poi... non si cambiano le librerie, rinominandole... non è corretto...  :evil:

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #28 il: 16 Giugno 2012, 16:29:59 »
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Errore con i tag XmlWriter in gb.xml
« Risposta #29 il: 16 Giugno 2012, 16:32:20 »
E poi... non si cambiano le librerie, rinominandole... non è corretto...  :evil:
assolutamente d'accordo!
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein