diff --git a/.classpath b/.classpath
index 8de1097..5cc23e2 100644
--- a/.classpath
+++ b/.classpath
@@ -1,12 +1,12 @@
-
+
-
+
@@ -35,5 +35,5 @@
-
+
diff --git a/.settings/com.gwtplugins.gdt.eclipse.core.prefs b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
index d98647e..b33f01f 100644
--- a/.settings/com.gwtplugins.gdt.eclipse.core.prefs
+++ b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
@@ -1,4 +1,4 @@
eclipse.preferences.version=1
-lastWarOutDir=/home/francescomangiacrapa/git/geoportal-data-viewer-app/target/geoportal-data-viewer-app-3.2.0-SNAPSHOT
+lastWarOutDir=/home/francescomangiacrapa/git/geoportal-data-viewer-app/target/geoportal-data-viewer-app-3.2.1-SNAPSHOT
warSrcDir=src/main/webapp
warSrcDirIsOutput=false
diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component
index 79712e1..eab82a9 100644
--- a/.settings/org.eclipse.wst.common.component
+++ b/.settings/org.eclipse.wst.common.component
@@ -1,5 +1,5 @@
-
+
@@ -46,8 +46,12 @@
-
-
+
+
+
+
+
+
@@ -95,7 +99,9 @@
-
+
+
+
@@ -143,7 +149,9 @@
-
+
+
+
@@ -191,7 +199,9 @@
-
+
+
+
@@ -239,7 +249,9 @@
-
+
+
+
@@ -287,7 +299,12 @@
-
+
+ uses
+
+
+
+
@@ -335,7 +352,9 @@
-
+
+
+
@@ -383,7 +402,9 @@
-
+
+
+
@@ -431,7 +452,9 @@
-
+
+
+
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a1d34d3..f10031c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,13 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [v3.2.1-SNAPSHOT] - 2023-02-03
+
+#### Fixes
+
+- [#24432] Reverting serialization LinkedHashMap to LinkedHashMap.
+- Improved Alert Ux in case of broken shared link
+
## [v3.2.0] - 2023-01-31
#### Enhancements
diff --git a/pom.xml b/pom.xml
index b9bdffc..326d1c0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -14,7 +14,7 @@
org.gcube.portlets.user
geoportal-data-viewer-app
war
- 3.2.0
+ 3.2.1-SNAPSHOT
GeoPortal Data Viewer App
The GeoPortal Data Viewer App is an application to access, discovery and navigate the Geoportal projects/documents by a Web-Map Interface
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java
index 1ce4008..528de4d 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java
@@ -64,6 +64,7 @@ import org.gcube.portlets.user.geoportaldataviewer.shared.gis.BaseMapLayer;
import org.gcube.portlets.user.geoportaldataviewer.shared.gis.GeoQuery;
import org.gcube.portlets.user.geoportaldataviewer.shared.gis.LayerItem;
+import com.github.gwtbootstrap.client.ui.Modal;
import com.github.gwtbootstrap.client.ui.Popover;
import com.github.gwtbootstrap.client.ui.constants.Placement;
import com.google.gwt.core.client.EntryPoint;
@@ -362,7 +363,7 @@ public class GeoportalDataViewer implements EntryPoint {
if (!ucdIds.contains(collId)) {
GWT.log("!! Collection " + collId + " is not available");
- Window.alert("Collection " + collId + " is not found.");
+ Window.alert("Collection " + collId + " not found.");
} else {
GCubeCollection toOpen = theConfig.getAvailableCollections().get(collId);
@@ -449,9 +450,22 @@ public class GeoportalDataViewer implements EntryPoint {
@Override
public void onFailure(Throwable caught) {
- Window.alert(caught.getMessage());
+ // Window.alert(caught.getMessage());
mainPanel.hidePanelDetails();
+ Modal errorModal = new Modal(true, true);
+ errorModal.setCloseVisible(true);
+ errorModal.setTitle("Oops...");
+ Image geoportalError = new Image(GNAImages.ICONS.warningError());
+ FlowPanel errorPanelMsg = new FlowPanel();
+ errorPanelMsg.getElement().addClassName("general_warning");
+ errorPanelMsg.add(geoportalError);
+ errorPanelMsg.add(new HTML("D4S GeoPortal"));
+ HTML erroMessage = new HTML(
+ "Oops something went wrong, either the project does not exist or it has not been published yet");
+ errorPanelMsg.add(erroMessage);
+ errorModal.add(errorPanelMsg);
+ errorModal.show();
}
@Override
@@ -779,8 +793,9 @@ public class GeoportalDataViewer implements EntryPoint {
//console.log("jsonObj: "+jsonObj);
return jsonObj;
}-*/;
+
// /**
-// * Handler popu closer.
+// * Handler popup closer.
// *
// * @param divId the div id
// * @param overlayId the overlay id
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerService.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerService.java
index b4d2e98..b1b4847 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerService.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerService.java
@@ -159,7 +159,7 @@ public interface GeoportalDataViewerService extends RemoteService {
* @param limit the limit
* @return the entry sets document for project ID
*/
- LinkedHashMap getEntrySetsDocumentForProjectID(String profileID, String projectID, int limit);
+ LinkedHashMap getEntrySetsDocumentForProjectID(String profileID, String projectID, int limit);
/**
* Gets the relationships for timeline.
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerServiceAsync.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerServiceAsync.java
index 8a69080..3f3f7bb 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerServiceAsync.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewerServiceAsync.java
@@ -70,7 +70,7 @@ public interface GeoportalDataViewerServiceAsync {
void getInitialConfiguration(AsyncCallback callback);
void getEntrySetsDocumentForProjectID(String profileID, String projectID, int limit,
- AsyncCallback> callback);
+ AsyncCallback> callback);
void getRelationshipsForTimeline(String profileID, String projectID, AsyncCallback> callback);
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/LayerManager.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/LayerManager.java
index 133246a..46553eb 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/LayerManager.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/LayerManager.java
@@ -930,7 +930,7 @@ public class LayerManager {
intFlex.setCellPadding(1);
intFlex.setCellSpacing(1);
if (projectDV.getTheDocument() != null) {
- LinkedHashMap map = projectDV.getTheDocument().getDocumentAsMap();
+ LinkedHashMap map = projectDV.getTheDocument().getDocumentAsMap();
// my-html-table
// intFlex.getElement().addClassName("my-html-table");
int i = 0;
@@ -1140,7 +1140,7 @@ public class LayerManager {
intFlex.setCellPadding(1);
intFlex.setCellSpacing(1);
if (projectDV.getTheDocument() != null) {
- LinkedHashMap map = projectDV.getTheDocument().getDocumentAsMap();
+ LinkedHashMap map = projectDV.getTheDocument().getDocumentAsMap();
// my-html-table
// intFlex.getElement().addClassName("my-html-table");
// int i = 0;
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/gis/OpenLayerMap.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/gis/OpenLayerMap.java
index 6e3d4f6..9d7d153 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/gis/OpenLayerMap.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/gis/OpenLayerMap.java
@@ -475,7 +475,7 @@ public abstract class OpenLayerMap {
ImageWms imageWMSSource = wmsLayer.getSource();
ImageWmsParams imageWMSParams = imageWMSSource.getParams();
- if (cqlFilterExpression == null || cqlFilterExpression.length()>MAX_LENGHT_CQL_FOR_GET_REQUEST) {
+ if (cqlFilterExpression == null || cqlFilterExpression.length() > MAX_LENGHT_CQL_FOR_GET_REQUEST) {
imageWMSParams.delete("CQL_FILTER");
} else {
imageWMSParams.set("CQL_FILTER", cqlFilterExpression);
@@ -483,13 +483,8 @@ public abstract class OpenLayerMap {
imageWMSSource.updateParams(imageWMSParams);
wmsLayer.setSource(imageWMSSource);
-
- wmsLayer.changed();
wmsLayer.changed();
-
- //map.addLayer(wmsLayer);
-
}
/**
@@ -647,7 +642,7 @@ public abstract class OpenLayerMap {
Style style = new Style();
StrokeOptions strokeOptions = new StrokeOptions();
- strokeOptions.setColor(new Color(255, 0, 0, 0.8));
+ strokeOptions.setColor(new Color(255, 69, 0, 0.8));
strokeOptions.setWidth(5);
Stroke stroke = new Stroke(strokeOptions);
stroke.setWidth(2);
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/GNAImages.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/GNAImages.java
index cabeb3f..511c501 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/GNAImages.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/GNAImages.java
@@ -59,7 +59,10 @@ public interface GNAImages extends ClientBundle {
@Source("spinner_clock.gif")
ImageResource spinnerClock();
- @Source("geoporta_error.png")
+ @Source("geoportal_error.png")
ImageResource geoportaServiceError();
+
+ @Source("warning_error.png")
+ ImageResource warningError();
}
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/geoporta_error.png b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/geoportal_error.png
similarity index 100%
rename from src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/geoporta_error.png
rename to src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/geoportal_error.png
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/warning_error.png b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/warning_error.png
new file mode 100644
index 0000000..801a01b
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/resources/warning_error.png differ
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/ProjectUtil.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/ProjectUtil.java
index ff4e3df..6de4d13 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/ProjectUtil.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/ProjectUtil.java
@@ -14,7 +14,7 @@ public class ProjectUtil {
if (document == null)
return htmlCode;
- Entry firstEntrySet = document.getFirstEntryOfMap();
+ Entry firstEntrySet = document.getFirstEntryOfMap();
if (firstEntrySet != null) {
htmlCode += firstEntrySet.getKey() + ": " + firstEntrySet.getValue() + "";
}
@@ -32,7 +32,7 @@ public class ProjectUtil {
if (document == null)
return htmlCode;
- Entry firstEntrySet = document.getFirstEntryOfMap();
+ Entry firstEntrySet = document.getFirstEntryOfMap();
if (firstEntrySet != null) {
htmlCode += showkey ? firstEntrySet.getKey() + ": " + firstEntrySet.getValue() + ""
: firstEntrySet.getValue();
@@ -51,7 +51,7 @@ public class ProjectUtil {
if (document == null)
return htmlCode;
- Entry firstEntrySet = document.getFirstEntryOfMap();
+ Entry firstEntrySet = document.getFirstEntryOfMap();
if (firstEntrySet != null) {
htmlCode += firstEntrySet.getKey() + ": " + firstEntrySet.getValue() + "";
}
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/relation/ViewRelationshipPanel.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/relation/ViewRelationshipPanel.java
index 127e5ee..ed093a3 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/relation/ViewRelationshipPanel.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/relation/ViewRelationshipPanel.java
@@ -121,7 +121,7 @@ public class ViewRelationshipPanel extends Composite {
firstProjectPanelContainer.clear();
secondProjectPanelContainer.clear();
- Entry firstEntrySet = project.getTheDocument().getFirstEntryOfMap();
+ Entry firstEntrySet = project.getTheDocument().getFirstEntryOfMap();
String htmlMsg = firstEntrySet.getKey() + ": " + firstEntrySet.getValue() + " (id: " + project.getId()
+ ")";
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/dandd/DragDropLayer.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/dandd/DragDropLayer.java
index 1ade90d..281262b 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/dandd/DragDropLayer.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/dandd/DragDropLayer.java
@@ -101,10 +101,10 @@ public class DragDropLayer extends FlowPanel {
labelProject.setTitle(referProjectID);
GeoportalDataViewerServiceAsync.Util.getInstance().getEntrySetsDocumentForProjectID(
layerObject.getProjectDV().getProfileID(), layerObject.getProjectDV().getId(), 1,
- new AsyncCallback>() {
+ new AsyncCallback>() {
@Override
- public void onSuccess(LinkedHashMap result) {
+ public void onSuccess(LinkedHashMap result) {
String realProjectName = "";
if (result != null) {
for (String key : result.keySet()) {
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/GeoportalDataViewerServiceImpl.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/GeoportalDataViewerServiceImpl.java
index 1d3643d..2f6dcbe 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/GeoportalDataViewerServiceImpl.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/GeoportalDataViewerServiceImpl.java
@@ -1111,7 +1111,7 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme
if (layerObject.getProjectDV().getTheDocument() == null) {
try {
- LinkedHashMap documentAsMap = getEntrySetsDocumentForProjectID(
+ LinkedHashMap documentAsMap = getEntrySetsDocumentForProjectID(
layerObject.getProfileID(), layerObject.getProjectID(), 1);
DocumentDV documentDV = new DocumentDV();
documentDV.setDocumentAsMap(documentAsMap);
@@ -1207,7 +1207,7 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme
});
if (loadDocument) {
- LinkedHashMap theDocument = getEntrySetsDocumentForProjectID(profileID, projectID,
+ LinkedHashMap theDocument = getEntrySetsDocumentForProjectID(profileID, projectID,
limitDocumentEntries);
DocumentDV docDV = new DocumentDV();
docDV.setDocumentAsMap(theDocument);
@@ -1256,11 +1256,11 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme
* @return the entry sets document for project ID
*/
@Override
- public LinkedHashMap getEntrySetsDocumentForProjectID(String profileID, String projectID,
+ public LinkedHashMap getEntrySetsDocumentForProjectID(String profileID, String projectID,
int limit) {
LOG.debug("called getEntrySetsDocumentForProjectID for profileID: " + profileID + ", projectID: " + projectID);
- LinkedHashMap documentAsMap = new LinkedHashMap(limit);
+ LinkedHashMap documentAsMap = new LinkedHashMap(limit);
try {
diff --git a/src/main/webapp/GeoportalDataViewer.css b/src/main/webapp/GeoportalDataViewer.css
index b0aa313..fb31c9b 100644
--- a/src/main/webapp/GeoportalDataViewer.css
+++ b/src/main/webapp/GeoportalDataViewer.css
@@ -720,11 +720,11 @@ Table Of Contents (TOC)
text-align: center;
font-size: 20px;
margin: 0;
- position: absolute;
- top: 50%;
+ position: absolute;
+ top: 50%;
width: 100%;
- -ms-transform: translateY(-50%);
- transform: translateY(-50%);
+ -ms-transform: translateY(-50%);
+ transform: translateY(-50%);
}
.general_error div {
@@ -732,6 +732,16 @@ Table Of Contents (TOC)
}
+.general_warning {
+ text-align: center;
+ font-size: 20px;
+}
+
+.general_warning div {
+ padding: 20px;
+}
+
+
/******************************
RESPONSIVE
*******************************/