Cleanup xalan and junit
- remove junit 4 - remove xalan 2.7.2
This commit is contained in:
parent
7637f030da
commit
42a38ea9a5
@ -6,9 +6,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [0.10.2] - 2022-09-09
|
||||
### Changed
|
||||
- remove junit 4
|
||||
- remove xalan 2.7.2
|
||||
|
||||
## [0.10.1] - 2022-09-02
|
||||
### Changed
|
||||
- fixes for sonarcube ce scan results
|
||||
- fixes for sonarqube ce scan results
|
||||
- add units tests for servlet with mokito
|
||||
|
||||
## [0.9.9] - 2022-06-18
|
||||
|
||||
16
pom.xml
16
pom.xml
@ -6,7 +6,7 @@
|
||||
|
||||
<groupId>de.pdv.apex</groupId>
|
||||
<artifactId>fop4apex</artifactId>
|
||||
<version>0.10.1-SNAPSHOT</version>
|
||||
<version>0.10.2-SNAPSHOT</version>
|
||||
<name>fop4apex</name>
|
||||
<packaging>war</packaging>
|
||||
<url>https://www.pdv.de</url>
|
||||
@ -25,12 +25,6 @@
|
||||
<version>4.0.1</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.13.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-api</artifactId>
|
||||
@ -65,6 +59,12 @@
|
||||
<artifactId>fop-core</artifactId>
|
||||
<version>2.7</version>
|
||||
<scope>compile</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>xalan</groupId>
|
||||
<artifactId>xalan</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
|
||||
<!-- https://mvnrepository.com/artifact/net.bull.javamelody/javamelody-core -->
|
||||
@ -158,7 +158,7 @@
|
||||
<plugin>
|
||||
<groupId>com.google.cloud.tools</groupId>
|
||||
<artifactId>jib-maven-plugin</artifactId>
|
||||
<version>3.3.0</version>
|
||||
<version>3.2.1</version>
|
||||
<configuration>
|
||||
<from>
|
||||
<image>compile.pdv.lan:8001/product/base/vis-tomcat:9.0</image>
|
||||
|
||||
@ -10,10 +10,8 @@ import javax.servlet.annotation.WebServlet;
|
||||
import javax.servlet.http.HttpServlet;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.xml.transform.Result;
|
||||
import javax.xml.transform.Source;
|
||||
import javax.xml.transform.Transformer;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.XMLConstants;
|
||||
import javax.xml.transform.*;
|
||||
import javax.xml.transform.sax.SAXResult;
|
||||
import javax.xml.transform.stream.StreamSource;
|
||||
import java.io.File;
|
||||
@ -30,9 +28,22 @@ import java.util.logging.Logger;
|
||||
public class PdfServlet extends HttpServlet {
|
||||
private static final Logger logger = Logger.getLogger(PdfServlet.class.getName());
|
||||
|
||||
private final TransformerFactory tFactory = TransformerFactory.newInstance();
|
||||
private static final TransformerFactory tFactory = TransformerFactory.newInstance();
|
||||
|
||||
// <editor-fold default state="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
|
||||
/**
|
||||
* Init the servlet and setup TransformerFactory
|
||||
*/
|
||||
@Override
|
||||
public void init() {
|
||||
try {
|
||||
tFactory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
|
||||
tFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
|
||||
tFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "");
|
||||
logger.info("TransformerFactory configured with FEATURE_SECURE_PROCESSING and without ACCESS_EXTERNAL_DTD/ACCESS_EXTERNAL_STYLESHEET");
|
||||
} catch (TransformerConfigurationException e) {
|
||||
logger.warning(String.format("TransformerConfigurationException while setup TransformerFactory - possible security issue: %s", e.getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles the HTTP <code>GET</code> method.
|
||||
@ -40,7 +51,7 @@ public class PdfServlet extends HttpServlet {
|
||||
* @param request servlet request
|
||||
* @param response servlet response
|
||||
*/
|
||||
@Override
|
||||
@Override
|
||||
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
|
||||
logger.log(Level.FINEST,"Finest output");
|
||||
logger.log(Level.FINER,"Finer output");
|
||||
@ -102,7 +113,6 @@ public class PdfServlet extends HttpServlet {
|
||||
FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
|
||||
// Construct fop with desired output format
|
||||
Fop fop = fopFactory.newFop(MIME_PDF, foUserAgent, response.getOutputStream());
|
||||
|
||||
Transformer transformer = tFactory.newTransformer( new StreamSource(new StringReader(templateFile)));
|
||||
// Set the value of a <param> in the stylesheet
|
||||
transformer.setParameter("versionParam", "2.0");
|
||||
|
||||
@ -49,6 +49,8 @@ class ExampleFO2PDFTest {
|
||||
// Setup JAXP using identity transformer
|
||||
TransformerFactory factory = TransformerFactory.newInstance();
|
||||
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
|
||||
factory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
|
||||
factory.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "");
|
||||
Transformer transformer = factory.newTransformer(); // identity transformer
|
||||
|
||||
// Setup input stream
|
||||
|
||||
@ -8,6 +8,7 @@ import org.apache.pdfbox.pdmodel.PDDocument;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import javax.xml.XMLConstants;
|
||||
import javax.xml.transform.Result;
|
||||
import javax.xml.transform.Source;
|
||||
import javax.xml.transform.Transformer;
|
||||
@ -60,6 +61,10 @@ class ExampleXML2PDFTest {
|
||||
|
||||
// Setup XSLT
|
||||
TransformerFactory factory = TransformerFactory.newInstance();
|
||||
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
|
||||
factory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
|
||||
factory.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "");
|
||||
|
||||
Transformer transformer = factory.newTransformer(new StreamSource(xsltFile));
|
||||
|
||||
// Set the value of a <param> in the stylesheet
|
||||
|
||||
@ -1,8 +1,9 @@
|
||||
package de.pdv.apex;
|
||||
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
@ -17,25 +18,26 @@ import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
public class PdfServletTest extends Mockito {
|
||||
class PdfServletTest extends Mockito {
|
||||
@Spy private PdfServlet servlet;
|
||||
@Mock private ServletConfig servletConfig;
|
||||
@Mock private HttpServletRequest request;
|
||||
@Mock private HttpServletResponse response;
|
||||
@Mock private ServletOutputStream outputStream;
|
||||
@Before
|
||||
|
||||
@BeforeEach
|
||||
public void setUp() {
|
||||
MockitoAnnotations.openMocks(this);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void assertThatNoMethodHasBeenCalled() {
|
||||
void assertThatNoMethodHasBeenCalled() {
|
||||
when(servlet.getServletConfig()).thenReturn(servletConfig);
|
||||
Mockito.verifyNoInteractions(servlet);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testServletGet() throws Exception {
|
||||
void doGet() throws Exception {
|
||||
when(servlet.getServletConfig()).thenReturn(servletConfig);
|
||||
when(response.getOutputStream()).thenReturn(outputStream);
|
||||
when(response.getWriter()).thenReturn(new PrintWriter(new StringWriter()));
|
||||
@ -47,7 +49,7 @@ public class PdfServletTest extends Mockito {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testServletPost() throws Exception {
|
||||
void doPost() throws Exception {
|
||||
PdfServletTest app = new PdfServletTest();
|
||||
InputStream xsltFile = app.getClass().getClassLoader().getResourceAsStream("samples/kostenblatt_2014.xsl");
|
||||
assert xsltFile != null;
|
||||
@ -67,4 +69,16 @@ public class PdfServletTest extends Mockito {
|
||||
System.out.println("Success!");
|
||||
}
|
||||
|
||||
@Test
|
||||
void init() {
|
||||
when(servlet.getServletConfig()).thenReturn(servletConfig);
|
||||
servlet.init();
|
||||
}
|
||||
|
||||
@Test
|
||||
void getServletInfo() {
|
||||
when(servlet.getServletConfig()).thenReturn(servletConfig);
|
||||
String s = servlet.getServletInfo();
|
||||
Assertions.assertEquals("APEX FOP Server",s);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user