 |
www.vincenzomanzoni.com Homepage personale e blog di Vincenzo Manzoni
|
Precedente :: Successivo |
Autore |
Messaggio |
acadam Utente neonato


Registrato: 11/03/05 17:55 Messaggi: 42
|
Inviato: Mar Lug 12, 2005 2:08 pm Oggetto: applicazioni internet: lavorare con xml |
|
|
Sto provando a fare qualcosa con XML per prepararmi all'esame di venerd�. Il problema che ho � che non riesco a fare proprio niente. Mi spiego: creo un file xML nella mia cartella sotto webapps con il seguente contenuto
<?xml version="1.0"?>
<a>
<b>
<c>
testo 1
</c>
</b>
<d>
<e>
testo 12
</e>
</d>
</a>
Il file jsp fa il parsing � il seguente:
<%@ taglib prefix="c" uri="/WEB-INF/c.tld" %>
<%@ taglib prefix="x" uri="/WEB-INF/x.tld" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jstl/xml" %>
<html>
<head><title>prova</title></head>
<body bgcolor="white">
<H1>Pagina di prova</H1>
<c:import url="documento.xml" varReader="xmlSource">
<x:parse var="doc" xml="${xmlSource}"/>
</c:import>
<x:set var="elementod" select="$doc//d"/>
<x:out select="$elementod/e"/>
</body>
</html>
(il codice era sulle slide di Salvaneschi)
Il risultato finale � un'exception in
javax.servlet.ServletException: org/apache/xpath/VariableStack
Ho provato a mettere le mani ovunque ma non sono riuscito a fare girare un esempio in XML che fosse uno. Tutto il resto che ho fatto con le JSTL (in pratica la taglibrary c) funziona correttamente.
Qualcuno mi sa dare una mano? Grazie 1000 _________________ "e, in mezzo a tutto questo perdersi, c'� un uscio chiuso nell'anima
chiss� se ti ricordi la tua chiave dov'�?
e, in mezzo a tutto questo sciogliersi, fa pi� il destino o la volont�?
E se la risposta � amore, la domanda qual �? qual �?" |
|
Top |
|
 |
Mau Utente maturo

Registrato: 13/01/05 14:07 Messaggi: 933
|
Inviato: Mar Lug 12, 2005 3:32 pm Oggetto: |
|
|
Ciao, ho provato a fa girare il codice che hai riportato e a me funziona senza problemi.
Non saprei perch� Tomcat ti restituisce quell'errore, ma ti faccio notare che anche io in passato ho avuto grossi problemi con le tag library.
Problemi che ho risolto scaricando e installando le versioni di tomcat e delle jstl suggerite dal docente (quelle indicate nelle slide) in alternativa a quelle pi� recenti che avevo installato in precedenza quando si sono verificati i problemi.
Se il problema non fosse legato alle differenti versioni, magari, non so, controlla che il file xml sia nella cartella ROOT, le corrispondenze, maiuscole e minuscole,.... altrimenti non saprei! |
|
Top |
|
 |
vinz Amministratore


Registrato: 12/12/03 12:56 Messaggi: 6648 Residenza: San Pellegrino Terme (Bergamo)
|
Inviato: Mar Lug 12, 2005 4:18 pm Oggetto: |
|
|
Il tuo � sicuramente un problema di librerie nella cartella WEB-INF/lib.
Io all'interno ho questo e mi va senza problemi.
Codice: | jaxen-full.jar
jdbc2_0-stdext.jar
jstl.jar
saxpath.jar
standard.jar
xalan.jar
xercesImpl.jar
xml-apis.jar |
_________________ Let the future tell the truth and evaluate each one according to his work and accomplishments. The present is theirs; the future, for which I really worked, is mine.
Nikola Tesla |
|
Top |
|
 |
acadam Utente neonato


Registrato: 11/03/05 17:55 Messaggi: 42
|
Inviato: Mar Lug 12, 2005 5:03 pm Oggetto: |
|
|
Aaaargh!! In effetti mi mancava proprio il file xml-apis.jar. Strano per�.
In effetti, avevo installato tomcat 5.5.9 con le taglibs 1.1 (non come indicato da Salvanaschi... uff, ecco a cosa porta la mania di avere sempre le cose aggiornate!!!). Ora ho installato tomcat 4.1 con le taglibs 1.0.5. Comunque il file jar xml-apis.jar non era presente e me lo sono cercato. Non so come mai tutto questo giro. Grazie cmq x l'aiuto! Siete eccezionali.
ciao _________________ "e, in mezzo a tutto questo perdersi, c'� un uscio chiuso nell'anima
chiss� se ti ricordi la tua chiave dov'�?
e, in mezzo a tutto questo sciogliersi, fa pi� il destino o la volont�?
E se la risposta � amore, la domanda qual �? qual �?" |
|
Top |
|
 |
vinz Amministratore


Registrato: 12/12/03 12:56 Messaggi: 6648 Residenza: San Pellegrino Terme (Bergamo)
|
Inviato: Mar Lug 12, 2005 5:18 pm Oggetto: |
|
|
Secondo me non � buona cosa lavorare con strumenti datati solo perch� per quelli si ha una guida pronta.
E' sbagliato per due motivi, IMHO:
- si lavora con strumenti e tecnologie diventate magari obsolete;
- non si sviluppa la capacit� di "arrangiarsi" nel risolvere i problemi, fondamentale nella vita di un ingegnere. _________________ Let the future tell the truth and evaluate each one according to his work and accomplishments. The present is theirs; the future, for which I really worked, is mine.
Nikola Tesla |
|
Top |
|
 |
acadam Utente neonato


Registrato: 11/03/05 17:55 Messaggi: 42
|
Inviato: Lun Lug 18, 2005 12:14 pm Oggetto: |
|
|
vinz ha scritto: | Secondo me non � buona cosa lavorare con strumenti datati solo perch� per quelli si ha una guida pronta.
E' sbagliato per due motivi, IMHO:
- si lavora con strumenti e tecnologie diventate magari obsolete;
- non si sviluppa la capacit� di "arrangiarsi" nel risolvere i problemi, fondamentale nella vita di un ingegnere. |
In linea di principio sono d'accordo con te, infatti � la ragione per cui io mi sono installato le versioni aggiornate. C'� da tenere per� presente che la realt� � leggermente differente: lavorare con strumenti aggiornati ha un costo, anzitutto in termini di tempo (imparare le funzionalit� non presenti (o presenti in maniera differenti) nelle versioni precedenti) ma anche di compatibilit� (applicazioni vecchie non � detto che funzionino (cos� come sono) con strumenti aggiornati... adattamenti sono sempre necessari).
Concludendo, IMHO la via giusta sta nel mezzo... un'eccessiva rincorsa agli aggiornamenti non � sempre necessaria, il tempo a disposizione � una variabile che influenza (e comanda) la realt�... a volte sono meglio soluzioni pronte all'uso piuttosto che un'eccessivo sbattimento... probabilmente avrei trovato la soluzione ma con quale vantaggio visto che avrei perso tempo e non imparato altre cose???
ciao _________________ "e, in mezzo a tutto questo perdersi, c'� un uscio chiuso nell'anima
chiss� se ti ricordi la tua chiave dov'�?
e, in mezzo a tutto questo sciogliersi, fa pi� il destino o la volont�?
E se la risposta � amore, la domanda qual �? qual �?" |
|
Top |
|
 |
Mau Utente maturo

Registrato: 13/01/05 14:07 Messaggi: 933
|
Inviato: Lun Lug 18, 2005 3:17 pm Oggetto: |
|
|
mmm Vinz.. non sono sicuro al 100% che quello che dici sia completamente esatto..
Capisco che un giorno, neanche tanto lontano, saremo ingegneri e dovremo stare costantenemente aggiornarti, ma non credo che l'utilizzo della tecnologia pi� sofisticata porti sempre alla soluzione migliore.
Credo piuttosto che dovremo saper cogliere gli strumenti pi� adeguati per risolvere ogni tipo di problema.
In applicazioni internet b, pi� precisamente nella parte su JSP, lo scopo � quello di apprendere i comandi base e approfondire l'uso di Bean e dei moltecipli aspetti delle JSTL.
La soluzione migliore per la sua semplicit� ed efficienza � quella di istallare dei componenti che io definirei meno recenti piuttosto che "datati" o obsoleti..
Anche io, colto dalla curiosit�, ho provato le taglibs con un webserver pi� recente e il risultato � stata solo una perdita di tempo a causa di un problema simile a quello di acadam.
Problema che ho prontamente risolto seguendo "con pi� modestia" le indicazioni del prof. Salvaneschi.
Un altro aspetto da considerare, ma taglio che � un po' Ot, � che un domani dovremo adeguarci a delle richieste che ci verranno fatte da clienti o superiori e nulla vieta che per qualche motivo ci venga chiesto di sviluppare applicazioni con software meno recenti o con tecnologie ormai superate.. |
|
Top |
|
 |
vinz Amministratore


Registrato: 12/12/03 12:56 Messaggi: 6648 Residenza: San Pellegrino Terme (Bergamo)
|
Inviato: Lun Lug 18, 2005 6:31 pm Oggetto: |
|
|
Caro acadam, caro Mau, sono contento che mi abbiate risposto, la discussione pu� diventare costruttiva.
Comincio con il rispondere a questo:
acadam ha scritto: | probabilmente avrei trovato la soluzione ma con quale vantaggio visto che avrei perso tempo e non imparato altre cose??? |
Mau ha scritto: | Anche io, colto dalla curiosit�, ho provato le taglibs con un webserver pi� recente e il risultato � stata solo una perdita di tempo a causa di un problema simile a quello di acadam.
Problema che ho prontamente risolto seguendo "con pi� modestia" le indicazioni del prof. Salvaneschi. |
Come non ero d'accordo un paio di post fa, non lo sono ancora.
Cosa � che distingue un ingegnere laureato da un po' di anni e un "novizio"?
Sicuramente l'esperienza, che nel nostro "lavoro" � sicuramente un valore aggiunto... e allora perch� non cogliere ogni occasione per farsela?
Internet � ricco di posti in cui � possibile reperire informazioni se proprio non si riesce a risolvere un problema, a partire da questo forum.
Mi sembra che ogni volta che � stato esposto un problema, si � sempre cercato di consigliare la persona, e ogni volta ha portato ad un arricchimento dell'esperienza, sia di chi ha chiesto aiuto, sia di chi l'ha dato.
acadam ha scritto: | lavorare con strumenti aggiornati ha un costo [cut, ma che non cambia il senso]in termini di compatibilit� (applicazioni vecchie non � detto che funzionino (cos� come sono) con strumenti aggiornati... adattamenti sono sempre necessari). |
Anche su questo non mi trovi d'accordo, e ti posso citare diversi casi di prodotti che durante la loro evoluzione, hanno sempre garantito la retrocompatibilit� con le versioni precedenti.
L'unico caso che mi viene in mente al momento, in cui si � dovuto mettere mano al codice, � PHP, che dalla versione 4.2 per ragioni di sicurezza ha eliminato la creazione automatica delle variabili globali a partire dai parametri passati da form.
Sono d'accordo con voi quando dite che una continua rincorsa agli aggiornamenti non � una bella idea (se una cosa va, e fa bene il suo lavoro, perch� metterci le mani?) ma se uno deve imparare da zero una cosa nuova, perch� non farlo con le versioni aggiornate?
Spero che la discussione continui.  _________________ Let the future tell the truth and evaluate each one according to his work and accomplishments. The present is theirs; the future, for which I really worked, is mine.
Nikola Tesla |
|
Top |
|
 |
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|