Newsgroup: it.comp.www.asp
Titolo: Sempre XML

Salute,
l'anno scorso :) avevo postato un messaggio su problemi di caricamento di
XML e gestione all'interno di una pagina asp. Ho ricevuto solo un
suggerimento da Alessio Garbi, che ringrazio ancora. Ho verificato e non mi
caricava il file se non con l'url completo del file... non bastava solo il
nome... e non capisco perchè, visto che negli esempi che ho visto in nessuno
compariva l'url...
Ad ogni modo il problema è un altro: una volta caricato il file XML, non
riesco a gestirlo tramite l'oggetto MSXML.DOMDocument (nel precedente
messaggio avevo erroneamente inserito Microsoft.XLMDOM .. che forse è la
stessa cosa???). Riposto tutto il codice comprensivo del file XML... se
qualcuno non è impegnato dopo le feste e riuscirre a darmi una dritta, sarei
molto grato.
Codice VBScript:
Dim objXML, Dizionario, SchemaNode, LanguageNodes, LanguageNode, Locale
Dim EntryNodes, EntryNode, EntryName, LanguageName, EntryValue
Set objXML = Server.CreateObject("MSXML.DOMDocument")
'Application("URL") è la mia variabile contenente l'url completo dove si
trova il file
'Come ho scritto sopra non funziona senza URL.
objXML.load(Application("URL") & "dict.xml")
Set SchemaNode = objXML.getElementsByTagName("Dizionario").Item(0)
Set LanguageNodes = SchemaNode.selectNodes("Language")
For Each LanguageNode In LanguageNodes
    LanguageName = LanguageNode.Attributes.getNamedItem("Name").Text
    Locale = LanguageNode.Attributes.getNamedItem("Locale").Text
Next
Set EntryNodes = SchemaNode.selectNodes("Entry")
For Each EntryNode In EntryNodes
    EntryName = EntryNode.Attributes.getNamedItem("Name").Text
    Set ValueNodes = EntryNode.selectNodes("Value")
    For Each ValueNode In ValueNodes
        LanguageName = ValueNode.Attributes.getNamedItem("Language").Text
        EntryValue = ValueNode.Text
        Response.Write(EntryName & " - " & EntryValue & " - " & LanguageName
& "<BR>")
    Next
Next
Il file dict.xml:
<?xml version="1.0"?>
<Dizionario DefaultLanguage="Italian">
 <Language Name="English" Locale="1033"/>
 <Entry Name="chi_siamo" Type="Display Info">
  <Value Language="English">This is a new on line shop for solding
everything you want.</Value>
 </Entry>
 <Entry Name="news" Type="Display Info">
  <Value Language="English">This news is a sample news to know if all
works.</Value>
 </Entry>
 <Language Name="Italian" Locale="1040"/>
 <Entry Name="chi_siamo" Type="Display Info">
  <Value Language="Italian">Questo è un innovativo negozio on line che vende
qualsiasi cosa.</Value>
 </Entry>
 <Entry Name="news" Type="Display Info">
  <Value Language="Italian">Questa è la news di prova per vedere se tutto
funziona bene.</Value>
 </Entry>
</Dizionario>
L'errore che mi da è:
error '8000000a'
The data necessary to complete this operation is not yet available.
Grazie, se qualcuno mi prenderà in considerazione e a tutti Buon Anno Nuovo.
--
Francesco Rotondo
Tel&CO s.r.l. - Via Virgilio, 55
41100 Modena - ITALY
Tel. 
++39 059 847203
Fax. 
++ 39 059 848630
E-mail 
f.ro...@tel-co.it

Scusate... devo aver mangiato pensante in questi giorni e non mi sono
accorto che era presente una è nel testo inserito che bloccava il tutto.
Grazie per la pazienza.



Innanzitutto se vuoi tenere le tue accentate nell'XML devi usare l'encoding
ISO-8859-1.
Se hai problemi nella load visualizza il parseerror.reason.
Per aprire il file XML utilizza la server.mappath:
objXML.load(server.mappath("dict.xml")).
Il tuo XML, comunque, anche se well-formed non ha una struttura corretta.
Avrebbe piů senso (se ho capito bene le tue intenzioni):
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dizionario DefaultLanguage="Italian">
  <Language Name="English" Locale="1033">
      <Entry Name="chi_siamo" Type="Display Info">
          <Value Language="English">This is a new on line shop for solding
everything you want.</Value>
     </Entry>
     <Entry Name="news" Type="Display Info">
          <Value Language="English">This news is a sample news to know if
all works.</Value>
     </Entry>
  </Language>
  <Language Name="Italian" Locale="1040">
    <Entry Name="chi_siamo" Type="Display Info">
      <Value Language="Italian">Questo č un innovativo negozio on line che
vende qualsiasi cosa.</Value>
    </Entry>
    <Entry Name="news" Type="Display Info">
      <Value Language="Italian">Questa č la news di prova per vedere se
tutto funziona bene.</Value>
    </Entry>
  </Language>
</Dizionario>
Per il resto, beh ti lascio un po' di divertimento :-)
P.


Grazie per la dritta sull'iso :-)
Adesso ho risolto tutto. Non posso usare il server.mappath perchè il file si
trova da un'altra parte rispetto al file xml per questo avevo utilizzato una
variabile di applicazione per i percorsi... :-)
Grazie per i consigli
Ciao


The data necessary to complete this operation is not yet available
------------------------------------------------------------------------
www.e-project.it
 
aga...@e-project.it

 stato completamente caricato in memoria.
Grazie Alessio... nel listato che ho mandato avevo eliminato quella riga
perchč mi bloccava ancora prima il caricamento del file... proprio per il
problema delle accentate... Adesso che ho risolto il problema lo avevo
inserito infatti...
Fa piacere essere seguiti :-) Grazie per la dritta comunque.
