XML parsen in Bean

Status
Nicht offen für weitere Antworten.

skueter

Neues Mitglied
Hallo,
ich habe ein Problem beim parsen einer XML-Datei. In einer Webanwendung parse ich in einer Bean eine XML-Datei. Aber leider macht er das nicht wie in einer Standalone-Anwendung. Dort funktioniert das Prog ohne Probleme. Hier mal der Code der Bean. Unten noch mal die Files zum Download.

Code:
package meineBeans;

import java.io.*;
import org.xml.sax.helpers.*;
import javax.xml.parsers.*;
import org.xml.sax.*;

public class parsen extends DefaultHandler
{
	private String pfad, datei = "";
	String html = "";
	
	public String parsen()
	{
		DefaultHandler handler = new parsen();
		File file = new File(pfad+datei);
		boolean laden=file.canRead();

		if (laden==true)
		{
			try
			{
				SAXParserFactory factory = SAXParserFactory.newInstance();
				html=html+"A"; //Nur zu Test zwecken
				SAXParser saxParser = factory.newSAXParser();
				html=html+"b"; //Nur zu Test zwecken
				saxParser.parse(file,handler);    //Hier muss der Fehler liegen
				html=html+"C"; //Nur zu Test zwecken
			}
			catch (Throwable t)
			{
				t.printStackTrace();
				html=html+"d"; //Nur zu Test zwecken
			}
		}
		else
		{
			html=html+"E"; //Nur zu Test zwecken
		}		
		return (html);
	}
	
	public void setPfad(String param)
	{
		this.pfad=param;
	}
	
	public void setDatei(String param)
	{
		this.datei=param;
	}
	
	public void startElement(String namespaceURI, String sName, String qName, Attributes attrs)
	{
		String attributName=new String("");
		String attribute=new String("");
		String tagElement=new String("");

		int i;

		html=html+"F"; //Nur zu Test zwecken
		if (attrs.getLength() >=1)
		{
			for (i = 0; i < attrs.getLength(); i++)
			{
				attributName = attrs.getQName(i);
				attribute=attribute+" "+attributName+"='"+attrs.getValue(i)+"'";
			}
			attribute=" "+attribute;
		}
		
		tagElement="<"+qName+attribute+">";
		ausgabe(tagElement);
	}
	
	public void endElement(String namespaceURI, String sName, String qName)
	{
		ausgabe("</"+qName+">");
		html=html+"G"; //Nur zu Test zwecken
	}
	
	public void characters(char[] ch, int start, int length)
	{
		String str = new String(ch, start, length);
		ausgabe(str);
		html=html+"H"; //Nur zu Test zwecken
	}
	
	public void ausgabe(String s)
	{
		System.out.println(s);
	}
}

Hier noch meine jsp.file und meine xml-file
Code:
<jsp:useBean id="pars" class="meineBeans.parsen"/>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
</head>
<body>

<h1>News</h1>
<%
	pars.setPfad(getServletContext().getRealPath("\\"));
	pars.setDatei("news.xml");
	out.println(pars.parsen());
%>



</form>

</body>
</html>

Code:
<?xml version="1.0" encoding="iso-8859-1"?>

<news>

<aufzaehlung>

<datum>02.11.2022</datum>

<text>Der Netscape-Browser erscheint in der neuen Version 8.9. Verbessert wurde u.a. die Performance und Stabilität des Browsers. </text>

</aufzaehlung>

<aufzaehlung>

<datum>01.11.2022</datum>

<text> Microsoft bringt eine neue XML-API unter dem Namen "Internet Explorer for XML Processing XP edition only" heraus. Diese Fassung arbeitet nur mit den Windows-XP-Versionen zusammen.</text>

</aufzaehlung>

<aufzaehlung>

<datum>30.10.2022</datum>

<text> Der XML-Parser doXMLing erscheint in der Update-Version 5.3.2 rev. 17.98. Gegenüber der Vorversion wurden einige Bugs behoben. </text>

</aufzaehlung>

</news>

Hier noch mal die Files zum Download
http://www.sven-kueter.de/jsp.rar
http://www.sven-kueter.de/purejava.rar
 

foobar

Top Contributor
Was funktioniert denn nicht? Fehlermeldung?

BTW
1. Java Beans müssen Serializable implementieren
2. Klassenbezeichner sollten mit einem Großbuchstaben beginnen
 

skueter

Neues Mitglied
Fehlermeldung gibt es keine.

Das Problem ist das er mir immer nur AbC ausgibt und somit anscheinend nicht auf die anderen Methoden zugreift.
Aber in der stdout.log steht durch
Code:
                public void ausgabe(String s)
	{
		System.out.println(s);
	}
die gesamte geparste XML-File. Also müsste er mir dann nicht dann auch FGH ausgeben? Er parst es ja und greift somit auch auf die anderen Methoden zu.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Webseite parsen --> DB --> JSON Allgemeines EE 5
G jsp: strings parsen Allgemeines EE 10
G Http request bekommen parsen und response senden Allgemeines EE 1
R Custom Tag zum Parsen Allgemeines EE 3
R HTML parsen mit Servlet Allgemeines EE 2
clemson [Struts] struts-config.xml parsen Allgemeines EE 2
R JSF Entitybean direkt in Sessionscoped Bean referenzieren Allgemeines EE 2
I Session löschen in Bean (Session Beans) Allgemeines EE 1
J Hello World mit Stateless Session Bean - Was mache ich falsch? Allgemeines EE 2
J Unterschied zwischen HttpSession und Stateful Session Bean Allgemeines EE 3
R Wie eine stateful session bean erneut "aufgreifen" Allgemeines EE 22
B [EJB] javax.inject.DefinitionException: bean not a Java type Allgemeines EE 5
T Einstieg in J2EE: Remote auf Bean zugreifen Allgemeines EE 11
H Bean läuft unter GlassFish, aber JBoss nicht Allgemeines EE 5
P Unterschied Session Scope / Stateful Session Bean Allgemeines EE 6
A Im PhaseListener auf Stateful Session Bean zugreifen Allgemeines EE 6
J geschützter Bean zugriff mit einem Rich-Client Allgemeines EE 2
2 JSTL Tags für eine Bean? Allgemeines EE 4
M Spring: Bean als Webservice freigeben Allgemeines EE 9
D Problem mit EJB: Bean soll Objekt eigener Klasse zurückgeben Allgemeines EE 2
V JSP BEAN Speichern von einer Zahl nach eingabe Allgemeines EE 2
H Bean Vergleich.gibts da schon was Feines? Allgemeines EE 13
B unterschied servlet und bean Allgemeines EE 2
F response.sendError() von Bean aus Allgemeines EE 6
A Session Bean mit Local-Interface nutzen Allgemeines EE 3
J prozesse aus der application-bean threadfähig? Allgemeines EE 4
G JSF dynamsiche style zuweisung aus Backing Bean Allgemeines EE 3
G Objekt von jsp an set Methode von Bean übergeben! Allgemeines EE 2
N Lokation von Bean Klassen? Allgemeines EE 5
M JSF Bean-Property mit Parameter aufrufen Allgemeines EE 12
M JSF & EJB "Bean not bound" Problem Allgemeines EE 4
R Zugriff auf Managed Bean aus einem Filter Allgemeines EE 2
boxi JSF von einem Bean auf ein anderes Bean zugreifen Allgemeines EE 3
J Bean in der init-Methode des Servlets instanzieren Allgemeines EE 9
Y JSF - einzelne Bean zerstören/ungültig machen Allgemeines EE 2
S In einer Bean-Methode an ndere Beans kommen Allgemeines EE 7
ichbindiegute Performance von Entity Bean create vs. JDBC insert Allgemeines EE 11
RaoulDuke EJB 3.0 - Exceptions aus Methoden einer Session Bean Allgemeines EE 2
A Selbstreferenzierter Entity-Bean Allgemeines EE 3
V Bean-Daten in JSF-JSP finden Allgemeines EE 3
G Entity Bean ignoriert Datenbank Allgemeines EE 16
J In einem Bean zugriff auf ein SessionBean? Allgemeines EE 2
F Session Bean -> Daten aus dem Servlet holen Allgemeines EE 11
F Package beim Cookie-setzten über BEAN nicht gefunden Allgemeines EE 4
M STRUTS/Cannot retrieve definition for form bean null on acti Allgemeines EE 4
E Methoden einer Bean aufrufen? Allgemeines EE 4
P jsf SelectOneMenu: Bean als SelectItem Value Allgemeines EE 5
P Struts Form Bean vs. Session Variable Allgemeines EE 6
G Exception creating bean of class . (Struts) Allgemeines EE 8
T statische Methoden versus Application-Bean Allgemeines EE 2
N Duplicate Bean Name (Tomcate 5.X, JDK 1.5) Allgemeines EE 2
M Unterschied zwischen Servlet und Bean/EJB Allgemeines EE 2
flashfactor Logging in einem Session-Bean Allgemeines EE 2
N Einbindung einer Bean in eine JSP (Tomcat-Server 5.5.x) Allgemeines EE 2
H Sichtbarkeit von Bean-Modifikationen? Allgemeines EE 2
H JSP, Session und Java-Bean Allgemeines EE 4
R html-form mit bean:write Allgemeines EE 10
R Use bean in scriptlet in struts Allgemeines EE 4
N Deployen einer EJB3.0 Bean Allgemeines EE 4
M Session Bean vers. Entity Bean Allgemeines EE 3
U Enterprise Bean mit dynamischer Datenbankauswahl? Allgemeines EE 3
T Filesystemzugriff von einer Bean? Allgemeines EE 6
C Mail von einer Session Bean aus senden Allgemeines EE 2
C Message Driven Bean soll keine Nachrichten empfangen Allgemeines EE 4
A Begriffe MBean JMX-Bean? Allgemeines EE 2
K JAVA BEAN DB Connection Prob Allgemeines EE 5
B Kein definiertes Bean? --- JDeveloper Allgemeines EE 5
C JSP mit java Bean Allgemeines EE 22
T Bean übertragen von Servlet zu Servlet Allgemeines EE 9
T Variablen von Bean über Servlet setzen Allgemeines EE 5
G Instanzvariablen mit Strings in Bean vergleichen... Allgemeines EE 3
S Struts: Problem mit <bean:message> - Tag Allgemeines EE 1
A Kommunikation zwischen Java Servlet und Bean Allgemeines EE 1

Ähnliche Java Themen

Neue Themen


Oben