Pourquoi ai-je une “Fin Prématurée de Fichier” erreur lors de l'exécution de ma transformation XSLT?
Arriver à la Ligne #-1; Colonne #-1; fin Prématurée de fichier Erreur lors de la transformation xslt
XSL :
<xsl:template match="/">
<html>
<head>
<title>Real's HowTo</title>
</head>
<body>
<table border="1">
<tr>
<th>Titleamit</th>
<th>Link</th>
</tr>
<xsl:for-each select="mx:feed/mx:entry">
<tr>
<td>
<xsl:value-of select="mx:title" />
</td>
<td>
<xsl:value-of select="mx:published" />
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
XML:
<?xml version="1.0" encoding="UTF-8" ?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:clearspace="http://www.jivesoftware.com/xmlns/clearspace/rss"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<title>
Sprint Community: Space Polls - Android
</title>
<link rel="alternate" href="http://community.sprint.com/baw/poll.jspa?containerType=14&container=2130" />
<subtitle>
List of polls
</subtitle>
<id>
http://community.sprint.com/baw/poll.jspa?containerType=14&container=2130
</id>
<generator uri="http://jivesoftware.com/products/clearspace/" version="4.5.4.1">
Jive SBS
</generator>
<updated>
2010-02-08T17:30:00Z
</updated>
<dc:date>
2010-02-08T17:30:00Z
</dc:date>
<dc:language>
en
</dc:language>
<entry>
<title>
What's Valuable
</title>
<link rel="alternate" href="http://community.sprint.com/baw/poll.jspa?poll=1062" />
<author>
<name>
wengla02
</name>
<uri>
/people/wengla02
</uri>
<email>
[email protected]
</email>
</author>
<updated>
2010-02-08T17:30:00Z
</updated>
<published>
2010-02-08T17:30:00Z
</published>
<summary type="html" />
<dc:date>
2010-02-08T17:30:00Z
</dc:date>
<clearspace:dateToText>
1 year, 2 months ago
</clearspace:dateToText>
<clearspace:objectType>
0
</clearspace:objectType>
</entry>
</feed>
De code Java:
//load xslt fromxsltFilePath
url = getClass().getClassLoader().getResource("com/sprint/mysprint/phoneMedia/myPhoneAndMedia/xsl/announcementFeed.xsl");
BufferedInputStream bis3= new BufferedInputStream(url.openStream());
if (isLoggingDebug()) {
BufferedInputStream bis1= new BufferedInputStream(url.openStream());
byte[] buffer1 = new byte[1024];
int bytesRead1 = 0;
while ((bytesRead1 = bis1.read(buffer1)) != -1) {
String chunk1 = new String(buffer1, 0, bytesRead1);
logDebug(" " + chunk1);
}
}
TransformerFactory transformerFactory = TransformerFactory.newInstance();
//create xslt Template
Templates template = transformerFactory.newTemplates(
new StreamSource(new DataInputStream(url.openStream())));
//Create Transformer
Transformer transformer = template.newTransformer();
transformer.transform(
new StreamSource(bis), new StreamResult(xhtmlContent));
Peut-être que vous venez de ne pas l'inclure dans le post mais, je manque le XML de la rubrique (<?xml version="1.0" encoding="UTF-8" ?> et un <xsl:stylesheet> nœud racine.
Dans ce cas, l'exception doit se produire lors de la création du
Dans ce cas, l'exception doit se produire lors de la création du
Templates
objet ou de la Transformer
. Est-il remonter à l'une de ces lignes, ou de l'exception se produire dans le transform()
appel?OriginalL'auteur Amit | 2011-04-12
Vous devez vous connecter pour publier un commentaire.
La
&
esperluette signes sont pas échappé dans votre xml. Vous devriez les changer à&
afin d'être en mesure d'analyser les données xml, sinon ça ne marchera pas.Après l'analyse et de la transformation, de l'emballage, que ce soit, vous pouvez mettre à jour les résultats en changeant ces personnages en arrière.
;
dans le XML, donc je suppose que l'analyseur conserve lecture sur, en supposant qu'il devient une référence de caractère. À la fin du fichier, il est toujours en cours.OriginalL'auteur rekaszeru