"));
- assertTrue(xmlString.contains("This is child element 1"));
- assertTrue(xmlString.contains("This is child element 2"));
- } catch (XmlException e) {
- e.printStackTrace();
- }
- }
-}
diff --git a/xml/src/test/java/com/ossez/xml/XMLDocumentWriterUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/XMLDocumentWriterUnitTest.java
similarity index 96%
rename from xml/src/test/java/com/ossez/xml/XMLDocumentWriterUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/XMLDocumentWriterUnitTest.java
index 0bed938723..7322ee061b 100644
--- a/xml/src/test/java/com/ossez/xml/XMLDocumentWriterUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/XMLDocumentWriterUnitTest.java
@@ -1,15 +1,15 @@
-package com.ossez.xml;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
+package com.isharkfly.xml;
+import com.isharkfly.xml.XMLDocumentWriter;
import org.apache.commons.io.FileUtils;
import org.junit.After;
import org.junit.Test;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
import java.io.File;
public class XMLDocumentWriterUnitTest {
diff --git a/xml/src/test/java/com/ossez/xml/attribute/Dom4jProcessorUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/attribute/Dom4jProcessorUnitTest.java
similarity index 96%
rename from xml/src/test/java/com/ossez/xml/attribute/Dom4jProcessorUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/attribute/Dom4jProcessorUnitTest.java
index f270b721a0..467a26efe0 100644
--- a/xml/src/test/java/com/ossez/xml/attribute/Dom4jProcessorUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/attribute/Dom4jProcessorUnitTest.java
@@ -1,5 +1,6 @@
-package com.ossez.xml.attribute;
+package com.isharkfly.xml.attribute;
+import com.isharkfly.xml.attribute.Dom4jTransformer;
import org.dom4j.DocumentException;
import org.junit.jupiter.api.Test;
import org.xml.sax.SAXException;
@@ -8,7 +9,6 @@
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.xpath.XPathExpressionException;
-
import java.io.IOException;
import java.net.URISyntaxException;
import java.nio.file.Files;
diff --git a/xml/src/test/java/com/baeldung/xml/attribute/JaxpProcessorUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/attribute/JaxpProcessorUnitTest.java
similarity index 94%
rename from xml/src/test/java/com/baeldung/xml/attribute/JaxpProcessorUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/attribute/JaxpProcessorUnitTest.java
index 8d814783e0..04d6cb2b47 100644
--- a/xml/src/test/java/com/baeldung/xml/attribute/JaxpProcessorUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/attribute/JaxpProcessorUnitTest.java
@@ -1,18 +1,18 @@
-package com.baeldung.xml.attribute;
+package com.isharkfly.xml.attribute;
-import static org.assertj.core.api.Assertions.assertThatThrownBy;
-import static org.xmlunit.assertj.XmlAssert.assertThat;
-
-import java.io.IOException;
+import com.isharkfly.xml.attribute.JaxpTransformer;
+import org.junit.jupiter.api.Test;
+import org.xml.sax.SAXException;
+import org.xml.sax.SAXParseException;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.xpath.XPathExpressionException;
+import java.io.IOException;
-import org.junit.jupiter.api.Test;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
+import static org.xmlunit.assertj.XmlAssert.assertThat;
/**
* Unit test for {@link JaxpTransformer}.
diff --git a/xml/src/test/java/com/ossez/xml/attribute/JooxProcessorUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/attribute/JooxProcessorUnitTest.java
similarity index 96%
rename from xml/src/test/java/com/ossez/xml/attribute/JooxProcessorUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/attribute/JooxProcessorUnitTest.java
index e39ec6bb59..3dc5a13343 100644
--- a/xml/src/test/java/com/ossez/xml/attribute/JooxProcessorUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/attribute/JooxProcessorUnitTest.java
@@ -1,5 +1,6 @@
-package com.ossez.xml.attribute;
+package com.isharkfly.xml.attribute;
+import com.isharkfly.xml.attribute.JooxTransformer;
import org.junit.jupiter.api.Test;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
@@ -8,7 +9,6 @@
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.xpath.XPathExpressionException;
-
import java.io.IOException;
import java.net.URISyntaxException;
import java.nio.file.Files;
diff --git a/xml-2/src/test/java/com/baeldung/xml/invalidcharacters/InvalidCharactersUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/invalidcharacters/InvalidCharactersUnitTest.java
similarity index 98%
rename from xml-2/src/test/java/com/baeldung/xml/invalidcharacters/InvalidCharactersUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/invalidcharacters/InvalidCharactersUnitTest.java
index 7878e72f97..3ca4036855 100644
--- a/xml-2/src/test/java/com/baeldung/xml/invalidcharacters/InvalidCharactersUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/invalidcharacters/InvalidCharactersUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.xml.invalidcharacters;
+package com.isharkfly.xml.invalidcharacters;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
diff --git a/xml/src/test/java/com/baeldung/xml/jibx/CustomerUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/jibx/CustomerUnitTest.java
similarity index 96%
rename from xml/src/test/java/com/baeldung/xml/jibx/CustomerUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/jibx/CustomerUnitTest.java
index 9a4b5bc14b..58af978645 100644
--- a/xml/src/test/java/com/baeldung/xml/jibx/CustomerUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/jibx/CustomerUnitTest.java
@@ -1,5 +1,6 @@
-package com.baeldung.xml.jibx;
+package com.isharkfly.xml.jibx;
+import com.isharkfly.xml.jibx.Customer;
import org.jibx.runtime.BindingDirectory;
import org.jibx.runtime.IBindingFactory;
import org.jibx.runtime.IUnmarshallingContext;
diff --git a/xml-2/src/test/java/com/baeldung/xml/tohashmap/XmlToHashMapUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/tohashmap/XmlToHashMapUnitTest.java
similarity index 92%
rename from xml-2/src/test/java/com/baeldung/xml/tohashmap/XmlToHashMapUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/tohashmap/XmlToHashMapUnitTest.java
index 5e05dd3ccb..234a180f3f 100644
--- a/xml-2/src/test/java/com/baeldung/xml/tohashmap/XmlToHashMapUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/tohashmap/XmlToHashMapUnitTest.java
@@ -1,13 +1,13 @@
-package com.baeldung.xml.tohashmap;
+package com.isharkfly.xml.tohashmap;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
-import java.util.ArrayList;
import java.util.Map;
-import javax.xml.bind.JAXBException;
-
+import com.isharkfly.xml.tohashmap.Employee;
+import com.isharkfly.xml.tohashmap.XmlToHashMap;
+import jakarta.xml.bind.JAXBException;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/xml-2/src/test/java/com/baeldung/xml/xml2csv/Xml2CsvExampleUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/xml2csv/Xml2CsvExampleUnitTest.java
similarity index 98%
rename from xml-2/src/test/java/com/baeldung/xml/xml2csv/Xml2CsvExampleUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/xml2csv/Xml2CsvExampleUnitTest.java
index 181d284b2d..7bdfac403e 100644
--- a/xml-2/src/test/java/com/baeldung/xml/xml2csv/Xml2CsvExampleUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/xml2csv/Xml2CsvExampleUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.xml.xml2csv;
+package com.isharkfly.xml.xml2csv;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -18,6 +18,7 @@
import javax.xml.transform.TransformerException;
+import com.isharkfly.xml.xml2csv.Xml2CsvExample;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
diff --git a/xml-2/src/test/java/com/baeldung/xml/xml2document/XMLStringToDocumentObjectUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/xml2document/XMLStringToDocumentObjectUnitTest.java
similarity index 95%
rename from xml-2/src/test/java/com/baeldung/xml/xml2document/XMLStringToDocumentObjectUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xml/xml2document/XMLStringToDocumentObjectUnitTest.java
index f573e1c96d..2d1b6cce3c 100644
--- a/xml-2/src/test/java/com/baeldung/xml/xml2document/XMLStringToDocumentObjectUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xml/xml2document/XMLStringToDocumentObjectUnitTest.java
@@ -1,37 +1,37 @@
-package com.baeldung.xml2document;
-
-import org.junit.Test;
-import org.w3c.dom.*;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import java.io.IOException;
-import java.io.StringReader;
-
-import static org.junit.Assert.assertEquals;
-
-public class XMLStringToDocumentObjectUnitTest {
- @Test
- public void givenValidXMLString_whenParsing_thenDocumentIsCorrect() throws ParserConfigurationException {
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- DocumentBuilder builder = factory.newDocumentBuilder();
- String xmlString = "XML Parsing Example";
- InputSource is = new InputSource(new StringReader(xmlString));
- Document xmlDoc = null;
- try {
- xmlDoc = builder.parse(is);
- } catch (SAXException e) {
- throw new RuntimeException(e);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
-
- assertEquals("root", xmlDoc.getDocumentElement().getNodeName());
- assertEquals("element", xmlDoc.getDocumentElement().getElementsByTagName("element").item(0).getNodeName());
- assertEquals("XML Parsing Example", xmlDoc.getDocumentElement().getElementsByTagName("element").item(0).getTextContent());
- }
-}
+package com.isharkfly.xml.xml2document;
+
+import org.junit.Test;
+import org.w3c.dom.*;
+import org.xml.sax.InputSource;
+import org.xml.sax.SAXException;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
+import java.io.IOException;
+import java.io.StringReader;
+
+import static org.junit.Assert.assertEquals;
+
+public class XMLStringToDocumentObjectUnitTest {
+ @Test
+ public void givenValidXMLString_whenParsing_thenDocumentIsCorrect() throws ParserConfigurationException {
+ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ DocumentBuilder builder = factory.newDocumentBuilder();
+ String xmlString = "XML Parsing Example";
+ InputSource is = new InputSource(new StringReader(xmlString));
+ Document xmlDoc = null;
+ try {
+ xmlDoc = builder.parse(is);
+ } catch (SAXException e) {
+ throw new RuntimeException(e);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+
+ assertEquals("root", xmlDoc.getDocumentElement().getNodeName());
+ assertEquals("element", xmlDoc.getDocumentElement().getElementsByTagName("element").item(0).getNodeName());
+ assertEquals("XML Parsing Example", xmlDoc.getDocumentElement().getElementsByTagName("element").item(0).getTextContent());
+ }
+}
diff --git a/xml-2/src/test/java/com/isharkfly/xml/xml2pdf/XmlToPdfConverterUnitTest.java b/xml-2/src/test/java/com/isharkfly/xml/xml2pdf/XmlToPdfConverterUnitTest.java
new file mode 100644
index 0000000000..cb77f43b3c
--- /dev/null
+++ b/xml-2/src/test/java/com/isharkfly/xml/xml2pdf/XmlToPdfConverterUnitTest.java
@@ -0,0 +1,48 @@
+package com.isharkfly.xml.xml2pdf;
+
+import com.isharkfly.xml.xml2pdf.XmlToPdfConverter;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.Test;
+
+import java.io.File;
+
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+public class XmlToPdfConverterUnitTest {
+
+ private static final String BASE_PATH = "src/main/resources/xmltopdf/";
+
+ private static final String STYLE_XSL = BASE_PATH + "style.xsl";
+ private static final String DATA_XML_INPUT = BASE_PATH + "data-input.xml";
+ private static final String DATA_PDF_OUTPUT = BASE_PATH + "data-output.pdf";
+
+ // Comment out this method if you need to keep the outputted PDF file.
+ @AfterEach
+ public void teardown() {
+ new File(DATA_PDF_OUTPUT).delete();
+ }
+
+ @Test
+ public void givenXmlFile_whenConvertToPdfUsingFop_thenPdfGenerated() throws Exception {
+ // Execute XML to PDF conversion
+ XmlToPdfConverter.convertXMLtoPDFUsingFop(DATA_XML_INPUT, STYLE_XSL, DATA_PDF_OUTPUT);
+ // Check if PDF file was created
+ File pdfFile = new File(DATA_PDF_OUTPUT);
+ assertTrue(pdfFile.exists());
+ assertTrue(pdfFile.isFile());
+ assertTrue(pdfFile.length() > 0);
+
+ }
+
+ @Test
+ public void givenXmlFile_whenConvertToPdfUsingIText_thenPdfGenerated() throws Exception {
+ // Execute XML to PDF conversion
+ XmlToPdfConverter.convertXMLtoPDFUsingIText(DATA_XML_INPUT, DATA_PDF_OUTPUT);
+ // Check if PDF file was created
+ File pdfFile = new File(DATA_PDF_OUTPUT);
+ assertTrue(pdfFile.exists());
+ assertTrue(pdfFile.isFile());
+ assertTrue(pdfFile.length() > 0);
+ }
+
+}
diff --git a/xml/src/test/java/com/baeldung/xmlhtml/delhtmltags/RemoveHtmlTagsLiveTest.java b/xml-2/src/test/java/com/isharkfly/xmlhtml/delhtmltags/RemoveHtmlTagsLiveTest.java
similarity index 98%
rename from xml/src/test/java/com/baeldung/xmlhtml/delhtmltags/RemoveHtmlTagsLiveTest.java
rename to xml-2/src/test/java/com/isharkfly/xmlhtml/delhtmltags/RemoveHtmlTagsLiveTest.java
index b05123cbdc..0e746bb447 100644
--- a/xml/src/test/java/com/baeldung/xmlhtml/delhtmltags/RemoveHtmlTagsLiveTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xmlhtml/delhtmltags/RemoveHtmlTagsLiveTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.xmlhtml.delhtmltags;
+package com.isharkfly.xmlhtml.delhtmltags;
import net.htmlparser.jericho.Renderer;
import net.htmlparser.jericho.Segment;
diff --git a/xml/src/test/java/com/ossez/xmlhtml/freemarker/FreemarkerTransformerUnitTest.java b/xml-2/src/test/java/com/isharkfly/xmlhtml/freemarker/FreemarkerTransformerUnitTest.java
similarity index 87%
rename from xml/src/test/java/com/ossez/xmlhtml/freemarker/FreemarkerTransformerUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xmlhtml/freemarker/FreemarkerTransformerUnitTest.java
index 29d7445303..a2e31bedfc 100644
--- a/xml/src/test/java/com/ossez/xmlhtml/freemarker/FreemarkerTransformerUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xmlhtml/freemarker/FreemarkerTransformerUnitTest.java
@@ -1,6 +1,7 @@
-package com.ossez.xmlhtml.freemarker;
+package com.isharkfly.xmlhtml.freemarker;
-import com.ossez.xmlhtml.stax.StaxTransformer;
+import com.isharkfly.xmlhtml.freemarker.FreemarkerTransformer;
+import com.isharkfly.xmlhtml.stax.StaxTransformer;
import freemarker.template.TemplateException;
import org.junit.jupiter.api.Test;
diff --git a/xml/src/test/java/com/ossez/xmlhtml/jaxp/JaxpTransformerUnitTest.java b/xml-2/src/test/java/com/isharkfly/xmlhtml/jaxp/JaxpTransformerUnitTest.java
similarity index 92%
rename from xml/src/test/java/com/ossez/xmlhtml/jaxp/JaxpTransformerUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xmlhtml/jaxp/JaxpTransformerUnitTest.java
index f6831e803c..517315f103 100644
--- a/xml/src/test/java/com/ossez/xmlhtml/jaxp/JaxpTransformerUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xmlhtml/jaxp/JaxpTransformerUnitTest.java
@@ -1,5 +1,6 @@
-package com.ossez.xmlhtml.jaxp;
+package com.isharkfly.xmlhtml.jaxp;
+import com.isharkfly.xmlhtml.jaxp.JaxpTransformer;
import org.junit.jupiter.api.Test;
import org.xml.sax.SAXException;
diff --git a/xml/src/test/java/com/baeldung/xmlhtml/mustache/MustacheTransformerUnitTest.java b/xml-2/src/test/java/com/isharkfly/xmlhtml/mustache/MustacheTransformerUnitTest.java
similarity index 86%
rename from xml/src/test/java/com/baeldung/xmlhtml/mustache/MustacheTransformerUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xmlhtml/mustache/MustacheTransformerUnitTest.java
index b53a23d4fb..795bd14b98 100644
--- a/xml/src/test/java/com/baeldung/xmlhtml/mustache/MustacheTransformerUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xmlhtml/mustache/MustacheTransformerUnitTest.java
@@ -1,6 +1,7 @@
-package com.baeldung.xmlhtml.mustache;
+package com.isharkfly.xmlhtml.mustache;
-import com.baeldung.xmlhtml.stax.StaxTransformer;
+import com.isharkfly.xmlhtml.mustache.MustacheTransformer;
+import com.isharkfly.xmlhtml.stax.StaxTransformer;
import org.junit.jupiter.api.Test;
import javax.xml.stream.XMLStreamException;
diff --git a/xml/src/test/java/com/ossez/xmlhtml/stax/StaxTransformerUnitTest.java b/xml-2/src/test/java/com/isharkfly/xmlhtml/stax/StaxTransformerUnitTest.java
similarity index 84%
rename from xml/src/test/java/com/ossez/xmlhtml/stax/StaxTransformerUnitTest.java
rename to xml-2/src/test/java/com/isharkfly/xmlhtml/stax/StaxTransformerUnitTest.java
index 000f2ea70a..8b8de029e8 100644
--- a/xml/src/test/java/com/ossez/xmlhtml/stax/StaxTransformerUnitTest.java
+++ b/xml-2/src/test/java/com/isharkfly/xmlhtml/stax/StaxTransformerUnitTest.java
@@ -1,5 +1,7 @@
-package com.ossez.xmlhtml.stax;
+package com.isharkfly.xmlhtml.stax;
+import com.isharkfly.xmlhtml.stax.StaxTransformer;
+import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import javax.xml.stream.XMLStreamException;
@@ -12,6 +14,7 @@
public class StaxTransformerUnitTest {
+ @Disabled // JAVA-39223
@Test
public void givenXml_whenTransform_thenGetHtml() throws IOException, URISyntaxException, XMLStreamException {
String path = "src/test/resources/xmlhtml/notification.xml";
diff --git a/xml-2/src/test/resources/Customer1.xml b/xml-2/src/test/resources/Customer1.xml
new file mode 100644
index 0000000000..7f4fbc79af
--- /dev/null
+++ b/xml-2/src/test/resources/Customer1.xml
@@ -0,0 +1,16 @@
+
+
+
+ 12345
+ Stefan Jaeger
+
+
+ 234678
+
+
+
+ 234678
+
+ Davos Dorf
+
+
\ No newline at end of file
diff --git a/xml-2/src/test/resources/templates/freemarker.html b/xml-2/src/test/resources/templates/freemarker.html
new file mode 100644
index 0000000000..15ec7f9fff
--- /dev/null
+++ b/xml-2/src/test/resources/templates/freemarker.html
@@ -0,0 +1,11 @@
+
+
+
+
+${heading}
+
+
+${from}
+${content}
+
+
diff --git a/xml-2/src/test/resources/templates/template.mustache b/xml-2/src/test/resources/templates/template.mustache
new file mode 100644
index 0000000000..8c209843e1
--- /dev/null
+++ b/xml-2/src/test/resources/templates/template.mustache
@@ -0,0 +1,11 @@
+
+
+
+
+{{heading}}
+
+
+{{from}}
+{{content}}
+
+
diff --git a/xml-2/src/test/resources/xml/attribute.xml b/xml-2/src/test/resources/xml/attribute.xml
new file mode 100644
index 0000000000..c8fa3f1071
--- /dev/null
+++ b/xml-2/src/test/resources/xml/attribute.xml
@@ -0,0 +1,5 @@
+
+
+ john@email.com
+ mary@email.com
+
\ No newline at end of file
diff --git a/xml-2/src/test/resources/xml/attribute_expected.xml b/xml-2/src/test/resources/xml/attribute_expected.xml
new file mode 100644
index 0000000000..1d5d7b0cea
--- /dev/null
+++ b/xml-2/src/test/resources/xml/attribute_expected.xml
@@ -0,0 +1,5 @@
+
+
+ john@email.com
+ mary@email.com
+
\ No newline at end of file
diff --git a/xml-2/src/test/resources/xml/xee_attribute.xml b/xml-2/src/test/resources/xml/xee_attribute.xml
new file mode 100644
index 0000000000..2e98df076b
--- /dev/null
+++ b/xml-2/src/test/resources/xml/xee_attribute.xml
@@ -0,0 +1,9 @@
+
+ ]>
+
+ &xxe;
+
+ john@email.com
+ mary@email.com
+
\ No newline at end of file
diff --git a/xml-2/src/test/resources/xmlhtml/delhtmltags/example1.html b/xml-2/src/test/resources/xmlhtml/delhtmltags/example1.html
new file mode 100644
index 0000000000..43f3a22ef4
--- /dev/null
+++ b/xml-2/src/test/resources/xmlhtml/delhtmltags/example1.html
@@ -0,0 +1,15 @@
+
+
+
+ This is the page title
+
+
+
+ If the application X doesn't start, the possible causes could be:
+ 1. Maven is not installed.
+ 2. Not enough disk space.
+ 3. Not enough memory.
+
+
+
\ No newline at end of file
diff --git a/xml-2/src/test/resources/xmlhtml/delhtmltags/example2.html b/xml-2/src/test/resources/xmlhtml/delhtmltags/example2.html
new file mode 100644
index 0000000000..532eadc101
--- /dev/null
+++ b/xml-2/src/test/resources/xmlhtml/delhtmltags/example2.html
@@ -0,0 +1,22 @@
+
+
+
+ This is the page title
+
+
+
+
+ If the application X doesn't start, the possible causes could be:
+ 1.
+ Maven
+ is not installed.
+ 2. Not enough (<1G) disk space.
+ 3. Not enough (<64MB) memory.
+
+
+
\ No newline at end of file
diff --git a/xml-2/src/test/resources/xmlhtml/notification.html b/xml-2/src/test/resources/xmlhtml/notification.html
new file mode 100644
index 0000000000..4a0ef09c5d
--- /dev/null
+++ b/xml-2/src/test/resources/xmlhtml/notification.html
@@ -0,0 +1,11 @@
+
+
+
+
+Build #7 passed
+
+
+from: builds@baeldung.com
+Success: The Jenkins CI build passed
+
+
diff --git a/xml-2/src/test/resources/xmlhtml/notification.xml b/xml-2/src/test/resources/xmlhtml/notification.xml
new file mode 100644
index 0000000000..c3550d6f04
--- /dev/null
+++ b/xml-2/src/test/resources/xmlhtml/notification.xml
@@ -0,0 +1,6 @@
+
+
+ builds@baeldung.com
+ Build #7 passed
+ Success: The Jenkins CI build passed
+
\ No newline at end of file
diff --git a/xml/README.md b/xml/README.md
index a068817e65..583470cd83 100644
--- a/xml/README.md
+++ b/xml/README.md
@@ -4,11 +4,14 @@
### ç›¸å…³æ–‡ç« ï¼š
- [Intro to XPath with Java](https://www.baeldung.com/java-xpath)
-- [Introduction to JiBX](https://www.baeldung.com/jibx)
- [XML Libraries Support in Java](https://www.baeldung.com/java-xml-libraries)
- [Working with XML Files in Java Using DOM Parsing](https://www.baeldung.com/java-xerces-dom-parsing)
-- [Write an org.w3.dom.Document to a File](https://www.baeldung.com/java-write-xml-document-file)
-- [Modifying an XML Attribute in Java](https://www.baeldung.com/java-modify-xml-attribute)
-- [Convert XML to HTML in Java](https://www.baeldung.com/java-convert-xml-to-html)
- [Parsing an XML File Using StAX](https://www.baeldung.com/java-stax)
- [Parsing an XML File Using SAX Parser](https://www.baeldung.com/java-sax-parser)
+- [Remove HTML Tags Using Java](https://www.baeldung.com/java-remove-html-tags)
+- [Pretty-Print XML in Java](https://www.baeldung.com/java-pretty-print-xml)
+- [Validate an XML File Against an XSD File](https://www.baeldung.com/java-validate-xml-xsd)
+- [Converting JSON to XML in Java](https://www.baeldung.com/java-convert-json-to-xml)
+- [Convert an XML Object to a String in Java](https://www.baeldung.com/java-convert-xml-object-string)
+
+- More articles: [[next -->]](../xml-2)
diff --git a/xml/pom.xml b/xml/pom.xml
index b3a04f02ac..543caf140f 100644
--- a/xml/pom.xml
+++ b/xml/pom.xml
@@ -1,7 +1,7 @@
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
xml
${parent.version}
@@ -25,41 +25,31 @@
jaxen
${jaxen.version}