diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..a3b8768a509111311fac0bd15a3536122df9e3cd Binary files /dev/null and b/.DS_Store differ diff --git a/Frontend Angular 4/src/app/shared/config.ts b/Frontend Angular 4/src/app/shared/config.ts index 269b0832a942fff97480651e814f48f506bb2fa2..5faa2cf2f8348138aeafb2d7aaa8905734707e08 100644 --- a/Frontend Angular 4/src/app/shared/config.ts +++ b/Frontend Angular 4/src/app/shared/config.ts @@ -5,5 +5,6 @@ //export const GHCI_URL = 'ws://localhost:9090/endpoint'; //Configuracion dinamica pensando en servidor con ip dinamica -export const SERVER = window.location.protocol + '//' + window.location.host;//'http://localhost:9090'; +//export const SERVER = window.location.protocol + '//' + window.location.host;//'http://localhost:9090'; +export const SERVER = 'http://localhost:8080'; export const GHCI_URL = window.location.protocol == 'http:'? 'ws://'+window.location.host+'/endpoint': 'wss://'+window.location.host+'/endpoint'; diff --git a/Servidor JEE/WebContent/WEB-INF/matefun.properties b/Servidor JEE/WebContent/WEB-INF/matefun.properties index 038644a932337ba99453135cb89f810a1577e78b..730c4254c7ec168c624a02fd3ff1e14e10d65c45 100644 --- a/Servidor JEE/WebContent/WEB-INF/matefun.properties +++ b/Servidor JEE/WebContent/WEB-INF/matefun.properties @@ -1,7 +1,7 @@ #Deben definirse moodle_endpoint y moodle_group para conectar con el API de moodle. #De lo contrario solo se realizara login local. -moodle_endpoint=https://tics.moodlecloud.com -moodle_group=Piloto +moodle_endpoint=https://matefun.moodlecloud.com +moodle_group=introduction to moodle #El grupo se define como liceoId#grado#grupo#anio #Si no se sefine default_group entonces no se asigna grupo para docente o alumno. default_group=0#2#Año#2017 diff --git a/Servidor JEE/pom.xml b/Servidor JEE/pom.xml index bd6f0ed40eb0ccc728816bad2c441b1cf234ff03..b645fd937ac03ca4256d1171b4fd10d659b492e4 100644 --- a/Servidor JEE/pom.xml +++ b/Servidor JEE/pom.xml @@ -46,7 +46,11 @@ <artifactId>jackson-annotations</artifactId> <version>2.9.0</version> </dependency> - + <dependency> + <groupId>mysql</groupId> + <artifactId>mysql-connector-java</artifactId> + <version>5.1.42</version> + </dependency> </dependencies> <build> diff --git a/Servidor JEE/src/main/java/edu/proygrado/dto/MoodleCoursesInfoDTO.java b/Servidor JEE/src/main/java/edu/proygrado/dto/MoodleCoursesInfoDTO.java index dfe454b33fb00376c7cbb010bdf7ffa2dea5bd3b..5e124f812851dc0c96de57d382c3bd053664d2f8 100644 --- a/Servidor JEE/src/main/java/edu/proygrado/dto/MoodleCoursesInfoDTO.java +++ b/Servidor JEE/src/main/java/edu/proygrado/dto/MoodleCoursesInfoDTO.java @@ -21,7 +21,7 @@ public class MoodleCoursesInfoDTO { private Boolean confirmed; private String lang; private String theme; - private Long timezone; + private String timezone; private Long mailformat; private String description; private Long descriptionformat; @@ -118,10 +118,10 @@ public class MoodleCoursesInfoDTO { public void setTheme(String theme) { this.theme = theme; } - public Long getTimezone() { + public String getTimezone() { return timezone; } - public void setTimezone(Long timezone) { + public void setTimezone(String timezone) { this.timezone = timezone; } public Long getMailformat() { diff --git a/Servidor JEE/src/main/java/edu/proygrado/ejb/LoginEJB.java b/Servidor JEE/src/main/java/edu/proygrado/ejb/LoginEJB.java index ab747f39a80d36f60f5c7c1dfe05b19847903bba..d1f5ce11bf9b8909a90a62f3e384ad85e0368cc6 100644 --- a/Servidor JEE/src/main/java/edu/proygrado/ejb/LoginEJB.java +++ b/Servidor JEE/src/main/java/edu/proygrado/ejb/LoginEJB.java @@ -15,13 +15,17 @@ import java.util.Date; import java.util.List; import java.util.Properties; +import javax.annotation.Resource; import javax.ejb.EJB; import javax.ejb.Stateless; +import javax.ejb.TransactionManagement; +import javax.ejb.TransactionManagementType; import javax.inject.Inject; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import javax.persistence.TypedQuery; import javax.servlet.ServletContext; +import javax.transaction.UserTransaction; import javax.ws.rs.client.ClientBuilder; import javax.ws.rs.core.GenericType; @@ -50,6 +54,7 @@ import edu.proygrado.modelo.Usuario; * @author gonzalo */ @Stateless +@TransactionManagement(value=TransactionManagementType.BEAN) public class LoginEJB { @Inject @@ -63,6 +68,9 @@ public class LoginEJB { @EJB private InvitadoEJB invitadoEJB; + + @Resource + private UserTransaction userTransaction; public boolean validarSesion(String token){ Sesion sesion = em.find(Sesion.class,token); @@ -80,7 +88,14 @@ public class LoginEJB { sesion.setToken(token); sesion.setUsuario(usuario); sesion.setTimestamp(new Date()); - em.persist(sesion); + try { + userTransaction.begin(); + em.persist(sesion); + userTransaction.commit(); + }catch(Exception e) { + System.out.println("Error persistiendo sesion: "+e.getMessage()); + } + }else{ sesion.setTimestamp(new Date()); } @@ -222,9 +237,15 @@ public class LoginEJB { conf.setFontSizeEditor(12); conf.setThemeEditor("dracula"); nuevoDesdeMoodle.setConfiguracion(conf); - em.persist(conf); - em.persist(root); - em.persist(nuevoDesdeMoodle); + try { + userTransaction.begin(); + em.persist(conf); + em.persist(root); + em.persist(nuevoDesdeMoodle); + userTransaction.commit(); + }catch(Exception e) { + System.out.println("Error guardando configuracion de usuario"); + } String tokenAuth = generateToken(); updateSession(tokenAuth, usuario); invitadoEJB.setUsuario(tokenAuth, nuevoDesdeMoodle); diff --git a/Servidor JEE/src/main/resources/META-INF/persistence.xml b/Servidor JEE/src/main/resources/META-INF/persistence.xml index 79c49c23ed6b00775d68c701236b61f4087696b4..3d5c78a45b8e5dba9deeed1b84df62a0df0818a6 100644 --- a/Servidor JEE/src/main/resources/META-INF/persistence.xml +++ b/Servidor JEE/src/main/resources/META-INF/persistence.xml @@ -25,7 +25,7 @@ <persistence-unit name="matefunDS" transaction-type="JTA"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - <jta-data-source>jdbc/azureDSjta</jta-data-source> + <jta-data-source>java:/matefun</jta-data-source> <class>edu.proygrado.modelo.Alumno</class> <class>edu.proygrado.modelo.Archivo</class> <class>edu.proygrado.modelo.Configuracion</class>