Newsgroup: it.comp.java
Titolo: [URGE AIUTO] TAGLIB e WebSphere 5.1

Salve ragazzi,
Scusate l'urge aiuto, ma non ho idea di come uscire da questo
manicomio...
Ho sviluppato un'applicazione che usa una taglib che gira sotto tomcat
5.0.x, ma non sotto WebSphere 5.1.
La taglib contiene un tag molto semplice, che esegue un controllo e
stampa una variabile al posto di un'altra, a seconda dell'esigenza.
Il messaggio di errore WSAD (Eclipse, ma ancora piu' lento e mortale)
mi segnala e che effettivamente e' presente anche in websphere, e' di
validazione del tld descrittore della mia taglib. Solo che non li
riesco a scovare, perche' io lo valido correttamente con gli stessti
strumenti di wsad, con tomcat funziona e se lo rifaccio, mi risulta
tutto uguale, insomma non capisco che ca**o vuole!
Qui c'e' il file tld
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library
1.1//EN"
  "
http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
">
<taglib>
  <tlibversion>1.0</tlibversion>
  <jspversion>1.1</jspversion>
  <info>Libreria di tag.</info>
  <shortname>mt</shortname>
  <uri>mytaglib</uri>
  <tag>
    <name>prova</name>
    <tagclass>it.frontend.tags.Prova</tagclass>
    <bodycontent>empty</bodycontent>
    <info>Stampa "Ciao"</info>
  </tag>
</taglib>
Qui la classe :
package it.frontend.tags;
import java.io.IOException;
import java.util.HashMap;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
public class Prova extends TagSupport{
  public int doEndTag() throws JspException {
    try {
      pageContext.getOut().write("Ciao!!!!");
    } catch (IOException e) {}
    return EVAL_PAGE;
  }
}
Qui la configurazione in Web.xml:
<taglib>
  <taglib-uri>/WEB-INF/conf/tld/prova/mtl.tld</taglib-uri>
  <taglib-location>/WEB-INF/conf/tld/prova/mtl.tld</taglib-location>
</taglib>
ed infine la JSP:
<%@ taglib prefix="mt" uri="/WEB-INF/conf/tld/prova/mtl.tld" %>
<mt:prova />
Il messaggio di errore e' il seguente:
Error 500: /pages/p.jsp(1,0): Errore di analisi XML sul file
/WEB-INF/conf/tld/prova/mtl.tld: (riga 42, colonna 10): Il contenuto
del tipo elemento "taglib" deve corrispondere a
"(tlibversion,jspversion?,shortname,uri?,info?,tag+)
Ogni suggerimento, anche piccolo e' manna dal cielo.
Grazie mille,
Davide

Salve a tutti,
Ho postato oltre un'ora fa, ma non trovo il messaggio...
Riposto:
Ho un problema con un DTD di una taglib che ho prodotto, WebSphere mi
dice, quando richiamo la pagina:
Error 500: /pages/p.jsp(1,0): Errore di analisi XML sul file (riga 47,
colonna 10): Il contenuto del tipo elemento "taglib" deve corrispondere
a "(tlibversion,jspversion?,shortname,uri?,info?,tag+)".
La jsp e' la seguente (Semplificata, per trovare l'errore, ma non lo
trovo lo stesso):
<%@ taglib uri="/WEB-INF/conf/tld/mediacenter/mctl.tld" prefix="mc" %>
<mc:prova />
La classe Java e' la seguente:
....
public class Prova extends TagSupport{
  public int doEndTag() throws JspException {
    try {
      pageContext.getOut().write("Ciao!!!!");
    } catch (IOException e) {}
    return EVAL_PAGE;
  }
}
Il file TLD e' il seguente:
<!DOCTYPE taglib
  PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
  "
http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
">
<taglib>
  <tlibversion>1.0</tlibversion>
  <jspversion>1.1</jspversion>
  <info>Libreria di tag per MediaCenter.</info>
  <shortname>mc</shortname>
  <uri>
http://jakarta.apache.org/taglibs/struts-example-1.0
</uri>
  <tag>
    <name>prova</name>
    <tagclass>it.rcs.mediacenter.frontend.tags.Prova</tagclass>
    <bodycontent>empty</bodycontent>
    <info>Stampa "Ciao"</info>
  </tag>
</taglib>
e in web.xml  la dichiarazione:
<taglib>
  <taglib-uri>/WEB-INF/conf/tld/mediacenter/mctl.tld</taglib-uri>
<taglib-location>/WEB-INF/conf/tld/mediacenter/mctl.tld</taglib-location>
</taglib>
Non so piu' come fare, mi rimetto al vostro aiuto!!!
Grazie mille,
Davide.

 
Credo che il problema dipenda dall'ordine dei tag nell'xml, prova:
<!DOCTYPE taglib
   PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
   "
http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
">
<taglib>
   <tlibversion>1.0</tlibversion>
   <jspversion>1.1</jspversion>
   <shortname>mc</shortname>
   <uri>
http://jakarta.apache.org/taglibs/struts-example-1.0
</uri>
   <info>Libreria di tag per MediaCenter.</info>
   <tag>
     <name>prova</name>
     <tagclass>it.rcs.mediacenter.frontend.tags.Prova</tagclass>
     <bodycontent>empty</bodycontent>
     <info>Stampa "Ciao"</info>
   </tag>
</taglib>
--
Marco

Hai ragione!
Incredibile, ho perso una giornata intera ieri :(
Scusa ma com'e' possibile che funzioni su un Tomcat e non su un
WebSphere?
Mi sa che mi devo ripassare le regole dei dtd per gli xml.
Se il capo viene a sapere di una cappellata cosi' mi licenzia ed ha
ragione!!!
Grazie per il preziosissimo aiuto.
Davide

Il messaggio di errore WSAD (Eclipse, ma ancora piu' lento e mortale)
LOL!
CIAO!

 
Se usi tomcat 5.x prova ad impostare
xmlValidation="true" in conf\server.xml
non so se si rompa qualcosa di piu' importante cosi' pero'.
--
---
    Marco

Provero', dopo le ferie pero'!!!
:)
<ot>
  posso aprire un offtopic???
  Possibile che IBM non sappia fare programmi usabili? Mi riferisco ad
Eclipse o
  WSAD, come vi pare, per impostare il colore di sfondo nero e i colori
dei syntax
  highlight su tutti gli editor, ho impiegato oltre un'ora. Non c'e' un
punto comune in cui
  fare queste modifiche e lo sfondo (per le JSP, xml e altri documenti
non java) lo
  prende dal default di winzozz, ergo mi devo impostare winzozz in
bianco e nero per
  evitar di perdere la vista... Mah... Peccato che GEL non sia piu'
supportato, e' il
  migliore...
  Per finire, i tag personalizzati delle JSP <c:out/> e gli altri, non
li puoi colorare come
  vuoi. non si trova il configuratore, nemmeno nel tool di
configurazione dell'editor delle
  jsp.
  Scusate il piccolo sfogo...
</ot>
Saluti a tutti,
Davide

  highlight su tutti gli editor, ho impiegato oltre un'ora. Non c'e' un
IMHO i problemi sono ben altri...crash improvvisi, inspiegabili
rallentamenti durante
la scrittura del codice, code assist spesso e volentieri lento, jsp
editor pesantissimo.
CIAO!