Skip to content

Commit 9ef63d7

Browse files
committed
HTM-1852 | HTM-1964: Upgrade to GeoTools 35.0 and re-instate GeoJSON extract
1 parent 6a24203 commit 9ef63d7

4 files changed

Lines changed: 39 additions & 43 deletions

File tree

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ SPDX-License-Identifier: MIT
101101
<maven.compiler.target>${java.version}</maven.compiler.target>
102102
<maven.compiler.release>${java.version}</maven.compiler.release>
103103
<project.build.outputTimestamp>2026-05-05T11:48:40Z</project.build.outputTimestamp>
104-
<geotools.version>35-RC</geotools.version>
104+
<geotools.version>35.0</geotools.version>
105105
<jts.version>1.20.0</jts.version>
106106
<okhttp.version>5.3.2</okhttp.version>
107107
<greenmail.version>2.1.8</greenmail.version>

src/main/resources/application.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ tailormap-api.features.wfs_count_exact=false
2929
tailormap-api.feature.info.maxitems=30
3030

3131
# see org.tailormap.api.controller.LayerExtractController.ExtractOutputFormat for valid values
32-
tailormap-api.extract.allowed-outputformats=csv,xlsx,shape,geopackage
32+
tailormap-api.extract.allowed-outputformats=csv,xlsx,shape,geopackage,geojson
3333
# any files older than this (in minutes) in the extract output directory will be deleted by a scheduled job, to prevent filling up the disk
3434
# tailormap-api.extract.cleanup-minutes=120
3535
# the (base) directory where the extract output files are stored, should be writable by the application

src/test/java/org/tailormap/api/controller/LayerExtractControllerIntegrationTest.java

Lines changed: 36 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,42 @@
55
*/
66
package org.tailormap.api.controller;
77

8+
import org.apache.poi.ss.usermodel.CellType;
9+
import org.apache.poi.ss.usermodel.Sheet;
10+
import org.apache.poi.ss.usermodel.Workbook;
11+
import org.apache.poi.ss.usermodel.WorkbookFactory;
12+
import org.awaitility.Awaitility;
13+
import org.junit.jupiter.api.BeforeEach;
14+
import org.junit.jupiter.api.MethodOrderer;
15+
import org.junit.jupiter.api.Test;
16+
import org.junit.jupiter.api.TestMethodOrder;
17+
import org.junit.jupiter.api.parallel.Execution;
18+
import org.junit.jupiter.api.parallel.ExecutionMode;
19+
import org.junitpioneer.jupiter.Stopwatch;
20+
import org.springframework.beans.factory.annotation.Autowired;
21+
import org.springframework.beans.factory.annotation.Value;
22+
import org.springframework.boot.webmvc.test.autoconfigure.AutoConfigureMockMvc;
23+
import org.springframework.http.MediaType;
24+
import org.springframework.security.test.context.support.WithMockUser;
25+
import org.springframework.test.web.servlet.MockMvc;
26+
import org.springframework.test.web.servlet.MvcResult;
27+
import org.tailormap.api.StaticTestData;
28+
import org.tailormap.api.annotation.PostgresIntegrationTest;
29+
30+
import java.io.ByteArrayInputStream;
31+
import java.io.InputStream;
32+
import java.nio.charset.StandardCharsets;
33+
import java.nio.file.Files;
34+
import java.nio.file.Path;
35+
import java.sql.Connection;
36+
import java.sql.DriverManager;
37+
import java.sql.PreparedStatement;
38+
import java.sql.ResultSet;
39+
import java.util.HashSet;
40+
import java.util.Set;
41+
import java.util.zip.ZipEntry;
42+
import java.util.zip.ZipInputStream;
43+
844
import static java.util.concurrent.TimeUnit.MINUTES;
945
import static java.util.concurrent.TimeUnit.SECONDS;
1046
import static org.hamcrest.MatcherAssert.assertThat;
@@ -30,42 +66,6 @@
3066
import static org.tailormap.api.controller.TestUrls.layerBegroeidTerreindeelPostgis;
3167
import static org.tailormap.api.controller.TestUrls.layerProxiedWithAuthInPublicApp;
3268

33-
import java.io.ByteArrayInputStream;
34-
import java.io.InputStream;
35-
import java.nio.charset.StandardCharsets;
36-
import java.nio.file.Files;
37-
import java.nio.file.Path;
38-
import java.sql.Connection;
39-
import java.sql.DriverManager;
40-
import java.sql.PreparedStatement;
41-
import java.sql.ResultSet;
42-
import java.util.HashSet;
43-
import java.util.Set;
44-
import java.util.zip.ZipEntry;
45-
import java.util.zip.ZipInputStream;
46-
import org.apache.poi.ss.usermodel.CellType;
47-
import org.apache.poi.ss.usermodel.Sheet;
48-
import org.apache.poi.ss.usermodel.Workbook;
49-
import org.apache.poi.ss.usermodel.WorkbookFactory;
50-
import org.awaitility.Awaitility;
51-
import org.junit.jupiter.api.BeforeEach;
52-
import org.junit.jupiter.api.MethodOrderer;
53-
import org.junit.jupiter.api.Test;
54-
import org.junit.jupiter.api.TestMethodOrder;
55-
import org.junit.jupiter.api.parallel.Execution;
56-
import org.junit.jupiter.api.parallel.ExecutionMode;
57-
import org.junitpioneer.jupiter.DisabledUntil;
58-
import org.junitpioneer.jupiter.Stopwatch;
59-
import org.springframework.beans.factory.annotation.Autowired;
60-
import org.springframework.beans.factory.annotation.Value;
61-
import org.springframework.boot.webmvc.test.autoconfigure.AutoConfigureMockMvc;
62-
import org.springframework.http.MediaType;
63-
import org.springframework.security.test.context.support.WithMockUser;
64-
import org.springframework.test.web.servlet.MockMvc;
65-
import org.springframework.test.web.servlet.MvcResult;
66-
import org.tailormap.api.StaticTestData;
67-
import org.tailormap.api.annotation.PostgresIntegrationTest;
68-
6969
@PostgresIntegrationTest
7070
@AutoConfigureMockMvc
7171
@Execution(ExecutionMode.CONCURRENT)
@@ -407,10 +407,6 @@ void should_export_large_filter_to_excel() throws Exception {
407407
}
408408
}
409409

410-
@DisabledUntil(
411-
date = "2026-06-01",
412-
reason =
413-
"This test relies on GeoTools 35.0 (or 34.4), see https://osgeo-org.atlassian.net/browse/GEOT-7894")
414410
@Test
415411
void should_export_large_filter_to_geojson() throws Exception {
416412
final String extractUrl = apiBasePath + layerBegroeidTerreindeelPostgis + extractPath + sseClientId;

src/test/resources/application.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ tailormap-api.admin.base-path=/api/admin
33
management.endpoints.web.base-path=/api/actuator
44
tailormap-api.new-admin-username=tm-admin
55
# see org.tailormap.api.controller.LayerExtractController.ExtractOutputFormat for valid values
6-
tailormap-api.extract.allowed-outputformats=csv,xlsx,shape,geopackage
6+
tailormap-api.extract.allowed-outputformats=csv,xlsx,shape,geopackage,geojson
77
# the number of features after which a progress report is sent back to the viewer, to update the progress bar
88
tailormap-api.extract.progress-report-interval=10
99
# any files older than this (in minutes) in the extract output directory will be deleted by a scheduled job, to prevent filling up the disk

0 commit comments

Comments
 (0)