Wie bereits im Titel geschrieben hängt das Programm mehrere Sekunden sobald es die parse-Methode erreicht hat(hab das im Debug getestet). Das Seltsame ist, das die Anwendung(ist wesentlich grösser aber hier nur nen kleines selbstkompilierendes Beispiel) auf dem Rechner in der Schule wunderbar läuft und es eben nicht zu diesem Hänger kommt.
Deswegen vermute ich weniger das es ein Programmierproblem ist. Andererseits kann ich mir aber auch nicht vorstellen in wieweit es ein externes Problem sein könnte.
Falls es gegebenfalls ein Computer/Betriebssystem-Problem sein könnte hier die wichtigsten Daten:
Windows Vista
Quad Core Intel Prozessor(2.4 GHz/Kern)
4 GB Speicher
Einmal hier das Programm bei dem das Problem auftritt:
Und hier die wirklich kleine Beispiel XML-Datei:
[XML]
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" >
<head>
<title> </title>
</head>
<body>
</body>
</html>
[/XML]
Hoffe Ihr könnt mir mit dem Problem helfen
Nachtrag: Ich habe mittlerweile den Flaschenhals gefunden. Beim Parsen der Seite läd er etliche Dateien runter(xhtml1-strict.dtd, xhtml-lat1.ent, xhtml-special.ent, xhtml-special.ent, xhtml-symbol.ent). Mir ist allerdings immer noch schleierhaft warum er für die 50kb 5 Sekunden braucht. Nichtsdestotrotz möchte ich weiterhin die html datei verlinken lassen auf die online verfügbaren dateien er soll aber falls diese lokal verfügbar sind diese benutzen. Wie bekomme ich sowas hin?
Deswegen vermute ich weniger das es ein Programmierproblem ist. Andererseits kann ich mir aber auch nicht vorstellen in wieweit es ein externes Problem sein könnte.
Falls es gegebenfalls ein Computer/Betriebssystem-Problem sein könnte hier die wichtigsten Daten:
Windows Vista
Quad Core Intel Prozessor(2.4 GHz/Kern)
4 GB Speicher
Einmal hier das Programm bei dem das Problem auftritt:
Code:
import java.io.File;
import java.io.IOException;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class Parser
{
public static void main(String[] args)
{
new Parser();
}
public Parser()
{
try
{
SAXParserFactory factory = SAXParserFactory.newInstance();
javax.xml.parsers.SAXParser parser = null;
try
{
parser = factory.newSAXParser();
}
catch (ParserConfigurationException e1)
{
e1.printStackTrace();
}
try
{
parser.parse(new File("d:\\html\\index.html"),new WWWHandler()); //an dieser Stelle hängt er dann einige Sekunden
} catch (IOException e)
{
e.printStackTrace();
}
}
catch (SAXException e)
{
e.printStackTrace();
}
}
public class WWWHandler extends DefaultHandler
{
}
}
Und hier die wirklich kleine Beispiel XML-Datei:
[XML]
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" >
<head>
<title> </title>
</head>
<body>
</body>
</html>
[/XML]
Hoffe Ihr könnt mir mit dem Problem helfen
Nachtrag: Ich habe mittlerweile den Flaschenhals gefunden. Beim Parsen der Seite läd er etliche Dateien runter(xhtml1-strict.dtd, xhtml-lat1.ent, xhtml-special.ent, xhtml-special.ent, xhtml-symbol.ent). Mir ist allerdings immer noch schleierhaft warum er für die 50kb 5 Sekunden braucht. Nichtsdestotrotz möchte ich weiterhin die html datei verlinken lassen auf die online verfügbaren dateien er soll aber falls diese lokal verfügbar sind diese benutzen. Wie bekomme ich sowas hin?
Zuletzt bearbeitet: