From abd4849c944775cb9e0702bc2a041d55caccc90e Mon Sep 17 00:00:00 2001 From: "massimiliano.assante" Date: Thu, 31 Mar 2016 10:31:28 +0000 Subject: [PATCH] ported to liferay 6.2 git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/my-vres@126437 82a268e6-3cf1-43bd-a215-b396298e98cf --- .classpath | 4 +- ....eclipse.wst.common.project.facet.core.xml | 2 +- pom.xml | 28 +-- .../portlet/user/my_vres/client/MyVREs.java | 32 +--- .../my_vres/client/resources/GuidedTour.xml | 162 ----------------- .../client/resources/GuidedTour_IT.xml | 164 ------------------ .../client/resources/TourResources.java | 12 -- .../my_vres/client/widgets/ClickableVRE.java | 17 +- .../my_vres/server/MyVREsServiceImpl.java | 108 +++--------- .../gcube/portlet/user/my_vres/MyVREs.gwt.xml | 3 - src/main/webapp/WEB-INF/liferay-display.xml | 2 +- src/main/webapp/WEB-INF/liferay-portlet.xml | 2 +- src/main/webapp/WEB-INF/web.xml | 20 +-- 13 files changed, 66 insertions(+), 490 deletions(-) delete mode 100644 src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour.xml delete mode 100644 src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour_IT.xml delete mode 100644 src/main/java/org/gcube/portlet/user/my_vres/client/resources/TourResources.java diff --git a/.classpath b/.classpath index 94e3ad8..ab97d04 100644 --- a/.classpath +++ b/.classpath @@ -1,6 +1,6 @@ - + @@ -34,5 +34,5 @@ - + diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml index afd5d47..c57a49e 100644 --- a/.settings/org.eclipse.wst.common.project.facet.core.xml +++ b/.settings/org.eclipse.wst.common.project.facet.core.xml @@ -2,7 +2,7 @@ - + diff --git a/pom.xml b/pom.xml index 2a5e3b4..8bbc025 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ org.gcube.portlets.user my-vres war - 1.6.0-SNAPSHOT + 2.0.1-SNAPSHOT My VREs Portlet gCube My VREs Portlet shows only the VO and VREs a user is member of, divided by category. @@ -27,7 +27,7 @@ 2.7.0 distro - + 6.2.5 1.7 1.7 ${project.build.directory}/${project.build.finalName} @@ -50,44 +50,44 @@ com.google.gwt - gwt-user - ${gwtVersion} - + gwt-user + ${gwtVersion} + org.gcube.portlets.user - gcube-widgets + gcube-widgets + [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) org.gcube.portal custom-portal-handler + [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) org.gcube.common.portal portal-manager - - - org.gcube.applicationsupportlayer - accesslogger + [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) org.gcube.applicationsupportlayer aslcore - org.gcube.portlets.widgets - guided-tour-widget - [1.4.0-SNAPSHOT, 2.0.0-SNAPSHOT) + org.gcube.dvos + usermanagement-core + [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) com.liferay.portal portal-service + ${liferay.version} provided javax.portlet portlet-api provided - + diff --git a/src/main/java/org/gcube/portlet/user/my_vres/client/MyVREs.java b/src/main/java/org/gcube/portlet/user/my_vres/client/MyVREs.java index 09227e2..54c4a85 100644 --- a/src/main/java/org/gcube/portlet/user/my_vres/client/MyVREs.java +++ b/src/main/java/org/gcube/portlet/user/my_vres/client/MyVREs.java @@ -1,18 +1,12 @@ package org.gcube.portlet.user.my_vres.client; -import org.gcube.portlet.user.my_vres.client.resources.TourResources; -import org.gcube.portlets.widgets.guidedtour.client.GCUBEGuidedTour; -import org.gcube.portlets.widgets.guidedtour.client.GuidedTourResourceProvider; -import org.gcube.portlets.widgets.guidedtour.resources.client.GuidedTourResource; - import com.google.gwt.core.client.EntryPoint; -import com.google.gwt.core.client.GWT; -import com.google.gwt.core.client.RunAsyncCallback; -import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.RootPanel; /** - * Entry point classes define onModuleLoad(). + * + * @author massi + * */ public class MyVREs implements EntryPoint { @@ -21,24 +15,6 @@ public class MyVREs implements EntryPoint { */ public void onModuleLoad() { RootPanel.get("myVREsDIV").add(new VresPanel()); - showGuidedTour(); - } - - private void showGuidedTour() { - GWT.runAsync(GCUBEGuidedTour.class, new RunAsyncCallback() { - public void onSuccess() { - - GCUBEGuidedTour.showTour(MyVREs.class.getName(), new GuidedTourResourceProvider() { - @Override - public GuidedTourResource getResource() { - TourResources resources = GWT.create(TourResources.class); - return resources.quickTour(); - } - }); - } - public void onFailure(Throwable caught) { - Window.alert("Could not check show tour"); - } - }); + } } diff --git a/src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour.xml b/src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour.xml deleted file mode 100644 index 33fef33..0000000 --- a/src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour.xml +++ /dev/null @@ -1,162 +0,0 @@ - - - - Social Collaboration Facilities - http://goo.gl/SXwcjh - - BLUE - - - Overview - - -
- This portal offers three major facilities for collaboration: Collaboration Environments, Social Networking services, and Shared Workspace. -
-
- Collaboration Environments are dedicated working environments offering selected services - in addition to the social networking services and the shared workspace. Each environment serves a community. -
-
- Social networking services realize a shared status wall where users can post messages, share links and files with their coworkers.
-
- The Shared Workspace, is a service for managing files in the cloud. Through the workspace you can manage, upload and delete files as you wish. - You can share folders with any users you like so as to maximize collaboration among members. -
-
- Discover more about the Collaboration Facilities through this quick tour, click next. -
- - ]]> - -
- - - -
- - Join New - - -
-
- You can check the Collaboration Environments and the communities available on the System - by clicking on Join New in the top menu of this page. -
-
- For each Collaboration Environment you can ask to join. - Your request will be reviewed by a delegated person in the related community and approved (depending on the scope of the community). -
-
- You will be notified whether your request will be approved or not via email. While the request is in the approval phase the related icon will be listed as pending. -
-
- In some cases you could be added to a community automatically, should this happen you will be notified via email. -
-
- - ]]> - - -
- - - -
- - The Dockbar - - -
- The Dockbar is very important, it is always on the top of the page and contains 4 icons (links) always accessible as shown in the figure. -
-
- Each icon points to a key application of the System, please take few seconds to locate them (on your top-left corner of the page). -
-
-
    -
  • Home Social is the page behind this tour and contains your personalized news feed;
  • -
  • Workspace is the application for sharing your data and for your private cloud storage;
  • -
  • Messages allows you to exchange private messages with the other users of the System;
  • -
  • Notifications keeps you up-to-date to what is happening and it is related to you. To know how to tune/change how you get notified see the next step.
  • -
-
-
- Please note: whenever you receive a new notification or message the related icon gets red. -
- - ]]> - -
- - - -
- - Notification Settings - - -
- To open the Notification Settings go to the Notifications Page - and click Notification Settings (top-right). See the red rectangle in the figure to locate the settings. -
- - ]]> - - -
- Notification Settings are very fine grained. For each Notification type generated by the System you can choose whether to and how to get notified. -
-
- For each type of notification you can choose to be notified through this portal, via email or none (by clicking OFF). By default almost all the notification types are set to ON. -
- - ]]> - -
- - - - -
- - News Sharing - - -
- When posting a news you can use some useful features: -
- If you paste a link the System will try to create a preview of it. -
-
- If you want to post a file instead use the attachment icon and pick the file from your disk. -
-
- You can also use the “@” to mention someone. In this case the mentioned user will receive a notification. -
-
- Finally, if you want everyone in a group to be notified about your update, select the +notification to members in the "Share with" dropdown menu. - They will receive a notification about your post, unless they decided not to in their settings. -
-
- The tour is over, remember to click on the "Don't show this again" checkbox located at the bottom of this window to not make this popup appear in the future. Thank you for taking this tour. -
-
- - ]]> - -
- - - - -
-
-
\ No newline at end of file diff --git a/src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour_IT.xml b/src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour_IT.xml deleted file mode 100644 index 501038f..0000000 --- a/src/main/java/org/gcube/portlet/user/my_vres/client/resources/GuidedTour_IT.xml +++ /dev/null @@ -1,164 +0,0 @@ - - - - Social Collaboration Facilities - http://goo.gl/SXwcjh - - BLUE - - - Generale - - -
- Questo portale offre tre caratteristiche per la collaborazione: Ambienti Collaborativi, servizi per Social Networking ed un Workspace Condiviso. -
-
- Gli Ambienti Collaborativi sono ambienti di lavoro che offrono servizi selezionati in aggiunta a quelli di Social Networking - ed al workspace condiviso. Ogni ambiente serve una community. -
-
- I servizi di Social networking mettono a disposizione una bacheca virtuale dove gli utenti possono scrivere, condividere link e file tra di loro.
-
- Il Workspace Condiviso, è un servizio per gestire file nel Cloud. - Attraverso esso puoi gestire, caricare e cancellare file come meglio credi. - Puoi condividere cartelle con qualsiasi utente per massimizzare la collaborazione tra utenti. -
-
- Scopri di più attraverso questo tour virtuale, clicca su Next. -
- - ]]> - -
- - - -
- - Iscrizioni - - -
-
- Puoi vedere gli Ambienti Collaborativi e le community disponibili nel Sistema cliccando su "Join New" nel menu sotto questa pagina. -
-
- Per ogni Ambienti Collaborativo puoi chiedere la sottoscrizione. - La tua richiesta sarà assegnata ad una persona delegata dalla community ed approvata (a seconda dello scopo della community). -
-
- Sarai notificato sia che la richiesta venga approvata che no, via email. - Mentre la richiesta si trova in fase di approvazione l'icona relativa sarà segnalata come pendente (Pending). -
-
- In casi particolari potresti essere aggiunto automaticamente ad un ambiente, se questo succede verrai notificato via email. -
-
- - ]]> - - -
- - - -
- - La Dockbar - - -
- La Dockbar è molto importante, è sempre presente in alto e contiene 4 icone come mostrato in figura. -
-
- Ogni icona punta ad una applicazione del Sistema, per favore prenditi qualche secondo per capire dove si trova la Dockbar (in alto alla tua sinistra) -
-
-
    -
  • Home Social è la pagina dietro questo tour virtuale e contiene la tua bacheca personale (News Feed);
  • -
  • Workspace è l'applicazione per condividere i tuoi dati e per il tuo Cloud storage privato;
  • -
  • Messages permette di scambiare messaggi con gli altri utenti del sistema e di allegare grossi file dal workspace;
  • -
  • Notifications ti tiene aggiornato su cosa succede nel Sistema (relativo a te). - Per conoscere e personalizzare il modo in cui vieni notificato, guarda lo step successivo.
  • -
-
-
- Nota bene: quando ricevi una nuova notifica o messagio l'icona relativa diventa rossa. -
- - ]]> - -
- - - -
- - Notifiche - - -
- Per aprire le Impostazioni di Notifica vai alla pagina delle Notifiche - e clicca "Notification Settings" come mostrato in figura nel rettangolo rosso. -
- - ]]> - - -
- Le impostazioni sono molto personalizzabili. Per ogni tipo di Notifica generata dal Sistema puoi scegliere se e come essere notificato. -
-
- Per ogni tipo di Notifica puoi scegliere di essere notificato tramite questo portale, via email o nessuna notifica (cliccando OFF). - Di default quasi tutte le notifiche sono impostate ad ON. -
- - ]]> - -
- - - - -
- - Condividere News - - -
- Quando condividi una news puoi usare queste utility: -
- Se incolli un link il Sistema cercherà di crearne un'anteprima. -
-
- Per i file invece puoi usare l'icona di attachment. -
-
- Puoi anche usare la “@” per menzionare qualcuno. In questo caso "qualcuno" riceverà una notifica :)
-
- Inoltre, se vuoi che ognuno nel gruppo sia notificato a proposito del tuo post, seleziona la +notification to members nel "Share with" menu. - Gli utenti saranno notificati via email a meno che abbiano deciso di no nelle loro impostazioni. -
-
- Il Tour è finito, ricorda di cliccare "Don't show this again" qui in basso per non far apparire questo popup in futuro. Grazie per aver seguito il tour virtuale. -
-
- - ]]> - -
- - - - -
-
-
\ No newline at end of file diff --git a/src/main/java/org/gcube/portlet/user/my_vres/client/resources/TourResources.java b/src/main/java/org/gcube/portlet/user/my_vres/client/resources/TourResources.java deleted file mode 100644 index a837d53..0000000 --- a/src/main/java/org/gcube/portlet/user/my_vres/client/resources/TourResources.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.gcube.portlet.user.my_vres.client.resources; - -import org.gcube.portlets.widgets.guidedtour.resources.client.GuidedTourResource; - -import com.google.gwt.resources.client.ClientBundle; - -public interface TourResources extends ClientBundle { - - @Source("GuidedTour.xml") - GuidedTourResource quickTour(); - -} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlet/user/my_vres/client/widgets/ClickableVRE.java b/src/main/java/org/gcube/portlet/user/my_vres/client/widgets/ClickableVRE.java index eb4765d..6d714fe 100644 --- a/src/main/java/org/gcube/portlet/user/my_vres/client/widgets/ClickableVRE.java +++ b/src/main/java/org/gcube/portlet/user/my_vres/client/widgets/ClickableVRE.java @@ -6,6 +6,7 @@ import org.gcube.portlet.user.my_vres.shared.VRE; import com.google.gwt.core.client.GWT; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; +import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.Window.Location; import com.google.gwt.user.client.rpc.AsyncCallback; @@ -20,8 +21,8 @@ import com.google.gwt.user.client.ui.Image; */ public class ClickableVRE extends HTML { - private final static int WIDTH = 85; - private final static int HEIGHT = 95; + private final static int WIDTH = 90; + private final static int HEIGHT = 100; private String name; private String imageUrl; @@ -50,7 +51,17 @@ public class ClickableVRE extends HTML { addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { - Location.assign(vre.getFriendlyURL()); + String html = "
" + + "redirecting ..." + + "
"; + setHTML(html); + Timer timer = new Timer() { + @Override + public void run() { + Location.assign(vre.getFriendlyURL()); + } + }; + timer.schedule(50); } }); } diff --git a/src/main/java/org/gcube/portlet/user/my_vres/server/MyVREsServiceImpl.java b/src/main/java/org/gcube/portlet/user/my_vres/server/MyVREsServiceImpl.java index e56efc1..017e2bc 100644 --- a/src/main/java/org/gcube/portlet/user/my_vres/server/MyVREsServiceImpl.java +++ b/src/main/java/org/gcube/portlet/user/my_vres/server/MyVREsServiceImpl.java @@ -1,37 +1,31 @@ package org.gcube.portlet.user.my_vres.server; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.LinkedHashMap; import java.util.List; -import java.util.Properties; import javax.servlet.http.HttpSession; import org.gcube.application.framework.core.session.ASLSession; import org.gcube.application.framework.core.session.SessionManager; -import org.gcube.common.portal.PortalContext; -import org.gcube.portal.custom.communitymanager.OrganizationsUtil; -import org.gcube.portal.custom.communitymanager.impl.OrganizationManagerImpl; +import org.gcube.common.portal.GCubePortalConstants; import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper; import org.gcube.portlet.user.my_vres.client.MyVREsService; import org.gcube.portlet.user.my_vres.shared.UserBelonging; import org.gcube.portlet.user.my_vres.shared.VO; import org.gcube.portlet.user.my_vres.shared.VRE; +import org.gcube.vomanagement.usermanagement.GroupManager; +import org.gcube.vomanagement.usermanagement.impl.LiferayGroupManager; +import org.gcube.vomanagement.usermanagement.impl.LiferayUserManager; +import org.gcube.vomanagement.usermanagement.model.GCubeGroup; +import org.gcube.vomanagement.usermanagement.model.GCubeUser; +import org.gcube.vomanagement.usermanagement.model.VirtualGroup; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.gwt.user.server.rpc.RemoteServiceServlet; -import com.liferay.portal.kernel.servlet.ImageServletTokenUtil; -import com.liferay.portal.kernel.util.WebKeys; -import com.liferay.portal.model.Organization; -import com.liferay.portal.model.User; -import com.liferay.portal.service.OrganizationLocalServiceUtil; import com.liferay.portal.service.UserLocalServiceUtil; -import com.liferay.portal.theme.ThemeDisplay; /** * The server side implementation of the RPC service. @@ -46,19 +40,7 @@ public class MyVREsServiceImpl extends RemoteServiceServlet implements MyVREsSer * */ public static final String CACHED_VOS = "CACHED_VRES"; - /** - * - */ - public static final String ROOT_ORG = "rootorganization"; - private VO rootVO = new VO(); - - - - /** - * the current ASLSession - * @return the session - */ private ASLSession getASLSession() { String sessionID = this.getThreadLocalRequest().getSession().getId(); String user = (String) this.getThreadLocalRequest().getSession().getAttribute(ScopeHelper.USERNAME_ATTRIBUTE); @@ -97,59 +79,44 @@ public class MyVREsServiceImpl extends RemoteServiceServlet implements MyVREsSer else try { String username = getASLSession().getUsername(); - User currUser = OrganizationsUtil.validateUser(username); - - ThemeDisplay themeDisplay = (ThemeDisplay) this.getThreadLocalRequest().getSession().getAttribute(WebKeys.THEME_DISPLAY); + GroupManager gm = new LiferayGroupManager(); LinkedHashMap> toReturn = new LinkedHashMap>(); //before iterating the actual groups create the virtualGroups in the correct order - List virtualGroups = OrganizationManagerImpl.getVirtualGroups(); - for (String vg : virtualGroups) { - String[] splits = vg.split("\\|"); - String gName = splits[0]; + List virtualGroups = gm.getVirtualGroups(); + for (VirtualGroup vg : virtualGroups) { + String gName = vg.getName(); ArrayList toCreate = new ArrayList(); String cat = gName; toReturn.put(cat, toCreate); } - //start of iteration of the actual groups - List organizations = OrganizationLocalServiceUtil.getOrganizations(0, OrganizationLocalServiceUtil.getOrganizationsCount()); - Organization rootOrganization = null; - for (Organization organization : organizations) { - if (organization.getName().equals(PortalContext.getConfiguration().getInfrastructureName())) { - rootOrganization = organization; - break; - } - } - + GCubeGroup rootGroupVO = gm.getRootVO(); try { - _log.debug("root: " + rootOrganization.getName() ); + _log.debug("root: " + rootGroupVO.getGroupName() ); } catch (NullPointerException e) { _log.error("Cannot find root organziation, please check gcube-data.properties file in $CATALINA_HOME/conf folder, unless your installing the Bundle"); return toReturn; } //for each root sub organizations (VO) - for (Organization vOrg : rootOrganization.getSuborganizations()) { - for (Organization vre : vOrg.getSuborganizations()) { + for (GCubeGroup vOrg : rootGroupVO.getChildren()) { + for (GCubeGroup vre : vOrg.getChildren()) { VRE vreToAdd = new VRE(); - vreToAdd.setName(vre.getName()); - vreToAdd.setGroupName("/"+vOrg.getParentOrganization().getName()+"/"+vOrg.getName()+"/"+vre.getName()); - + vreToAdd.setName(vre.getGroupName()); + vreToAdd.setGroupName(gm.getInfrastructureScope(vre.getGroupId())); long logoId = vre.getLogoId(); - String logoURL = themeDisplay.getPathImage()+"/organization_logo?img_id="+ logoId +"&t" + ImageServletTokenUtil.getToken(logoId); + String logoURL = "/image/layout_set_logo?img_id="+ logoId; vreToAdd.setImageURL(logoURL); - - String vreUrl = vre.getGroup().getPathFriendlyURL(true, themeDisplay) + vre.getGroup().getFriendlyURL(); + String vreUrl = GCubePortalConstants.PREFIX_GROUP_URL+vre.getFriendlyURL(); vreToAdd.setFriendlyURL(vreUrl); - - //check if the user belongs to it - if (currUser.getOrganizations().contains(vre)) { + + vreToAdd.setUserBelonging(UserBelonging.NOT_BELONGING); + GCubeUser currUser = new LiferayUserManager().getUserByUsername(username); + if (gm.listGroupsByUser(currUser.getUserId()).contains(vre)) { vreToAdd.setUserBelonging(UserBelonging.BELONGING); - String catName = OrganizationManagerImpl.getVirtualGroupName(vre); - String[] splits = catName.split("\\|"); - catName = splits[0]; + String catName = gm.getVirtualGroup(vre.getGroupId()).getName(); //for preserving order we inserted the keys before if (toReturn.containsKey(catName)) { @@ -192,33 +159,6 @@ public class MyVREsServiceImpl extends RemoteServiceServlet implements MyVREsSer _log.trace("User login logged to: " + scope); } - /** - * read the root VO name from a property file and retuns it - */ - protected static String getRootOrganizationName() { - //get the portles to look for from the property file - Properties props = new Properties(); - String toReturn = "gcube"; - - try { - String propertyfile = OrganizationsUtil.getTomcatFolder()+"conf/gcube-data.properties"; - File propsFile = new File(propertyfile); - FileInputStream fis = new FileInputStream(propsFile); - props.load( fis); - toReturn = props.getProperty(ROOT_ORG); - } - //catch exception in case properties file does not exist - catch(IOException e) { - toReturn = "gcube"; - _log.error("gcube-data.properties file not found under $CATALINA_HOME/conf dir, returning default VO Name " + toReturn); - return toReturn; - } - _log.debug("Returning Root VO Name: " + toReturn ); - return toReturn; - } - - - /** * simply returns fake VREs for development purpose * @return diff --git a/src/main/resources/org/gcube/portlet/user/my_vres/MyVREs.gwt.xml b/src/main/resources/org/gcube/portlet/user/my_vres/MyVREs.gwt.xml index 31d2dc9..42c0ee3 100644 --- a/src/main/resources/org/gcube/portlet/user/my_vres/MyVREs.gwt.xml +++ b/src/main/resources/org/gcube/portlet/user/my_vres/MyVREs.gwt.xml @@ -4,9 +4,6 @@ - - - diff --git a/src/main/webapp/WEB-INF/liferay-display.xml b/src/main/webapp/WEB-INF/liferay-display.xml index 766d182..0d8e222 100644 --- a/src/main/webapp/WEB-INF/liferay-display.xml +++ b/src/main/webapp/WEB-INF/liferay-display.xml @@ -1,5 +1,5 @@ - + diff --git a/src/main/webapp/WEB-INF/liferay-portlet.xml b/src/main/webapp/WEB-INF/liferay-portlet.xml index 1ed850d..cf63eb3 100644 --- a/src/main/webapp/WEB-INF/liferay-portlet.xml +++ b/src/main/webapp/WEB-INF/liferay-portlet.xml @@ -1,5 +1,5 @@ - + diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 416dd8f..5e1ef90 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -1,8 +1,9 @@ - + http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" + version="3.0"> + greetServlet org.gcube.portlet.user.my_vres.server.MyVREsServiceImpl @@ -12,18 +13,7 @@ greetServlet /myvres/greet - - - - quicktourServlet - org.gcube.portlets.widgets.guidedtour.server.TourServiceImpl - - - - quicktourServlet - /myvres/quicktourServlet - - + MyVREs.html