From ef6af406526642a1883744beb4b8c6293abc21db Mon Sep 17 00:00:00 2001 From: Olivier Maury <olivier.maury@inrae.fr> Date: Thu, 9 Nov 2023 17:43:45 +0100 Subject: [PATCH 1/2] =?UTF-8?q?Int=C3=A9grer=20les=20cr=C3=A9dits=20dans?= =?UTF-8?q?=20la=20carte.=20fixes=20#11?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/site/markdown/index.md | 26 +++++++++++++++++-- .../www/client/ui/map/ControlSuppliers.java | 18 ------------- .../www/client/ui/map/TileSuppliers.java | 2 +- .../agrometinfo/www/client/view/MapView.java | 17 +++++++----- 4 files changed, 36 insertions(+), 27 deletions(-) diff --git a/src/site/markdown/index.md b/src/site/markdown/index.md index 29e1ee4..14b50a8 100644 --- a/src/site/markdown/index.md +++ b/src/site/markdown/index.md @@ -19,7 +19,7 @@ sudo -u postgres psql -c "CREATE USER agrometinfo PASSWORD 'agrometinfo'" ``` 2. Create the database `` -createdb agrometinfo --encoding=UTF8 --lc-collate=fr_FR.UTF-8 --lc-ctype=fr_FR.UTF-8 --owner=agrometinfo +sudo -u postgres createdb agrometinfo --encoding=UTF8 --lc-collate=fr_FR.UTF-8 --lc-ctype=fr_FR.UTF-8 --owner=agrometinfo ``` 3. Adjust `pg_hba.conf` if needed 4. Add the password to `~/.pgpass` if wanted @@ -95,7 +95,29 @@ with `~/.m2/settings.xml` with something like: ### In Eclipse -Make sure `target/generated-sources/annotations` is in a folder for *www-shared* in Properties > Java Build Path > Sources. +- Make sure `target/generated-sources/annotations` is in a folder for *www-shared* in Properties > Java Build Path > Sources. +- Create a new server with Tomcat 10.1 and JDK 17. +- Configure `context.xml` for the embedded Tomcat. + +```xml + <Resource + name="jdbc/agrometinfo" + auth="Container" + driverClassName="org.postgresql.Driver" + initialSize="2" + maxTotal="10" + maxIdle="5" + maxWaitMillis="1000" + testOnBorrow="true" + testOnReturn="true" + testWhileIdle="true" + timeBetweenEvictionRunsMillis="5000" + type="javax.sql.DataSource" + url="jdbc:postgresql://127.0.0.1:5432/season?ApplicationName=AgroMetInfo&currentSchema=agrometinfo" + username="agrometinfo" + password="agrometinfo" + validationQuery="select 1" /> +``` If CodeServer fails to launch, use the script diff --git a/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/ControlSuppliers.java b/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/ControlSuppliers.java index 49a2858..ac247ef 100644 --- a/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/ControlSuppliers.java +++ b/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/ControlSuppliers.java @@ -7,7 +7,6 @@ import com.google.gwt.dom.client.LinkElement; import fr.agrometinfo.www.client.i18n.MapConstants; import ol.Collection; import ol.Extent; -import ol.control.AttributionOptions; import ol.control.Control; import ol.control.ControlOptions; import ol.control.FullScreen; @@ -36,28 +35,11 @@ public abstract class ControlSuppliers { final Collection<Control> controls = new Collection<>(); controls.insertAt(0, ControlSuppliers.createZoom()); controls.insertAt(0, ControlSuppliers.createInraeLogo()); - controls.insertAt(0, ControlSuppliers.createAttribution()); controls.insertAt(0, ControlSuppliers.createFullScreen()); controls.insertAt(0, ControlSuppliers.createLayerSwitcher()); return controls; } - /** - * To display the attribution in the map. - * - * @return attribution as a Control - */ - public static Control createAttribution() { - final AttributionOptions attributionOptions = new AttributionOptions(); - attributionOptions.setTipLabel(CSTS.mapAttributions()); - attributionOptions.setCollapsed(false); - attributionOptions.setCollapsible(false); - final ol.control.Attribution attributionControl = new ol.control.Attribution(attributionOptions); - final double attributeHeight = 1.5; - attributionControl.getElement().getStyle().setHeight(attributeHeight, com.google.gwt.dom.client.Style.Unit.EM); - return attributionControl; - } - /** * @return internationalized control to toggle full screen */ diff --git a/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/TileSuppliers.java b/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/TileSuppliers.java index fa5a045..0645d7a 100644 --- a/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/TileSuppliers.java +++ b/www-client/src/main/java/fr/agrometinfo/www/client/ui/map/TileSuppliers.java @@ -156,7 +156,7 @@ public abstract class TileSuppliers { /** * Attributions attribute. */ - private static final String ATTRIBUTIONS = "layer-attributions"; + public static final String ATTRIBUTIONS = "layer-attributions"; /** * I18n constants. diff --git a/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java b/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java index b06a050..d61b3b8 100644 --- a/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java +++ b/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java @@ -16,6 +16,7 @@ import elemental2.dom.HTMLDivElement; import elemental2.dom.HTMLElement; import fr.agrometinfo.www.client.i18n.MapConstants; import fr.agrometinfo.www.client.presenter.MapPresenter; +import fr.agrometinfo.www.client.ui.map.CanvasAttributions; import fr.agrometinfo.www.client.ui.map.ControlSuppliers; import fr.agrometinfo.www.client.ui.map.TileSuppliers; import fr.agrometinfo.www.client.util.ApplicationUtils; @@ -258,11 +259,11 @@ public final class MapView extends HtmlContentBuilder<HTMLElement> implements Ma return features; } - private ol.source.Vector createVectorSource(final Feature[] colorizedFeatures) { - final VectorOptions vectorSourceOptions = new VectorOptions(); - vectorSourceOptions.setFeatures(colorizedFeatures); - vectorSourceOptions.setAttributions(getAttributions()); - return new ol.source.Vector(vectorSourceOptions); + private VectorOptions createVectorOptions(final Feature[] colorizedFeatures) { + final VectorOptions options = new VectorOptions(); + options.setFeatures(colorizedFeatures); + options.setAttributions(getAttributions()); + return options; } private void createView() { @@ -299,6 +300,8 @@ public final class MapView extends HtmlContentBuilder<HTMLElement> implements Ma addOverlays(options); map = new Map(options); + map.render(); + new CanvasAttributions(map); // add some interactions removeContextMenuRightClick(); @@ -327,8 +330,10 @@ public final class MapView extends HtmlContentBuilder<HTMLElement> implements Ma return; } final Feature[] colorizedFeatures = colorizeFeatures(features); - final ol.source.Vector vectorSource = createVectorSource(colorizedFeatures); + final VectorOptions vectorSourceOptions = createVectorOptions(colorizedFeatures); + final ol.source.Vector vectorSource = new ol.source.Vector(vectorSourceOptions); vectorLayer = createVectorLayer(vectorSource); + vectorLayer.set(TileSuppliers.ATTRIBUTIONS, vectorSourceOptions.getAttributions()); map.addLayer(vectorLayer); map.addControl(ControlSuppliers.createZoomToExtent(vectorSource.getExtent())); view.fit(vectorSource.getExtent()); -- GitLab From 2dbd5225882c5fba368782b43d0e4c81fa12b908 Mon Sep 17 00:00:00 2001 From: Olivier Maury <olivier.maury@inrae.fr> Date: Thu, 9 Nov 2023 17:47:22 +0100 Subject: [PATCH 2/2] =?UTF-8?q?mentionner=20etalab-2.0=20dans=20les=20cr?= =?UTF-8?q?=C3=A9dits=20de=20la=20carte?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/fr/agrometinfo/www/client/view/MapView.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java b/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java index d61b3b8..2d320a6 100644 --- a/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java +++ b/www-client/src/main/java/fr/agrometinfo/www/client/view/MapView.java @@ -184,7 +184,7 @@ public final class MapView extends HtmlContentBuilder<HTMLElement> implements Ma * @return attributions for map. */ public static String getAttributions() { - return "© INRAE AgroClim - AgroMetInfo - " + ApplicationUtils.getVersion(); + return "© INRAE AgroClim - AgroMetInfo - " + ApplicationUtils.getVersion() + " (etalab-2.0)"; } private static double getValue(final Feature f) { -- GitLab