diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component index 88e98e6..48ebd6c 100644 --- a/.settings/org.eclipse.wst.common.component +++ b/.settings/org.eclipse.wst.common.component @@ -1,5 +1,6 @@ - + + @@ -43,7 +44,8 @@ - + + @@ -87,7 +89,8 @@ - + + @@ -131,7 +134,8 @@ - + + @@ -175,7 +179,8 @@ - + + @@ -219,7 +224,8 @@ - + + @@ -263,7 +269,11 @@ - + + uses + + + @@ -307,7 +317,8 @@ - + + @@ -351,7 +362,8 @@ - + + @@ -395,7 +407,8 @@ - + + diff --git a/CHANGELOG.md b/CHANGELOG.md index d9d286d..5fcfdb4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - Reduced the BBOX when resolving a project by share link - GNA Project binding with automatically adding of the layers to Map - [#24390] Read the access policy from the fileset json section +- [#24432] Fixing serialization issue using LinkedHashMap instead of LinkedHashMap ## [v3.0.0] - 2022-11-28 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 523cd43..c142d36 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 @@ -168,6 +168,7 @@ public class GeoportalDataViewer implements EntryPoint { public void onFailure(Throwable caught) { RootPanel.get(APP_DIV).remove(loaderApp); Window.alert(caught.getMessage()); + RootPanel.get(APP_DIV).setHeight("800px"); RootPanel.get(APP_DIV).add(getGeneralErrorPanel()); } 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 7c1e751..a07e40f 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 @@ -158,7 +158,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 5e31f69..fac0a4d 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 @@ -69,7 +69,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 2d3c466..cb563fd 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 @@ -929,7 +929,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; @@ -953,6 +953,7 @@ public class LayerManager { } TemporalReferenceDV tempRef = projectDV.getTemporalReference(); + GWT.log("Temporal reference is: "+tempRef); if (tempRef != null) { flex.setHTML(flex.getRowCount() + 1, 0, ProjectUtil.toHTMLCode(tempRef)); @@ -1138,7 +1139,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/ui/cms/project/ProjectUtil.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/cms/project/ProjectUtil.java index 6de4d13..ff4e3df 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 ed093a3..127e5ee 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 5c962d2..65a22b8 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 @@ -66,10 +66,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 b1ea6d9..75d878b 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 @@ -894,8 +894,10 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme theProjectDV.setProfileName(ucd.getName()); TemporalReferenceDV temporalReference = temporalReferenceForProject(theProject); + if (temporalReference == null) temporalReference = new TemporalReferenceDV(); + theProjectDV.setTemporalReference(temporalReference); ProjectView projectView = Geoportal_JSON_Mapper.loadProjectView(theProjectDV, scope, userName); @@ -1102,7 +1104,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); @@ -1198,7 +1200,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); @@ -1247,11 +1249,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 { @@ -1267,7 +1269,7 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme break; Entry entry = entrySetsIt.next(); - documentAsMap.put(entry.getKey(), entry.getValue()); + documentAsMap.put(entry.getKey(), entry.getValue()!=null?entry.getValue().toString():null); i++; } diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/ItemFieldsResponse.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/ItemFieldsResponse.java index 258feab..780d55d 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/ItemFieldsResponse.java +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/ItemFieldsResponse.java @@ -8,12 +8,13 @@ import org.gcube.application.geoportalcommon.shared.geoportal.ucd.UseCaseDescrip public class ItemFieldsResponse implements Serializable { + /** * */ - private static final long serialVersionUID = -8778792633248190350L; - UseCaseDescriptorDV useCaseDescriptorDV; - List listItemFields; + private static final long serialVersionUID = -6723902864074541278L; + private UseCaseDescriptorDV useCaseDescriptorDV; + private List listItemFields; public ItemFieldsResponse() { diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/LayerObject.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/LayerObject.java index ce74757..bf1b803 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/LayerObject.java +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/LayerObject.java @@ -29,7 +29,6 @@ public class LayerObject implements Serializable { private ProjectDV projectDV; public LayerObject() { - super(); } public LayerObject(LayerObjectType type, LayerItem item) {