diff --git a/geoportal-application/geoportal-harvester-war/pom.xml b/geoportal-application/geoportal-harvester-war/pom.xml
index cabc9276..5ed7553c 100644
--- a/geoportal-application/geoportal-harvester-war/pom.xml
+++ b/geoportal-application/geoportal-harvester-war/pom.xml
@@ -13,8 +13,8 @@
${project.build.directory}/endorsed
- 5.3.27
- 5.3.10.RELEASE
+ 5.3.37
+ 5.6.9
@@ -67,7 +67,7 @@
com.h2database
h2
- 2.2.220
+ 2.3.230
diff --git a/geoportal-application/geoportal-harvester-war/src/main/resources/config/hrv-beans.xml b/geoportal-application/geoportal-harvester-war/src/main/resources/config/hrv-beans.xml
index dc190db4..79a804e9 100644
--- a/geoportal-application/geoportal-harvester-war/src/main/resources/config/hrv-beans.xml
+++ b/geoportal-application/geoportal-harvester-war/src/main/resources/config/hrv-beans.xml
@@ -32,7 +32,7 @@
-
+
diff --git a/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/ISO19139_to_ArcGIS.xsl b/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/ISO19139_to_ArcGIS.xsl
index 40943306..bc0de9a9 100644
--- a/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/ISO19139_to_ArcGIS.xsl
+++ b/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/ISO19139_to_ArcGIS.xsl
@@ -74,7 +74,7 @@
-
+
@@ -82,7 +82,7 @@
-
+
@@ -90,7 +90,7 @@
-
+
@@ -98,6 +98,7 @@
+ -->
@@ -358,7 +359,7 @@
-
+
diff --git a/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/decodeiso19115-2.xslt b/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/decodeiso19115-2.xslt
index f5d1202b..01a45c3d 100644
--- a/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/decodeiso19115-2.xslt
+++ b/geoportal-commons/geoportal-commons-meta/src/main/resources/meta/decodeiso19115-2.xslt
@@ -14,6 +14,15 @@ description=
xdescription=
modified=
+
+
+resource.url=
+
+
+resource.url=
+
+
+
+
thumbnail.url=
bbox= ,
diff --git a/geoportal-connectors/geoportal-harvester-agp-publisher/src/main/java/com/esri/geoportal/harvester/agp/AgpOutputBroker.java b/geoportal-connectors/geoportal-harvester-agp-publisher/src/main/java/com/esri/geoportal/harvester/agp/AgpOutputBroker.java
index 955630cd..c20fccc9 100644
--- a/geoportal-connectors/geoportal-harvester-agp-publisher/src/main/java/com/esri/geoportal/harvester/agp/AgpOutputBroker.java
+++ b/geoportal-connectors/geoportal-harvester-agp-publisher/src/main/java/com/esri/geoportal/harvester/agp/AgpOutputBroker.java
@@ -356,7 +356,7 @@ public PublishingStatus publish(DataReference ref) throws DataOutputException {
// if the item url is the same as the resourceUrl, proceed.
// otherwise the metadata is for a sublayer, but the item is the parent
- if (resourceUrl.equals(itemEntry.url)) {
+ if (resourceUrl.toLowerCase().equals(itemEntry.url.toLowerCase())) {
ItemResponse response = updateItem(
itemEntry.id,
itemEntry.owner,
@@ -467,6 +467,20 @@ private ItemEntry searchForItem(String src_uri_s) throws URISyntaxException, IOE
QueryResponse search = client.search(String.format("url:%s", String.format("%s", src_uri_s)), 0, 0, token);
ItemEntry itemEntry = search != null && search.results != null && search.results.length > 0 ? search.results[0] : null;
+ // if no results found see if changing the case of /arcgis/ to /ArcGIS/ or vice versa in the src_uri_s does find it
+ if (itemEntry == null) {
+ String src_uri_s_alternative = "";
+ if (src_uri_s.contains("/arcgis/rest/services")) {
+ src_uri_s_alternative = src_uri_s.replace("/arcgis/rest/services", "/ArcGIS/rest/services");
+ } else if (src_uri_s.contains("/ArcGIS/rest/services")) {
+ src_uri_s_alternative = src_uri_s.replace("/ArcGIS/rest/services", "/arcgis/rest/services");
+ }
+ if (!src_uri_s_alternative.isBlank()) {
+ search = client.search(String.format("url:%s", String.format("%s", src_uri_s_alternative)), 0, 0, token);
+ itemEntry = search != null && search.results != null && search.results.length > 0 ? search.results[0] : null;
+ }
+ }
+
// if no results found and the source uri (src_uri_s) ends in /0, /1, ... this may be a sublayer
// look for the parent service
if (itemEntry == null) {