Behebung des Problems mit verschachtelten Tags in der HTML-Ausgabe beim Upgrade von HTMLCleaner von Version 2.4 auf 2.29

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Behebung des Problems mit verschachtelten Tags in der HTML-Ausgabe beim Upgrade von HTMLCleaner von Version 2.4 auf 2.29

by Guest » 24 Dec 2024, 10:43

Ich habe eine Java-Methode, die HTMLCleaner Version 2.4 verwendet. Aufgrund der hohen CVE-Schwachstellen muss ich HTMLCleaner auf Version 2.29 aktualisieren. Allerdings enthält die generierte HTML-Ausgabe von Version 2.29 verschachtelte Tags, was für meinen Anwendungsfall falsch ist. Zum Beispiel mit der Eingabe:

Code: Select all

323328.33
2024-12-20T16:00:00.000-05:00

Stam- 1234
TRADITIONAL_IRA


Die Ausgabe mit Version 2.4 ist:

Code: Select all






323328.33
2024-12-20T16:00:00.000-05:00

Stam- 1234
TRADITIONAL_IRA




Während die Ausgabe mit Version 2.29 mit verschachtelten Tags erfolgt:

Code: Select all






323328.33
2024-12-20T16:00:00.000-05:00

Stam- 1234
TRADITIONAL_IRA







das ist mein Code:

Code: Select all

public static String setSourceTidyTag1(String htmlDoc)   {
HtmlCleaner htmlCleaner = new HtmlCleaner();
CleanerProperties cleanerProperties = htmlCleaner.getProperties();
TagNode tagNode = htmlCleaner.clean(htmlDoc);
org.w3c.dom.Document doc;
StringWriter writer = new StringWriter();
Transformer transformer;
try {
CleanerProperties cleanerProps=new CleanerProperties();
cleanerProps.setRecognizeUnicodeChars(false);
doc = new DomSerializer(cleanerProps).createDOM(tagNode);
DOMSource domSource = new DOMSource(doc);
TransformerFactory tf = TransformerFactory.newInstance();
transformer = tf.newTransformer();
StreamResult result = new StreamResult(writer);
transformer.transform(domSource, result);
} catch (ParserConfigurationException e) {
} catch (TransformerConfigurationException e) {
} catch (TransformerException e) {
} catch( Exception e) {
}
return writer.toString();
}
wie man dafür sorgt, dass der gleiche Code mit Version 2.29 die gleiche Ausgabe wie 2.4 zurückgibt

Top