Pagina 3 di 4 PrimaPrima ... 234 UltimaUltima
Risultati da 21 a 30 di 31

Discussione: xsl

  1. #21
    Hanno assassinato Calipari
    Data Registrazione
    09 Mar 2002
    Località
    "Il programma YURI il programma"
    Messaggi
    69,193
     Likes dati
    0
     Like avuti
    4
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    Originally posted by Ago
    +10 punti a Yurj
    Si, di sutura pero'

    O'Rei mi fa domande su robe che non ho mai visto, e gli rispondo pure... so mejo de Nirvana

  2. #22
    Re del Fondoscala
    Data Registrazione
    06 Mar 2002
    Messaggi
    61,858
     Likes dati
    2
     Like avuti
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Predefinito




    mi stai facendo scaricare 60 Mb di roba inutile????

  3. #23
    Hanno assassinato Calipari
    Data Registrazione
    09 Mar 2002
    Località
    "Il programma YURI il programma"
    Messaggi
    69,193
     Likes dati
    0
     Like avuti
    4
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    Originally posted by O'Rei
    ho finito tutta la parte in xsl, per adesso visualizzo xhtml il professore sadico però ha detto che devo riuscire a farlo visualizzare anche in wml....ah che spasso...
    Codice:
    	// Find out what data types the requestor accepts.  We're
    	// looking specifically for WML versus HTML here.  
    	// In principle we're supposed to be looking through all of
    	// the headers carefully, picking out the preferred styles of
    	// each client.  In practice we only know how to do WML, HTML,
    	// and TEXT (in an emergency!), so we look for any evidence
    	// that the client can take WML, and otherwise deliver HTML
    	// unless we're pretty sure it *cannot* take HTML.
    	String outputStyle = "";
    	Enumeration requesterAcceptEnum = request.getHeaders("ACCEPT");
    	while(requesterAcceptEnum.hasMoreElements()) {
    	    String headerStr = (String) requesterAcceptEnum.nextElement();
    	    logger.finest("Accept header: " + headerStr);
    	    if      (headerStr.indexOf("wml" ) > -1) outputStyle = "WML";
    	    else if (headerStr.indexOf("html") > -1) outputStyle = "HTML";
    	    else if (headerStr.indexOf("*/*") > -1)  outputStyle = "HTML";
    	    else if (headerStr.indexOf("text") > -1) outputStyle = "TEXT";
    	}
    Lavora su questa idea, determini il tipo di browser e in base a quello decidi quale xsl applicare

  4. #24
    Hanno assassinato Calipari
    Data Registrazione
    09 Mar 2002
    Località
    "Il programma YURI il programma"
    Messaggi
    69,193
     Likes dati
    0
     Like avuti
    4
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    oppure:

    Codice:
       String useragent = request.getHeader("user-agent");
       String wapProfile = request.getHeader("x-wap-profile");
       String accept = request.getHeader("accept");
    
       if (accept.matches("^.*vnd.wap.xhtml.*$")) {
           response.setContentType("application/vnd.wap.xhtml+xml");
           // ---Do something ---
       }
       else if (accept.matches("^.*vnd.wap.wml.*$") || wapProfile != null ) {
           response.setContentType("text/vnd.wap.wml");
           // ---Do something ---
       }
       else if ( useragent.startsWith("SonyEricssonP800") || useragent.startsWith("P800")) {
           response.setContentType("application/vnd.wap.xhtml+xml");
            // ---Do something ---
       }
    
       Example of an XSLT file with WML1:
    
       <?xml version="1.0" encoding="UTF-16"?>
       <xsl:stylesheet version="1.0"
       xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    
       <xsl:output method="wml" indent="yes" encoding="UTF-8"/>
       <xsl:output doctype-system="http://www.wapforum.org/DTD/wml13.dtd"
       doctype-public="-//WAPFORUM//DTD WML 1.3//EN" />
    
       <xsl:template match="/">
       <wml>
        <template>
         <!-- Template implementation here. -->
         <do type="prev"><prev/></do>
        </template>
    
        <card id="executed" title="XSLT based">
        <p align="center"> <xsl:value-of select="message"/>
       <br/>
                    <a>
                    <xsl:attribute name="href">
                     <xsl:value-of select="//@href"/>
                    </xsl:attribute>
                    back
                    </a>
           </p>
         </card>
        </wml>
        </xsl:template>
        </xsl:stylesheet>

  5. #25
    Re del Fondoscala
    Data Registrazione
    06 Mar 2002
    Messaggi
    61,858
     Likes dati
    2
     Like avuti
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    sto impazzendo

  6. #26
    Re del Fondoscala
    Data Registrazione
    06 Mar 2002
    Messaggi
    61,858
     Likes dati
    2
     Like avuti
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    bene, l'elaborato è finito e funzionante...il problema è che funziona soltanto su internet explorer o netscape perchè contengono al loro interno una macchina che trasforma l'xsl e visualizza. Il prof ha detto che affinchè tutto funzioni anche sugli altri browser bisogna implementare sul lato server una servlet/jsp che gestisce le classi xalan in modo da trasformare l'xsl.

  7. #27
    Forumista assiduo
    Data Registrazione
    07 Apr 2009
    Messaggi
    9,779
     Likes dati
    1
     Like avuti
    0
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    Devi "solo" applicare la trasformazione XSL (XML -> HTML/WML/XML) a livello server e non sul cliente.

    In pratica devi dire: "Server, questo e' il mio XSL e questo e' l'XML, ora sputa fuori l'XML/HTML/WM" che tradotto diventa:

    java org.apache.xalan.xslt.Process -in xmlSource -xsl stylesheet -out outputfile

    http://xml.apache.org/xalan-j/getstarted.html

    Solito caveat: non e' il mio campo. Buon divertimento.

  8. #28
    Forumista assiduo
    Data Registrazione
    07 Apr 2009
    Messaggi
    9,779
     Likes dati
    1
     Like avuti
    0
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    Nota che tale comando non deve essere in una pagina html "statica" da essere elaborata dal cliente.

    Immagino dovrai intercettare le chiamate dei clienti passarle al tuo script xalan e ritornare ai clienti il risultato del tuo script. Esistono vari modi per effettuare tale "dirottamento", credo il modo piu' semplice (quello che ti ha suggerito il tuo professore) sia puntare il browser direttamente alla "pagina jsp", che immagino sia una pagina html che contenga codice java (elaborato a livello server prima di ritornare la pagina al cliente).

    http://java.sun.com/products/jsp/

    Prbabilmente qualcosa tipo

    <%@ page language="java" %>
    <html>
    <head><title>A Comment Test</title></head>
    <body>
    <h2>A Test of Comments</h2>
    <jsp:expression>
    java org.apache.xalan.xslt.Process -in xmlSource -xsl stylesheet -out outputfile
    </jsp:expression>
    </body>
    </html>

    Non sono sicuro che la tag esatta sia <jsp:expression> ma da qui dovresti saper procedere da solo.

  9. #29
    Re del Fondoscala
    Data Registrazione
    06 Mar 2002
    Messaggi
    61,858
     Likes dati
    2
     Like avuti
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    in jsp si usa <% %> per le espressioni
    a stringa gestisce però un solo file xml source, quindi dovrei scriverla per ogni file? cioè se ho 10 file con xml source dovrei riscriverla 10 volte secondo te?

  10. #30
    Forumista assiduo
    Data Registrazione
    07 Apr 2009
    Messaggi
    9,779
     Likes dati
    1
     Like avuti
    0
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    Predefinito

    in jsp si usa <% %> per le espressioni

    Da quel poco che ho letto puoi usare sia % sia la tag.

    la stringa gestisce però un solo file xml source, quindi dovrei scriverla per ogni file? cioè se ho 10 file con xml source dovrei riscriverla 10 volte secondo te?

    Credo il modo migliore sia creare un unico file xml di partenza. Puo' darsi che il comando supporti il globbing (es *), non saprei, altrimenti usi un loop.

 

 
Pagina 3 di 4 PrimaPrima ... 234 UltimaUltima

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
[Rilevato AdBlock]

Per accedere ai contenuti di questo Forum con AdBlock attivato
devi registrarti gratuitamente ed eseguire il login al Forum.

Per registrarti, disattiva temporaneamente l'AdBlock e dopo aver
fatto il login potrai riattivarlo senza problemi.

Se non ti interessa registrarti, puoi sempre accedere ai contenuti disattivando AdBlock per questo sito