securis/etc/context/securis.xml
.. .. @@ -40,9 +40,13 @@ 40 40 <property name="hibernate.c3p0.acquireRetryAttempts" value="1" /> 41 41 <property name="hibernate.c3p0.acquireRetryDelay" value="250" /> 42 42 --> 43 - <Resource name="jdbc/SeCurisDS" auth="Container" type="javax.sql.DataSource"43 + <Resource name="jdbc/SeCurisDSOld" auth="Container" type="javax.sql.DataSource"44 44 maxActive="100" maxIdle="3" maxWait="5000" 45 45 username="curis" password="cur151T 53curi5" driverClassName="org.h2.Driver" 46 46 url="jdbc:h2:~/.SeCuris/db/securis"/> 47 + <Resource name="jdbc/SeCurisDS" auth="Container" type="javax.sql.DataSource"48 + maxActive="100" maxIdle="3" maxWait="5000"49 + username="curis" password="securis" driverClassName="com.mysql.jdbc.Driver"50 + url="jdbc:mysql://localhost:3306/securis?autoReconnect=true"/>47 51 48 52 </Context> securis/src/main/java/net/curisit/securis/db/ApplicationMetadata.java
.. .. @@ -40,6 +40,7 @@ 40 40 private Application application; 41 41 42 42 @Id 43 + @Column(name = "\"key\"")43 44 private String key; 44 45 45 46 private String value; .. .. @@ -47,6 +48,7 @@ 47 48 private boolean mandatory; 48 49 49 50 @Column(name = "creation_timestamp") 51 + @JsonProperty("creation_timestamp")50 52 private Date creationTimestamp; 51 53 52 54 public String getKey() { securis/src/main/java/net/curisit/securis/db/LicenseTypeMetadata.java
.. .. @@ -2,6 +2,7 @@ 2 2 3 3 import java.io.Serializable; 4 4 5 +import javax.persistence.Column;5 6 import javax.persistence.Entity; 6 7 import javax.persistence.Id; 7 8 import javax.persistence.JoinColumn; .. .. @@ -38,6 +39,7 @@ 38 39 private LicenseType licenseType; 39 40 40 41 @Id 42 + @Column(name = "\"key\"")41 43 private String key; 42 44 43 45 private String value; securis/src/main/java/net/curisit/securis/db/PackMetadata.java
.. .. @@ -2,6 +2,7 @@ 2 2 3 3 import java.io.Serializable; 4 4 5 +import javax.persistence.Column;5 6 import javax.persistence.Entity; 6 7 import javax.persistence.Id; 7 8 import javax.persistence.JoinColumn; .. .. @@ -38,6 +39,7 @@ 38 39 private Pack pack; 39 40 40 41 @Id 42 + @Column(name = "\"key\"")41 43 private String key; 42 44 43 45 private String value; securis/src/main/java/net/curisit/securis/services/ApplicationResource.java
.. .. @@ -127,6 +127,7 @@ 127 127 em.persist(md); 128 128 } 129 129 } 130 + LOG.info("Creating application with date: " + app.getCreationTimestamp());130 131 131 132 return Response.ok(app).build(); 132 133 } .. .. @@ -153,13 +154,14 @@ 153 154 currentapp.setName(app.getName()); 154 155 currentapp.setDescription(app.getDescription()); 155 156 em.persist(currentapp); 156 -157 - Set<ApplicationMetadata> newMD = app.getApplicationMetadata();157 +158 + Set<ApplicationMetadata> newMD = app.getApplicationMetadata();158 159 for (ApplicationMetadata currentMd : currentapp.getApplicationMetadata()) { 159 - if (newMD == null || !newMD.contains(currentMd));160 - em.remove(currentMd);160 + if (newMD == null || !newMD.contains(currentMd))161 + ;162 + em.remove(currentMd);161 163 } 162 -164 +163 165 if (newMD != null) { 164 166 for (ApplicationMetadata md : newMD) { 165 167 md.setApplication(app); securis/src/main/resources/META-INF/persistence.xml
.. .. @@ -5,17 +5,17 @@ 5 5 <persistence-unit name="localdb" transaction-type="RESOURCE_LOCAL"> 6 6 <description>SeCuris LocalDB</description> 7 7 <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> 8 -9 - <jta-data-source>java:comp/env/jdbc/SeCurisDS</jta-data-source>10 -11 -<!-- <class>net.curisit.securis.db.UserSettingsUnits</class> -->8 +9 +<!-- <jta-data-source>java:comp/env/jdbc/SeCurisDS</jta-data-source>10 + -->11 + <!-- <class>net.curisit.securis.db.UserSettingsUnits</class> -->12 12 13 13 <properties> 14 - <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect" />15 - <property name="hibernate.connection.datasource" value="java:comp/env/jdbc/SeCurisDS"/>14 + <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />15 + <property name="hibernate.connection.datasource" value="java:comp/env/jdbc/SeCurisDS" />16 16 17 - <property name="hibernate.show_sql" value="false" />17 + <property name="hibernate.show_sql" value="true" />18 18 </properties> 19 -19 +20 20 </persistence-unit> 21 21 </persistence> securis/src/main/resources/db/schema.sql
.. .. @@ -1,9 +1,10 @@ 1 +1 2 drop table IF EXISTS settings; 2 3 CREATE TABLE IF NOT EXISTS settings ( 3 - key VARCHAR(100) NOT NULL ,4 + `key` VARCHAR(100) NOT NULL ,4 5 value VARCHAR(2000) NULL , 5 - timestamp DATETIME NOT NULL DEFAULT now() ,6 - PRIMARY KEY (key) );6 + creation_timestamp DATETIME NOT NULL default now(),7 + PRIMARY KEY (``key``) );7 8 8 9 drop table IF EXISTS user; 9 10 CREATE TABLE IF NOT EXISTS user ( .. .. @@ -15,7 +16,7 @@ 15 16 last_login DATETIME NULL , 16 17 lang VARCHAR(10) NULL , 17 18 email VARCHAR(150) NULL , 18 - creation_timestamp DATETIME NULL ,19 + creation_timestamp DATETIME NOT NULL default now(),19 20 modification_timestamp DATETIME NULL , 20 21 PRIMARY KEY (username)); 21 22 .. .. @@ -25,17 +26,17 @@ 25 26 name VARCHAR(45) NOT NULL , 26 27 license_filename VARCHAR(100) NOT NULL , 27 28 description VARCHAR(500) NULL , 28 - creation_timestamp DATETIME NULL ,29 + creation_timestamp DATETIME NOT NULL default now(),29 30 PRIMARY KEY (id)); 30 31 31 32 drop table IF EXISTS application_metadata; 32 33 CREATE TABLE IF NOT EXISTS application_metadata ( 33 34 application_id INT NOT NULL , 34 - key VARCHAR(100) NOT NULL ,35 + `key` VARCHAR(100) NOT NULL ,35 36 value VARCHAR(200) NULL , 36 37 mandatory BOOLEAN NOT NULL default true, 37 - creation_timestamp DATETIME NOT NULL ,38 - PRIMARY KEY (application_id, key));38 + creation_timestamp DATETIME NOT NULL default now(),39 + PRIMARY KEY (application_id, `key`));39 40 40 41 41 42 drop table IF EXISTS license_type; .. .. @@ -45,16 +46,16 @@ 45 46 name VARCHAR(45) NOT NULL , 46 47 description VARCHAR(100) NULL , 47 48 application_id INT NULL , 48 - creation_timestamp DATETIME NULL ,49 + creation_timestamp DATETIME NOT NULL default now(),49 50 PRIMARY KEY (id)); 50 51 51 52 drop table IF EXISTS licensetype_metadata; 52 53 CREATE TABLE IF NOT EXISTS licensetype_metadata ( 53 54 license_type_id INT NOT NULL , 54 - key VARCHAR(100) NOT NULL ,55 + `key` VARCHAR(100) NOT NULL ,55 56 value VARCHAR(200) NULL , 56 57 mandatory BOOLEAN NOT NULL default true, 57 - PRIMARY KEY (license_type_id, key));58 + PRIMARY KEY (license_type_id, `key`));58 59 59 60 drop table IF EXISTS organization; 60 61 CREATE TABLE IF NOT EXISTS organization ( .. .. @@ -63,7 +64,7 @@ 63 64 name VARCHAR(45) NOT NULL , 64 65 description VARCHAR(100) NULL , 65 66 org_parent_id INT NULL , 66 - creation_timestamp DATETIME NULL ,67 + creation_timestamp DATETIME NOT NULL default now(),67 68 PRIMARY KEY (id)); 68 69 69 70 drop table IF EXISTS user_organization; .. .. @@ -77,8 +78,8 @@ 77 78 id INT NOT NULL auto_increment, 78 79 code VARCHAR(50) NOT NULL , 79 80 num_licenses INT NOT NULL , 80 - init_valid_date DATE NOT NULL default today(),81 - end_valid_date DATE NOT NULL default today(),81 + init_valid_date DATE NOT NULL,82 + end_valid_date DATE NOT NULL,82 83 status VARCHAR(2) NOT NULL default 'CR', 83 84 comments VARCHAR(1024) NULL , 84 85 license_type_id INT NOT NULL, .. .. @@ -86,17 +87,17 @@ 86 87 license_preactivation BOOLEAN NOT NULL DEFAULT true, 87 88 default_valid_period INT NOT NULL DEFAULT 60, 88 89 created_by varchar(45) NULL , 89 - creation_timestamp DATETIME NOT NULL ,90 + creation_timestamp DATETIME NOT NULL default now(),90 91 PRIMARY KEY (id)); 91 92 92 93 drop table IF EXISTS pack_metadata; 93 94 CREATE TABLE IF NOT EXISTS pack_metadata ( 94 95 pack_id INT NOT NULL , 95 - key VARCHAR(100) NOT NULL ,96 + `key` VARCHAR(100) NOT NULL ,96 97 value VARCHAR(200) NULL , 97 98 readonly BOOlEAN NOT NULL default false, 98 99 mandatory BOOLEAN NOT NULL default true, 99 - PRIMARY KEY (pack_id, key));100 + PRIMARY KEY (pack_id, `key`));100 101 101 102 102 103 drop table IF EXISTS license; .. .. @@ -110,24 +111,22 @@ 110 111 full_name VARCHAR(150) NULL, 111 112 email VARCHAR(100) NOT NULL, 112 113 comments VARCHAR(1024) NULL , 113 - creation_timestamp DATETIME NOT NULL ,114 + creation_timestamp DATETIME NOT NULL default now(),114 115 modification_timestamp DATETIME NULL , 115 116 last_access_timestamp DATETIME NULL , 116 117 expiration_date DATETIME NULL , 117 118 cancelled_by varchar(45) NULL , 118 119 created_by varchar(45) NULL , 119 120 status VARCHAR(2) NOT NULL default 'CR', 120 - PRIMARY KEY (id));121 -122 -create index if not exists lic_hash_req_idx on license(request_data_hash);123 -create index if not exists lic_pack_idx on license(pack_id);121 + PRIMARY KEY (id),122 + index(request_data_hash, pack_id));124 123 125 124 drop table IF EXISTS license_history; 126 125 CREATE TABLE IF NOT EXISTS license_history ( 127 126 id INT NOT NULL auto_increment, 128 127 license_id INT NOT NULL, 129 128 username VARCHAR(45) NOT NULL, 130 - timestamp DATETIME NOT NULL ,129 + creation_timestamp DATETIME NOT NULL default now(),131 130 action VARCHAR(40) , 132 131 comments VARCHAR(512) , 133 132 PRIMARY KEY (id)); securis/src/main/webapp/header.html
.. .. @@ -4,8 +4,8 @@ 4 4 <div class="navbar-header"> 5 5 <ul class="nav navbar-nav navbar-left"> 6 6 <li i18n style="color: white; padding-top: 15px;">SeCuris</li> 7 - <li><a i18n href="/licenses">Licenses</a></li>8 - <li><a i18n href="/admin">Admin</a></li>7 + <li><a i18n href="licenses">Licenses</a></li>8 + <li><a i18n href="admin">Admin</a></li>9 9 </ul> 10 10 </div> 11 11 <div class="navbar-collapse collapse"> securis/src/main/webapp/js/catalogs.js
.. .. @@ -21,7 +21,7 @@ 21 21 'application/:appId', { 22 22 appId : '@id' 23 23 }), 24 - user : $resource('/user/:userId', {24 + user : $resource('user/:userId', {25 25 userId : '@username' 26 26 }), 27 27 organization : $resource(