Feature #4096

Portlet for managing Surveys (D4Science - EDISON)

Added by Massimiliano Assante over 3 years ago. Updated over 2 years ago.

Status:ClosedStart date:Oct 26, 2016
Priority:UrgentDue date:Nov 18, 2016
Assignee:Costantino Perciante% Done:

100%

Category:portlets-admin
Sprint:zz - Manage Surveys Portlet Implementation
Milestones:
Duration: 18

Description

The Portlet (or Portlets) will be implemented in the context of a collaboration between D4Science and the EDISON project

SpecificaimplementazioneWebAppSurvey.pdf (187 KB) Massimiliano Assante, May 25, 2016 11:20 AM

Survey menu.PNG (9.53 KB) Pierpaolo Petriccione, Jun 20, 2016 01:00 PM

Survey.PNG (30.2 KB) Pierpaolo Petriccione, Jun 20, 2016 01:00 PM

craeateSurvey1.png (23.4 KB) Pierpaolo Petriccione, Jul 08, 2016 10:54 AM

craeateSurvey2.png (14.8 KB) Pierpaolo Petriccione, Jul 08, 2016 10:54 AM

homepage.png (9.79 KB) Pierpaolo Petriccione, Jul 08, 2016 10:54 AM

modifySurvey.png (21 KB) Pierpaolo Petriccione, Jul 08, 2016 10:54 AM

Screen Shot 2016-10-24 at 15.14.59.png (95.6 KB) Massimiliano Assante, Oct 24, 2016 04:07 PM

Specifiche_SurveyPortlet1.2.doc.zip (433 KB) Pierpaolo Petriccione, Dec 07, 2016 07:38 PM

454
455
535
536
537
538
773

Subtasks

Bug #5569: Survey Display portlet: Add All Members button bugClosedAlessandro Olivieri

Bug #5570: Survey Display portlet: Number of members filled survey i...ClosedAlessandro Olivieri

Feature #5571: Survey Display portlet: Users having already participated...ClosedAlessandro Olivieri

Feature #5572: Survey Manager portlet: Visibility of Surveys within a VREClosedAlessandro Olivieri

Feature #5573: Survey Manager portlet: user's answers dashboard problemClosedAlessandro Olivieri

Feature #5574: Survey Manager portlet: Shorten Open Questions ClosedMassimiliano Assante

Bug #5576: Survey Manager portlet: Problem with aggregated view of S...ClosedAlessandro Olivieri

Feature #5577: Survey Display portlet: minor issue for titleClosedAlessandro Olivieri

Feature #5578: Survey Display portlet: change invite email textClosedAlessandro Olivieri

Feature #5579: Survey Manager portlet: not possible to attach an image t...ClosedMassimiliano Assante

Feature #5581: Survey Manager portlet: not possible to add short answer ...ClosedAlessandro Olivieri

Feature #5582: Survey Manager portlet: not possible to download users' a...ClosedCostantino Perciante

Feature #5627: Survey Manager portlet: Surveys created within a VRE are ...ClosedAlessandro Olivieri

Feature #5628: Survey Display portlet: minor issue for title 2ClosedAlessandro Olivieri

Feature #5629: Survey Manager portlet: display Survey creation full name...ClosedMassimiliano Assante

Bug #5630: Survey display portlet: Visibility of Surveys within a VREClosedAlessandro Olivieri

Feature #5631: Limit to the number of possible answers in the GUIClosedAlessandro Olivieri

Feature #5642: Read Database Credentials from InfrastructureClosedMassimiliano Assante

Feature #5643: Set initial Expiry date to a month from creation dateClosedAlessandro Olivieri

Bug #5644: Survey Display portlet: Statistics are not recored anymoreClosedAlessandro Olivieri

Bug #5718: Created survey with multiple choices/checkboxes and no op...ClosedAlessandro Olivieri

Bug #5721: Survey display: access to a survey with a link that wasn'...ClosedCostantino Perciante

Feature #5780: Survey manager portlet: survey listed twice when deployin...ClosedCostantino Perciante

Feature #5783: Anonymous Survey's email notificationClosedMassimiliano Assante

Feature #5784: Slight modification to the survey email text notificationClosedCostantino Perciante

Bug #5787: Anonymous survey: exception when user is not loggedClosedCostantino Perciante

Bug #5829: Not anonymous survey: email's url is wrong and 'Please no...ClosedCostantino Perciante

Bug #5830: Survey display: replicated button "Send answers" is uselessClosedCostantino Perciante

Bug #5893: Survey compilation: confirmation email has a wrong recipientClosedCostantino Perciante

Feature #5894: Survey display: wrong message after survey compilationClosedAlessandro Olivieri


Related issues

Related to gCube - Release #8700: org.gcube.portlets-admin.survey-manager.1-0-0 Released May 19, 2017
Related to gCube - Release #8697: org.gcube.portlets-user.surveydisplay-portlet.1-1-0 Released May 19, 2017
Related to BlueBRIDGE - Task #8950: Please Evaluate/Feedback on usage of Survey application Rejected Jun 14, 2017 Jun 30, 2017

History

#2 Updated by Massimiliano Assante over 3 years ago

  • Start date changed from May 25, 2016 to May 23, 2016

#3 Updated by Massimiliano Assante over 3 years ago

During our last call with the ENG Edison team @ale.olivieri84@gmail.com proposed to use http://gwtmaterialdesign.github.io/gwt-material-demo/ basically a GWT wrapper over The Polymer (Material) Element Catalog.
As reported in the email exchange i was bit doubtful 'cause when we tried this in January/February (ver 1.4.1) we had troubles and had to find workarounds on things that were not working properly.

Yesterday I tried the new version (1.5.0) which seems much more stable and everything worked as expected, when I tried to publish a (gwt-material) portlet in our dev Liferay instance i found few css incompatibilities that I was able to fix in minutes.

Therefore, I think we can "relax" the constraint on the usage of GWT-Bootstrap (2.3.2) in favour of gwt-materia for the implementation of the Survey Manager Portlet(s). If Alessandro is still up for this of course.

#4 Updated by Pierpaolo Petriccione about 3 years ago

Screenshots attached to this post show the current state of the development. Please consider that it is not representative of the final product. We think to release final for second week of July.

#5 Updated by Massimiliano Assante about 3 years ago

@ale.olivieri84@gmail.com o @pierpaolo.petriccione@eng.it could we have an update on the status of this activity? It would be great to see some (preview) screenshot/videos of the current status so that we can make sure we're on the right track.

#6 Updated by Pierpaolo Petriccione about 3 years ago

absolutely!we appreciate any suggestions that will help us to enhance the final product or come up with any idea to resolve problems in time. All the best!

#7 Updated by Massimiliano Assante about 3 years ago

Thanks,
it seems that the "create Survey" part is at good point. I am guessing you plan to create 2 portlets, one for creating/managing surveys and one for compiling them (for end-users). Is this correct?

#8 Updated by Pierpaolo Petriccione about 3 years ago

  • % Done changed from 60 to 70

yes,it is. An administration portlet will assist you with creating surveys and managing users(invitation by email); a display portlet to show a selected survey.

#9 Updated by Massimiliano Assante about 3 years ago

thanks @ale.olivieri84@gmail.com for committing the code successfully on SVN gCube.

I was able to import your project very smoothly in my Eclipse and to build the portlet (usersurvey-portlet) in a minute. Just had to edit persistence.xml file to use our DB credentials (to be changed later) and GWT SDK in build path.

The portlet was deployed on our development portal https://next.d4science.org/group/devvre/survey-manager and it is possible to play with the interface a bit, but unfortunately it seems it does not create the necessary DB relations on startup if they do not exists. This is something required.

com.google.gwt.user.server.rpc.UnexpectedException: Service method 
'public abstract java.util.List it.eng.edison.usersurvey_portlet.client.GreetingService.getSurveyList()' 
threw an unexpected exception: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: ERROR: relation "survey" does not exist
  Position: 188

#10 Updated by Costantino Perciante about 3 years ago

About creating the necessary tables in the postgres database (if not existing) you can see the following class https://svn.research-infrastructures.eu/d4science/gcube/trunk/portlets/admin/create-users/src/main/java/org/gcube/portlets/admin/createusers/server/CreateUsersImpl.java check

private boolean tableExists(Connection con)
private void initializeTable(Connection con)

#11 Updated by Massimiliano Assante almost 3 years ago

@ale.olivieri84@gmail.com can you provide us with an update on the status of this portlet? Thanks!

#12 Updated by Alessandro Olivieri almost 3 years ago

Hi @massimiliano.assante@isti.cnr.it,
yesterday I've completed Surveys Portlet adding last implementations, I've committed it on your repository:
Create/Manage Portlet: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/usersurvey-portlet/
Invite/Answer Portlet: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/surveydisply-portlet/
(Can you delete old portlets present in https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/survey-portlet/ folder? Thanks)

You need to modify some parameters specified in the following files in order to install and use:
persistence.xml in both portlets;
DBCreate.java in usersurvey-portlet;
SendEmailToUsers.java in surveydisply-portlet.

I'm available for any help/clarification you may need.

Best regards!

#13 Updated by Massimiliano Assante almost 3 years ago

Ok, ... user/survey-portlet/ deleted

in the afternoon i'll try to compile and make them work on our instance, I'll give you feedback soon.

#15 Updated by Massimiliano Assante almost 3 years ago

  • Priority changed from Normal to High

Ciao Alessandro,
abbiamo iniziato a testare la portlet, creando qualche Survey con successo. E' però uscita questa eccezione (quando un utente registrato accede al survey) e il Survey non può essere compilato.

Sep 23, 2016 8:47:43 AM org.apache.catalina.core.ApplicationContext log
SEVERE: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.util.List it.eng.edison.usersurvey_portlet.client.GreetingService.getSurveyList(it.eng.edison.usersurvey_portlet.client.UserDTO)' threw an unexpected exception: javax.persistence.PersistenceException: [PersistenceUnit: SurveyLibPU] Unable to build EntityManagerFactory
    at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:579)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at sun.reflect.GeneratedMethodAccessor467.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:67)
    at com.sun.proxy.$Proxy647.doFilter(Unknown Source)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLoaderFilter.java:74)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
    at org.gcube.portal.threadlocalexec.SmartGearsPortalValve.invoke(SmartGearsPortalValve.java:29)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: SurveyLibPU] Unable to build EntityManagerFactory
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:915)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890)
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:57)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
    at it.eng.edison.usersurvey_portlet.server.GreetingServiceImpl.getSurveyList(GreetingServiceImpl.java:347)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
    ... 41 more
Caused by: org.hibernate.HibernateException: Connection cannot be null when 'hibernate.dialect' not set
    at org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:97)
    at org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:67)
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:170)
    at org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:75)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:159)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:77)
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2287)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2283)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1752)
    at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:94)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905)
    ... 51 more

#16 Updated by Alessandro Olivieri almost 3 years ago

Buongiorno Massimiliano,
riguarda i ruoli ho fatto una piccola modifica sia in GreetingServiceImpl.java che in Survey.java e l'ho committata in surveydisply-portlet. Se va bene la replico anche per la portlet di Manage. Se, invece, non dovesse andare bene potresti fornirmi un esempio da seguire? Grazie.

Sul numero di risposte possibili (i checkboxes ad esempio), si effettivamente c'è una limitazione. Se si supera il numero viene mostrato un alert a schermo e non viene data la possibilità di aggiungere altre risposte.

Ora controllo l'errore che mi hai mandato riguardante la persistenza e cerco di capirne la causa.

#17 Updated by Pasquale Pagano almost 3 years ago

La limitazione sul numero delle risposte è dovuta alla schema del DB che viene creato in modo statico e non dinamico. Pur considerando questa scelta alquanto discutibile dal punto di vista del design, andiamo avanti ma nascondiamola in modo più efficace. Aumentiamo questo limite da 10 a 20 almeno in modo da nasconderlo agli utenti. Grazie.

#18 Updated by Massimiliano Assante almost 3 years ago

  • Per quanto riguarda l'eccezione, una volta che appare non è poi più possibile usare la portlet a meno di un server restart.

  • Ho visto i cambiamenti per i ruoli, i role name label li puoi prendere dalla classe org.gcube.vomanagement.usermanagement.model.GCubeRole

    public final static String VRE_MANAGER_LABEL = "VRE-Manager";
    public final static String VRE_DESIGNER_LABEL = "VRE-Designer";
    public final static String VO_ADMIN_LABEL = "VRE-Designer";
    public final static String INFRA_MANAGER_LABEL = "Infrastructure-Manager";
    public final static String DATA_MANAGER_LABEL = "Data-Manager";

#19 Updated by Alessandro Olivieri almost 3 years ago

Pasquale Pagano wrote:

La limitazione sul numero delle risposte è dovuta alla schema del DB che viene creato in modo statico e non dinamico. Pur considerando questa scelta alquanto discutibile dal punto di vista del design, andiamo avanti ma nascondiamola in modo più efficace. Aumentiamo questo limite da 10 a 20 almeno in modo da nasconderlo agli utenti. Grazie.

Ok, va bene.

Massimiliano Assante wrote:

  • Per quanto riguarda l'eccezione, una volta che appare non è poi più possibile usare la portlet a meno di un server restart.

Sto cercando di capire da cosa potrebbe essere causata l'eccezione. Forse una dipendenza di maven: "hibernate-entitymanager". Ti aggiorno il prima possibile.

  • Ho visto i cambiamenti per i ruoli, i role name label li puoi prendere dalla classe org.gcube.vomanagement.usermanagement.model.GCubeRole
  public final static String VRE_MANAGER_LABEL = "VRE-Manager";
  public final static String VRE_DESIGNER_LABEL = "VRE-Designer";
  public final static String VO_ADMIN_LABEL = "VRE-Designer";
  public final static String INFRA_MANAGER_LABEL = "Infrastructure-Manager";
  public final static String DATA_MANAGER_LABEL = "Data-Manager";

Si si, ho preso i role name label proprio da lì.

#20 Updated by Alessandro Olivieri almost 3 years ago

Ho sostituito la vecchia dipendenza hibernate-entitymanager con la versione 4.3.11.Final.
Inoltre, nel persistence.xml ho sostituito org.hibernate.ejb.HibernatePersistence con org.hibernate.jpa.HibernatePersistenceProvider.
Fatemi sapere se il problema persiste.

Buon weekend

#21 Updated by Massimiliano Assante almost 3 years ago

Ciao Alessandro,
ho droppato il DB, e creato uno nuovo vuoto, ricompilato le portlet con i cambiamenti da te effettuati ma quanto gli utenti connessi al survey sono più di 1 è crashato di nuovo. Ti pregherei di fare dei test in questo senso. Di seguito l'eccezione nel server log.

p.s.
il trunk di usersurvey-portlet non compila, mancava un parametro alla chiamata a SendEmailToUsers, probabilmente si è perso in un update. Te l'ho comitata

[PORTAL] 1318542 [http-bio-9090-exec-129] WARN  org.hibernate.ejb.HibernatePersistence  - HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[PORTAL] 1318542 [http-bio-9090-exec-129] WARN  org.hibernate.ejb.HibernatePersistence  - HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[PORTAL] 1318542 [http-bio-9090-exec-129] WARN  org.hibernate.ejb.HibernatePersistence  - HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[PORTAL] 1318548 [http-bio-9090-exec-129] INFO  org.hibernate.jpa.internal.util.LogHelper  - HHH000204: Processing PersistenceUnitInfo [
    name: SurveyLibPU
    ...]
[PORTAL] 1318556 [http-bio-9090-exec-129] WARN  org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl  - HHH000402: Using Hibernate built-in connection pool (not for production use!)
[PORTAL] 1318556 [http-bio-9090-exec-129] INFO  org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl  - HHH000401: using driver [org.postgresql.Driver] at URL [jdbc:postgresql://localhost:5432/surveyTestCreation]
[PORTAL] 1318557 [http-bio-9090-exec-129] INFO  org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl  - HHH000046: Connection properties: {user=postgres, password=****}
[PORTAL] 1318557 [http-bio-9090-exec-129] INFO  org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl  - HHH000006: Autocommit mode: false
[PORTAL] 1318557 [http-bio-9090-exec-129] INFO  org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl  - HHH000115: Hibernate connection pool size: 20 (min=1)
Sep 26, 2016 12:59:13 PM org.apache.catalina.core.ApplicationContext log
SEVERE: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.util.List it.eng.edison.usersurvey_portlet.client.GreetingService.usersAnsweredSurvey()' threw an unexpected exception: javax.persistence.PersistenceException: Unable to build entity manager factory
    at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:579)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at sun.reflect.GeneratedMethodAccessor488.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:67)
    at com.sun.proxy.$Proxy658.doFilter(Unknown Source)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLoaderFilter.java:74)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
    at org.gcube.portal.threadlocalexec.SmartGearsPortalValve.invoke(SmartGearsPortalValve.java:29)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: javax.persistence.PersistenceException: Unable to build entity manager factory
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:83)
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:54)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
    at it.eng.edison.usersurvey_portlet.server.GreetingServiceImpl.usersAnsweredSurvey(GreetingServiceImpl.java:223)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
    ... 41 more
Caused by: org.hibernate.exception.JDBCConnectionException: Error calling Driver#connect
    at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator$1$1.convert(BasicConnectionCreator.java:122)
    at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator.convertSqlException(BasicConnectionCreator.java:140)
    at org.hibernate.engine.jdbc.connections.internal.DriverConnectionCreator.makeConnection(DriverConnectionCreator.java:58)
    at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator.createConnection(BasicConnectionCreator.java:75)
    at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.configure(DriverManagerConnectionProviderImpl.java:106)
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206)
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.buildJdbcConnectionAccess(JdbcServicesImpl.java:260)
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:94)
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206)
    at org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1887)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:857)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850)
    at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:425)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:849)
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:75)
    ... 50 more
Caused by: org.postgresql.util.PSQLException: FATAL: sorry, too many clients already
    at org.postgresql.core.v3.ConnectionFactoryImpl.doAuthentication(ConnectionFactoryImpl.java:293)
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:108)
    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
    at org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:125)
    at org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
    at org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
    at org.postgresql.Driver.makeConnection(Driver.java:393)
    at org.postgresql.Driver.connect(Driver.java:267)
    at org.hibernate.engine.jdbc.connections.internal.DriverConnectionCreator.makeConnection(DriverConnectionCreator.java:55)
    ... 67 more


#23 Updated by Alessandro Olivieri almost 3 years ago

Ok grazie mille

#24 Updated by Alessandro Olivieri almost 3 years ago

Salve,
quando vi è possibile potreste attivare il servizio di email, dovrei testare il funzionamento dell'invio dei questionari.
Grazie mille

#25 Updated by Massimiliano Assante almost 3 years ago

è attivo da ora

 * Starting Postfix Mail Transport Agent postfix                

#26 Updated by Alessandro Olivieri almost 3 years ago

Ok grazie!
Potresti passarmi i parametri del server mail da inserire nel pannello di controllo del server?

#27 Updated by Massimiliano Assante almost 3 years ago

Non è necessario inserire nessun parametro se usi il nostro Centralised_Email_Manager (lo dovresti già usare)

https://wiki.gcube-system.org/gcube/Portal_Context#Centralised_Email_Manager

#28 Updated by Alessandro Olivieri almost 3 years ago

Si si Massimiliano, sto usando proprio il Centralised_Email_Manager.
Però c'è qualcosa che non va.
Questo è il metodo che sto utilizzando

public void sendInviteEmail(String UrlWithoutParams, String uuid, String email, HttpServletRequest request) throws IllegalArgumentException {

        String emailSubject = "You are invited to fill a survey";

        EmailNotification mailToSend = new EmailNotification(
                email , 
                emailSubject, 
                getTextEmail(UrlWithoutParams, uuid, email, PortalContext.getConfiguration().getSenderEmail(request)), 
                request);
        mailToSend.sendEmail();
    }

e questo è un frammento del log

12:57:13,689 TRACE [http-bio-9090-exec-507][LiferayGroupManager:544] Attribute found: Emailsender trying read value
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
DEBUG: Exception loading provider, THROW:
java.lang.NoSuchMethodException: com.sun.mail.smtp.SMTPTransport.<init>(javax.mail.Session, javax.mail.URLName)
        at java.lang.Class.getConstructor0(Class.java:2902)
        at java.lang.Class.getConstructor(Class.java:1731)
        at javax.mail.Session.getService(Session.java:813)
        at javax.mail.Session.getTransport(Session.java:742)
        at javax.mail.Session.getTransport(Session.java:682)
        at javax.mail.Session.getTransport(Session.java:662)
        at javax.mail.Session.getTransport(Session.java:719)
        at javax.mail.Transport.send0(Transport.java:248)
        at javax.mail.Transport.send(Transport.java:124)
        at org.gcube.common.portal.mailing.EmailNotification.sendEmail(EmailNotification.java:140)
        at it.eng.edison.usersurvey_portlet.server.util.SendEmailToUsers.sendInviteEmail(SendEmailToUsers.java:54)
        at it.eng.edison.usersurvey_portlet.server.util.SendEmailToUsers.<init>(SendEmailToUsers.java:40)
        at it.eng.edison.usersurvey_portlet.server.GreetingServiceImpl.sendSurveyToUsers(GreetingServiceImpl.java:679)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
        at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
        at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
        at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
        at sun.reflect.GeneratedMethodAccessor1230.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:67)
        at com.sun.proxy.$Proxy722.doFilter(Unknown Source)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
        at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLoaderFilter.java:74)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
        at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
        at org.gcube.portal.threadlocalexec.SmartGearsPortalValve.invoke(SmartGearsPortalValve.java:29)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:745)
javax.mail.NoSuchProviderException: smtp
        at javax.mail.Session.getService(Session.java:820)
        at javax.mail.Session.getTransport(Session.java:742)
        at javax.mail.Session.getTransport(Session.java:682)
        at javax.mail.Session.getTransport(Session.java:662)
        at javax.mail.Session.getTransport(Session.java:719)
        at javax.mail.Transport.send0(Transport.java:248)
        at javax.mail.Transport.send(Transport.java:124)
        at org.gcube.common.portal.mailing.EmailNotification.sendEmail(EmailNotification.java:140)
        at it.eng.edison.usersurvey_portlet.server.util.SendEmailToUsers.sendInviteEmail(SendEmailToUsers.java:54)
        at it.eng.edison.usersurvey_portlet.server.util.SendEmailToUsers.<init>(SendEmailToUsers.java:40)
        at it.eng.edison.usersurvey_portlet.server.GreetingServiceImpl.sendSurveyToUsers(GreetingServiceImpl.java:679)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
        at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
        at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
        at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

#29 Updated by Massimiliano Assante almost 3 years ago

che dipendenza hai nel pom per javax.mail? Questa?

    <!-- logging and mailing -->
            <dependency>
                <groupId>com.sun.mail</groupId>
                <artifactId>javax.mail</artifactId>
                <version>1.5.2</version> <-- non necessario se usi il nostro BOM
                <scope>provided</scope>
            </dependency>

#30 Updated by Alessandro Olivieri almost 3 years ago

Ne avevo un'altra nel pom.
Ho inserito quella che mi hai segnalato ed ha funzionato.

Grazie

#31 Updated by Massimiliano Assante almost 3 years ago

Ciao Alessandro, nell'inizio della settimana prossima vorremmo iniziare il testing delle due portlet (Survey Admin e Display) nel nostro ambiente di preproduzione. Proveremo a inoltrare Survey a circa 15-20 persone.
Per favore (qualora non l'avessi già fatto) assicurati che il codice su SVN sia up-to-date.

#32 Updated by Alessandro Olivieri almost 3 years ago

Ciao Massimiliano,
il codice è up-to-date, puoi partire con il testing.

Nei seguenti files ci sono le informazioni per creare le tabelle ed accedere al DB:
DBCreate.java in usersurvey-portlet;
persistence.xml in entrambe le portlets.

#33 Updated by Massimiliano Assante almost 3 years ago

@ale.olivieri84@gmail.com abbiamo notato che è possibile mandare lo stesso survey (non anonimo) alla stessa persona N volte, e questa viene conteggiata (sembra) N volte nei risultati (vedi screenshot in allegato)

#34 Updated by Alessandro Olivieri almost 3 years ago

@massimiliano.assante@isti.cnr.it buongiorno.
Ho fatto una modifica al volo ed ora, anche se si aggiunge più volte lo stesso utente alla lista degli inviti recuperandolo dalla SuggestBox, l'utente in questione riceverà un'unica mail e potrà rispondere una sola volta alla Survey.

#35 Updated by Massimiliano Assante almost 3 years ago

grazie @ale.olivieri84@gmail.com , l'ideale sarebbe poter vedere inoltre la lista degli utenti che sono stati invitati, ad ogni modo mi confermi che il codice su SVN è aggiornato con l'ultimo fix degli utenti?

#36 Updated by Alessandro Olivieri almost 3 years ago

Ciao @massimiliano.assante@isti.cnr.it, ti confermo che il codice su SVN è aggiornato all'ultimo fix degli utenti.
Mi metto a lavoro per mostrare a video la lista di utenti che sono stati invitati alla survey.

#37 Updated by Massimiliano Assante almost 3 years ago

grazie @ale.olivieri84@gmail.com procedo con l'aggiornamento allora ed il testing.

Un'altra feature gradita sarebbe deployare la Survey Display portlet in una pagina di un Site/VRE (Pubblica o Privata a seconda del sondaggio anonimo o meno) attraverso Liferay API e fornire all'amministratore del Survey il link diretto. Difatto per evitare che il creatore del Survey non debba aggiungere la Survey Display portlet a mano al layout del Site. Nel Survey Manager si aggiungerebbe un Get Survey Link button.
Se il requisito è chiaro, per favore valuta insieme a @pierpaolo.petriccione@eng.it se è possibile aggiungerla, altrimenti la possiamo aggiungere noi.

#38 Updated by Massimiliano Assante almost 3 years ago

La issue per il cambiamento del testo email è stata aggiunta come ticket separato collegato a questo:

https://support.d4science.org/issues/5578

#39 Updated by Alessandro Olivieri almost 3 years ago

@massimiliano.assante@isti.cnr.it,
stamattina stiamo avendo problemi a buildare con maven.

Dovrebbe essere la mancanza di org.gcube.distribution:maven-portal-bom:pom:3.1.0-4.1.0-132989 in http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-releases.

#40 Updated by Massimiliano Assante almost 3 years ago

aggiungo @mariaantonietta.digirolamo@eng.it e @gabriele.giammatteo@eng.it che si occupano del maven repo

Cmq il repo /gcube-releases non dovreste averlo nel settings.xml di mvn, dovreste usare solo Gcube-Snapshot repo

#41 Updated by Alessandro Olivieri almost 3 years ago

Ok grazie mille, ora esegue la build.
In ogni caso abbiamo sempre utilizzato la configurazione che ci avete fornito.

#42 Updated by Gabriele Giammatteo almost 3 years ago

Sì confermo, per gli sviluppatori il settings.xml dovrebbe essere quello che appare qui: https://wiki.gcube-system.org/gcube/Developing_gCube_Maven_Components#Dependencies con solo snapshots and externals

#43 Updated by Alessandro Olivieri almost 3 years ago

Massimiliano Assante wrote:

grazie @ale.olivieri84@gmail.com , l'ideale sarebbe poter vedere inoltre la lista degli utenti che sono stati invitati, ad ogni modo mi confermi che il codice su SVN è aggiornato con l'ultimo fix degli utenti?

@massimiliano.assante@isti.cnr.it ho inserito la lista nella pagina di invito alla survey.
Tutto committato.

#44 Updated by Massimiliano Assante almost 3 years ago

  • Due date changed from Nov 09, 2016 to Nov 18, 2016

due to changes in a related task

#45 Updated by Alessandro Olivieri almost 3 years ago

Il codice della portlet è stato caricato sul trunk ed è pronto per la prossima build.

#46 Updated by Costantino Perciante almost 3 years ago

Dopo aver fatto svn-update degli ultimi aggiornamenti da trunk (mi risulta usersurvey-portlet 28/11/16 alle 12:50 e surveydisplay-portlet alle 13:11 del 28/11/16), cancellato il database e rideployato le portlet, ho questo errore

2016-11-28 14:00:25,983 INFO  scopehelper.ScopeHelper [http-bio-9090-exec-116,setAuthorizationToken:150] %14:00:25,983 INFO  [http-bio-9090-exec-116][ScopeHelper:150] Security token set in session for: costantino.perciante on /gcube/devNext/NextNext
[PORTAL] 0    [http-bio-9090-exec-94] WARN org.hibernate.ejb.HibernatePersistence  - HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[PORTAL] 2    [http-bio-9090-exec-94] WARN org.hibernate.ejb.HibernatePersistence  - HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[PORTAL] 2    [http-bio-9090-exec-94] WARN org.hibernate.ejb.HibernatePersistence  - HHH015016: Encountered a deprecated javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; use [org.hibernate.jpa.HibernatePersistenceProvider] instead.
[PORTAL] 315  [http-bio-9090-exec-94] INFO org.hibernate.jpa.internal.util.LogHelper  - HHH000204: Processing PersistenceUnitInfo [
    name: SurveyLibPU
    ...]
[PORTAL] 443  [http-bio-9090-exec-94] INFO  org.hibernate.Version - HHH000412: Hibernate Core {4.3.11.Final}
[PORTAL] 446  [http-bio-9090-exec-94] INFO org.hibernate.cfg.Environment  - HHH000206: hibernate.properties not found
[PORTAL] 448  [http-bio-9090-exec-94] INFO org.hibernate.cfg.Environment  - HHH000021: Bytecode provider name : javassist
[PORTAL] 720  [http-bio-9090-exec-94] INFO org.hibernate.annotations.common.Version  - HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
[PORTAL] 777  [http-bio-9090-exec-94] WARN org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl - HHH000402: Using Hibernate built-in connection pool (not for production use!)
[PORTAL] 778  [http-bio-9090-exec-94] INFO org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl - HHH000401: using driver [org.postgresql.Driver] at URL [jdbc:postgresql://localhost:5432/surveyTestCreation]
[PORTAL] 778  [http-bio-9090-exec-94] INFO org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl - HHH000046: Connection properties: {user=infra_dev, password=****}
[PORTAL] 778  [http-bio-9090-exec-94] INFO org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl - HHH000006: Autocommit mode: false
[PORTAL] 780  [http-bio-9090-exec-94] INFO org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl - HHH000115: Hibernate connection pool size: 20 (min=1)
[PORTAL] 1056 [http-bio-9090-exec-94] INFO org.hibernate.dialect.Dialect  - HHH000400: Using dialect: org.hibernate.dialect.PostgreSQLDialect
[PORTAL] 1071 [http-bio-9090-exec-94] INFO org.hibernate.engine.jdbc.internal.LobCreatorBuilder  - HHH000423: Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
[PORTAL] 1306 [http-bio-9090-exec-94] INFO org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory  - HHH000397: Using ASTQueryTranslatorFactory
[PORTAL] 1378 [http-bio-9090-exec-94] INFO org.hibernate.validator.internal.util.Version  - HV000001: Hibernate Validator 4.3.2.Final
[PORTAL] 1902 [http-bio-9090-exec-94] INFO org.hibernate.tool.hbm2ddl.SchemaValidator  - HHH000229: Running schema validator
[PORTAL] 1902 [http-bio-9090-exec-94] INFO org.hibernate.tool.hbm2ddl.SchemaValidator  - HHH000102: Fetching database metadata
[PORTAL] 1918 [http-bio-9090-exec-94] INFO java.sql.DatabaseMetaData  - HHH000262: Table not found: Choiceanswer
Nov 28, 2016 2:00:29 PM org.apache.catalina.core.ApplicationContext log
SEVERE: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract void it.eng.edison.usersurvey_portlet.client.GreetingService.checkDBisCreated()' threw an unexpected exception: javax.persistence.PersistenceException: Unable to build entity manager factory
    at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:579)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at sun.reflect.GeneratedMethodAccessor428.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:67)
    at com.sun.proxy.$Proxy731.doFilter(Unknown Source)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:165)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLoaderFilter.java:74)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:204)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:109)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
    at org.gcube.portal.threadlocalexec.SmartGearsPortalValve.invoke(SmartGearsPortalValve.java:69)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: javax.persistence.PersistenceException: Unable to build entity manager factory
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:83)
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:54)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
    at it.eng.edison.usersurvey_portlet.server.GreetingServiceImpl.checkDBisCreated(GreetingServiceImpl.java:717)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:561)
    ... 41 more
Caused by: org.hibernate.HibernateException: Missing table: Choiceanswer
    at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1335)
    at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:175)
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:525)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1859)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:857)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850)
    at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:425)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:849)
    at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:75)
    ... 50 more 

sembra che lo schema del db non venga per niente ricreato

#47 Updated by Alessandro Olivieri almost 3 years ago

Ho verificato la vostra segnalazione. Adesso non dovreste trovare problemi nella creazione del DB.
Il codice è stato committato.

#48 Updated by Pierpaolo Petriccione almost 3 years ago

Allego il documento delle specifiche funzionali aggiornato. L'ultimo codice disponibile è stato inserito nel branches di svn al seguente indirizzo.

https://svn.d4science.research-infrastructures.eu/gcube/branches/portlets/user/usersurvey-portlet

https://svn.d4science.research-infrastructures.eu/gcube/branches/portlets/user/surveydisplay-portlet

#49 Updated by Massimiliano Assante over 2 years ago

Ciao @pierpaolo.petriccione@eng.it ,
volevo un aggiornamento sullo stato delle portlet Survey.

Lo stato è completo da parte vostra? Le due portlet sono state testate da voi con successo?

Se si possiamo validarle ed includerle nella release 4.3.0. Fammi sapere grazie.

#50 Updated by Pierpaolo Petriccione over 2 years ago

Si potete procedere. Grazie.

#51 Updated by Massimiliano Assante over 2 years ago

  • Assignee changed from Massimiliano Assante to Costantino Perciante

#52 Updated by Massimiliano Assante over 2 years ago

  • Status changed from In Progress to Closed

Il task può essere chiuso. Il componente (le due portlet) è ora in carico al CNR.

La portlet di amministrazione Survey è stata spostata dal subsystem portlet-user a quello portlets-admin e rinominata da usersurvey-portlet a survey-manager #8700

#53 Updated by Massimiliano Assante over 2 years ago

  • Related to Release #8700: org.gcube.portlets-admin.survey-manager.1-0-0 added

#54 Updated by Massimiliano Assante over 2 years ago

  • Related to Release #8697: org.gcube.portlets-user.surveydisplay-portlet.1-1-0 added

#55 Updated by Massimiliano Assante over 2 years ago

  • Related to Task #8950: Please Evaluate/Feedback on usage of Survey application added

Also available in: Atom PDF