[JSP] xml file inlezen

Pagina: 1
Acties:
  • 100 views sinds 30-01-2008
  • Reageer

  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
hallo, ik heb het volgende probleem. ik wil in een jsp pagina een xml file uitlezen. hieronder het code voorbeeld (test.jsp):
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<%@ page import="java.io.*,
                 java.lang.*,
                 org.w3c.dom.*,
                 org.apache.xerces.dom.*,
                 org.xml.sax.SAXException,
                 org.xml.sax.SAXParseException,
                 javax.xml.parsers.DocumentBuilderFactory,
                 javax.xml.parsers.DocumentBuilder" %>

<%
    try
    {
        File document = new File( new String( "export.xml" ) );
        out.println( "1. file ingelezen" );

        DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance( );
        DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder( );
        out.println( "2. document builder opgezet" );

        Document contentItem = docBuilder.parse( document );
        out.println( "3. document ingelezen" );
    }
    catch ( IOException i )
    {
        i.printStackTrace( );
    }
    catch ( SAXException s )
    {
        s.printStackTrace( );
    }
    catch ( IllegalArgumentException a )
    {
        a.printStackTrace( );
    }
%>

de output hiervan is dan:
code:
1
2
1. file ingelezen
2. document builder opgezet

dus tijdens het parsen lijkt er iets mis te gaan, echter krijg ik dus geen foutmelding van apache.

deze code gebruik ik ook in een web service die binnen het project valt en daar werkt ie wel. ik vermoed dat het misschien met rechten te maken heeft om vanuit een jsp pagina iets in te kunnen lezen, maar nog niks hierover kunnen vinden. iemand een idee?

  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Hmm, ik zou beginnen met die code in een Javaklasse te plaatsen. Logica wil je absoluut niet in de JSP pagina. Bovendien kun je klassen makkelijker compilen met duidelijke foutmeldingen en zo.

Over je probleem, is document misschien null?

Fat Pizza's pizza, they are big and they are cheezy


  • gsteen
  • Registratie: November 2004
  • Laatst online: 13-01-2020
'k Heb geen idee waar apache de printStackTrace output laat. Je zou als test je exceptions ook even als result kunnen weergeven. Voor de IOException dit bijvoorbeeld: out.println(i.getMessage());

"In theory, there is no difference between theory and practice. But, in practice, there is."


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
ok thanks, inderdaad aan de hand van de output krijg ik te zien:

- The entity "nbsp" was referenced, but not declared -

Dus een SAXParserException treedt op omdat er in mijn xml:
XML:
1
2
3
4
5
6
7
8
9
10
                        <tbody>
                            <tr>
                                <td>Secretaris</td>
                                <td>J.C. Moes&nbsp;</td>
                            </tr>
                            <tr>
                                <td>&nbsp;</td>
                                <td>&nbsp;</td>
                            </tr>
                        </tbody>

de code
code:
1
&nbsp;
staat, welke deze leest als een verwijzing in plaats van een html spatie.
hoe kan ik dit omzeilen?

[ Voor 12% gewijzigd door Krooswijk.com op 23-03-2006 14:00 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20:34

TeeDee

CQB 241

encoderen?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Misschien helpt dit, bovenin de pagina:

XML:
1
<?xml version="1.0" encoding="UTF-8"?>

[ Voor 31% gewijzigd door JKVA op 23-03-2006 14:25 ]

Fat Pizza's pizza, they are big and they are cheezy


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
hoe? encoderen van de xml file? dit zal moeilijk gaan, omdat het een export van een ander systeem betreft... of kan ik m geencodeerd inlezen?

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

http://www.dpawson.co.uk/xsl/sect2/nbsp.html

encoding heeft hier niks mee te maken. :)

Sundown Circus


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
op die link was ik net aan het lezen, maar als ik het goed begrijp, dien ik hiervoor dus de export te tweaken, en dat zal lastig gaan...

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Krooswijk.com schreef op donderdag 23 maart 2006 @ 15:30:
op die link was ik net aan het lezen, maar als ik het goed begrijp, dien ik hiervoor dus de export te tweaken, en dat zal lastig gaan...
Even kijken in de API bij setEntityResolver

zie ook: [rml]crisp in "[ PHP+XSL] entity reference in XSL sheet ..."[/rml]

[ Voor 11% gewijzigd door RedRose op 23-03-2006 16:17 ]

Sundown Circus

Pagina: 1