Javassa DOM ja XSL ei pelaa dynaamisesti?

Olen tehnyt softan joka dynaamisesti tekee vektorin tiedoista xml-dokumentin käyttämällä DOM:ia.

Muunnan tämän dokumentin (Document), xsl-tiedoston avulla xhtml-sivuksi joka näkyy selaimessa.

Homma ei toimi, kun xml-dokumentti on document-oliona ja sitä yritetään muuttaa, tekemättä siitä tiedostoa.

Testasin ja tein testidokumentin, tallensin sen kovalevylle ja avasin sen, jolloin xsl-muunnos pelitti hienosti, heti kun kokeilin samaa java-ohjelmassa dynaamisesti luodulla document-oliolla, ei toiminutkaan.

Johtuukohan siitä ettei oikein elementtiin viittaus toimikkaan samalla tavalla keskusmuistissa olevaan dom-puurakenteeseen kuin verrattuna levyllä olevaan xml-dokumenttiin?

Elementtien sisältö ei näkynyt ollenkaan.


Alla olevat koodit toimivat, miten saman saisi
pelaamaan niin että käytettäisiin DOM:n Document-
luokan oliota, java-softassa.




   

      Otsikko1
      Otsikko2
      Otsikko3
      Otsikko4
      Otsikko5


   












   
      
      
      Esimerkki
      
      
      
      
      
      
            
         OTSIKOT:
            
            
         
            
               
         
                                           
                
         
         
                
             
         
            
   
      
      
         
      
   

   
5250
Äänestä

Muut lukivat myös

Vastaukset 5

Vanhimmat

Näyttäisitkö esimerkkikoodin, joka ei toimi. Miellään ilman ylimääräisiä rivinvaihtoja.

Äänestä
  • Tässä kohtaa, tein muutoksen

    Toimii, joko näin:


    Eli ottaa header-elementin mistä tahansa kohtaa puusta.

    Tai näin:




    Oli vikaa itse softanpätkässä joka loi document-olion vektorin tiedoista, oma ohjelmointimoka, jonka jäljittäessä meni vähän aikaa, kun ensin epäili ongelmaa väärässä kohtaa.

    Tein testisoftan joka tulosti xml-dokumentin tilapäisesti tiedostoksi ja siinä paljastui että, ongelma on dokumentin muodostamisessa.

    Nyt homma pelittää hyvin :)

    Aika vääntöä näitten DOM:ien SAX:ien ym..
    kilkkeiden kanssa.

    Teen sellaista softaa joka, muuntaa suoraan dokumentin xsl-muunnoksella xhtml:ksi, seuraavaksi teen saman vielä JSP-sivuina ja niihin liittyvinä papuina, nyt on pelkästään servlettejä pelissä.

    Täytyy vielä tehdä sama Struts:n kanssa, mielenkiintoista hommaa :)


    Muutin dynaamisesti luotavan dokumentin rakennetta, koska DOM-teki elementistä jonka sisällä oli muita elementtejä, yksiosaisen elementin, eikä ollut yhtään hyvä juttu.



    Georgialaisryhmä lennätetään kotiin
    EU:n vakaussopimuksesta löytymässä sopu
    Elokuvaohjaaja Armand Lohikoski on kuollut
    Lapin matkailutukien käytössä epäselvyyksiä
    Ikkunoiden laatu romahtanut hintakisassa

    Äänestä

  • Tero kirjoitti:

    Tässä kohtaa, tein muutoksen

    Toimii, joko näin:


    Eli ottaa header-elementin mistä tahansa kohtaa puusta.

    Tai näin:




    Oli vikaa itse softanpätkässä joka loi document-olion vektorin tiedoista, oma ohjelmointimoka, jonka jäljittäessä meni vähän aikaa, kun ensin epäili ongelmaa väärässä kohtaa.

    Tein testisoftan joka tulosti xml-dokumentin tilapäisesti tiedostoksi ja siinä paljastui että, ongelma on dokumentin muodostamisessa.

    Nyt homma pelittää hyvin :)

    Aika vääntöä näitten DOM:ien SAX:ien ym..
    kilkkeiden kanssa.

    Teen sellaista softaa joka, muuntaa suoraan dokumentin xsl-muunnoksella xhtml:ksi, seuraavaksi teen saman vielä JSP-sivuina ja niihin liittyvinä papuina, nyt on pelkästään servlettejä pelissä.

    Täytyy vielä tehdä sama Struts:n kanssa, mielenkiintoista hommaa :)


    Muutin dynaamisesti luotavan dokumentin rakennetta, koska DOM-teki elementistä jonka sisällä oli muita elementtejä, yksiosaisen elementin, eikä ollut yhtään hyvä juttu.



    Georgialaisryhmä lennätetään kotiin
    EU:n vakaussopimuksesta löytymässä sopu
    Elokuvaohjaaja Armand Lohikoski on kuollut
    Lapin matkailutukien käytössä epäselvyyksiä
    Ikkunoiden laatu romahtanut hintakisassa

    Suosittelen tutustumaan myös Freemarker:iin.

    http://freemarker.sourceforge.net/

    Esimerkkejä:

    http://freemarker.sourceforge.net/docs/xgui_imperative_learn.html

    Äänestä


  • Tero kirjoitti:

    Kiitokset linkeistä, otin talteen ja tutustun paremmalla ajalla.

    Muuten Struts:lle on joku toinen kilpailija, sain tiedot siitä, en löytänyt omista papereistani sitä, laitan tänne linkin kun löydän sen.

    Tuossa esimerkki JSTL:n (java standard tag library) XML tag:sta
    Transformations using output from XPath expressions

    Äänestä

Kommentoi aloitusta


Tero kirjoitti:

Olen tehnyt softan joka dynaamisesti tekee vektorin tiedoista xml-dokumentin käyttämällä DOM:ia.

Muunnan tämän dokumentin (Document), xsl-tiedoston avulla xhtml-sivuksi joka näkyy selaimessa.

Homma ei toimi, kun xml-dokumentti on document-oliona ja sitä yritetään muuttaa, tekemättä siitä tiedostoa.

Testasin ja tein testidokumentin, tallensin sen kovalevylle ja avasin sen, jolloin xsl-muunnos pelitti hienosti, heti kun kokeilin samaa java-ohjelmassa dynaamisesti luodulla document-oliolla, ei toiminutkaan.

Johtuukohan siitä ettei oikein elementtiin viittaus toimikkaan samalla tavalla keskusmuistissa olevaan dom-puurakenteeseen kuin verrattuna levyllä olevaan xml-dokumenttiin?

Elementtien sisältö ei näkynyt ollenkaan.


Alla olevat koodit toimivat, miten saman saisi
pelaamaan niin että käytettäisiin DOM:n Document-
luokan oliota, java-softassa.




   

      Otsikko1
      Otsikko2
      Otsikko3
      Otsikko4
      Otsikko5


   












   
      
      
      Esimerkki
      
      
      
      
      
      
            
         OTSIKOT:
            
            
         
            
               
         
                                           
                
         
         
                
             
         
            
   
      
      
         
      
   

   

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu