diff --git a/aspiredb/.editorconfig b/aspiredb/.editorconfig new file mode 100644 index 00000000..d8403426 --- /dev/null +++ b/aspiredb/.editorconfig @@ -0,0 +1,4 @@ +root = true + +[production-data-source.xml] +indent_style=tab diff --git a/aspiredb/README.txt b/aspiredb/README.txt index 28d4f80d..9fcc39a0 100644 --- a/aspiredb/README.txt +++ b/aspiredb/README.txt @@ -36,7 +36,7 @@ whatever directory CATALINA_HOME is set to). the contents of aspiredb.properties should be as follows: -jdbc.driverClassName=com.mysql.jdbc.Driver +jdbc.driverClassName=com.mysql.cj.jdbc.Driver # change this value to whatever the path is to your database with the aspiredb schema jdbc.url=jdbc:mysql://localhost:3306/aspiredb diff --git a/aspiredb/pom.xml b/aspiredb/pom.xml index f46fd296..b765cc96 100644 --- a/aspiredb/pom.xml +++ b/aspiredb/pom.xml @@ -1,23 +1,24 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - aspiredb project - ubc.pavlab + ASPIREdb Project aspiredb war 1.5-SNAPSHOT - - UTF-8 - 1.7 - 1.7 - - UTF-8 - 3.2.4.RELEASE - 3.1.4.RELEASE + + ubc.pavlab + pavlab-starter-parent + 1.1.9 + + + 3.2.18.RELEASE + 3.2.10.RELEASE + 0.0.8 + 1.9.9.1 @@ -29,9 +30,13 @@ + scm:git:https://github.com/PavlidisLab/aspiredb.git + scm:git:git@github.com:PavlidisLab/aspiredb.git + GitHub + https://github.com/PavlidisLab/aspiredb/issues @@ -39,45 +44,34 @@ baseCode baseCode - 1.1.2 - jar pavlab gemma-gsec - 0.0.1-SNAPSHOT - jar + ${gsec.version} - - org.directwebremoting - dwr - 3.0.2-RELEASE - jar + + org.directwebremoting + dwr + 3.0.2-RELEASE junit junit - 4.7 - test - jar org.easymock easymock - 3.2 + 5.0.1 test - jar org.mockito - mockito-all - 1.10.19 - test - jar + mockito-core org.springframework @@ -90,24 +84,24 @@ 1.13 - commons-lang - commons-lang - 2.6 + org.apache.commons + commons-lang3 + 3.12.0 commons-beanutils commons-beanutils - 1.8.3 + 1.9.4 commons-fileupload commons-fileupload - 1.3.1 + 1.4 org.apache.commons commons-configuration2 - 2.7 + 2.8.0 commons-io @@ -118,7 +112,6 @@ org.springframework spring-core ${spring.version} - jar org.springframework @@ -149,7 +142,6 @@ org.springframework spring-beans ${spring.version} - jar org.springframework @@ -188,99 +180,75 @@ ${spring.version} - commons-dbcp - commons-dbcp - 1.4 + org.apache.commons + commons-dbcp2 org.aspectj aspectjrt - 1.6.6 - jar + ${aspectj.version} org.aspectj aspectjweaver - 1.6.6 - jar + ${aspectj.version} runtime org.hibernate hibernate-core - 3.6.3.Final org.hibernate hibernate-ehcache - 3.6.7.Final - - - net.sf.ehcache - ehache-core - - - - - net.sf.ehcache - ehcache-core - 2.6.6 - javassist + org.javassist javassist - 3.4.GA - runtime - jar org.hibernate hibernate-validator - 4.2.0.Final + 4.3.2.Final javax.validation validation-api - 1.0.0.GA + 2.0.1.Final mysql mysql-connector-java - 5.1.9 org.apache.logging.log4j log4j-core - 2.17.0 org.apache.logging.log4j log4j-1.2-api - 2.17.0 org.slf4j slf4j-api - 1.6.6 - jar commons-cli commons-cli - 1.2 + 1.5.0 net.sourceforge.csvjdbc csvjdbc - 1.0.38 + 1.0.40 com.sencha.gxt gxt - 3.0.1 + 3.1.1 javax.servlet @@ -293,14 +261,13 @@ 1.5.3 - com.google.gwt + org.gwtproject gwt-servlet - 2.5.1 + 2.10.0 javax.servlet - servlet-api - 2.4 + javax.servlet-api @@ -310,9 +277,9 @@ 1.7 - javax.mail - mail - 1.4.7 + com.sun.mail + javax.mail + 1.6.2 @@ -328,39 +295,24 @@ + com.sun.jersey jersey-json 1.8 + Jersey + Spring com.sun.jersey.contribs jersey-spring + 1.12 org.springframework spring-aop + org.springframework spring-core + org.springframework spring-web org.springframework + spring-context org.springframework spring-beans + --> - maven-surefire-plugin - 2.12 - - -enableassertions -Xmx512m -Djava.awt.headless=true -Dlog4j.compatibility=true - target/surefire-reports - true - - **/Test*.java - **/*Test.java - - - **/AllTests.java - **/gui/Test*.java - **/AbstractTest*.java - **/*$* - - + org.apache.maven.plugins + maven-enforcer-plugin org.apache.maven.plugins maven-eclipse-plugin - 2.8 + 2.10 true false @@ -377,56 +329,17 @@ - - - org.codehaus.mojo - hibernate3-maven-plugin - 2.2 - - - default-cli - - - - - hbm2ddl - - - annotationconfiguration - - - - src/main/resources/hibernate.cfg.xml - false - true - true - false - schema.sql - - - - - - org.apache.maven.plugins maven-jar-plugin - 2.4 - - - package - - jar - - - + 3.2.0 org.apache.maven.plugins maven-antrun-plugin - 1.7 + 3.0.0 version-file @@ -437,18 +350,54 @@ aspiredb.version=${project.version} built ${maven.build.timestamp} + file="${project.build.directory}/${project.build.finalName}/WEB-INF/classes/version.properties">aspiredb.version=${project.version} built ${maven.build.timestamp} + + + + + + schema-export + pre-integration-test + + run + + + + + + + + + org.hibernate + hibernate-core + ${hibernate.version} + + + pavlab + gemma-gsec + ${gsec.version} + + + ${project.groupId} + ${project.artifactId} + ${project.version} + system + ${project.build.directory}/${project.build.finalName}.jar + + org.codehaus.mojo cobertura-maven-plugin - 2.6 + 2.7 true @@ -457,12 +406,157 @@ + + org.apache.maven.plugins + maven-javadoc-plugin + 3.3.2 + + true + 8 + none + + + + + + + + maven-dependency-plugin + 3.1.2 + + + pre-integration-test + + unpack + + + + + pavlab + gemma-gsec + ${gsec.version} + true + ${project.build.directory}/schema + **/*.sql + + + + + + + + org.codehaus.mojo + sql-maven-plugin + 1.5 + + + mysql + mysql-connector-java + + 8.0.27 + + + + + com.mysql.cj.jdbc.Driver + ${aspiredb.db.build.user} + ${aspiredb.db.build.password} + abort + true + + + + drop-add-testdb + pre-integration-test + + execute + + + ${bootstrap.db.url} + ${aspiredb.db.build.user} + ${aspiredb.db.build.password} + false + + + + + + + load-testdb-schema + pre-integration-test + + execute + + + ${aspiredb.testdb.build.url} + + ${project.build.directory}/hibernate3/sql/schema.sql + ${project.build.directory}/schema/gsec-acl-ddl.sql + src/main/resources/sql/init-acls.sql + src/main/resources/sql/init-entities.sql + src/main/resources/sql/init-indices.sql + ${project.build.directory}/schema/sql/init-acl-indices.sql + + abort + + + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.22.2 + + + **/Test*.java + **/*Test.java + **/AllTests.java + **/gui/Test*.java + **/AbstractTest*.java + **/*$* + + + + + maven-failsafe-plugin + 2.22.2 + + + + integration-test + verify + + + + + -enableassertions -Xmx512m -Djava.awt.headless=true -Dlog4j1.compatibility=true + ${project.build.directory}/surefire-reports + true + + **/Test*.java + **/*Test.java + + + **/AllTests.java + **/gui/Test*.java + **/AbstractTest*.java + + + + ${project.build.directory}/${project.build.finalName}/WEB-INF/classes - + org.eclipse.m2e lifecycle-mapping @@ -480,7 +574,7 @@ - + @@ -491,208 +585,7 @@ - - - testdb.build - - false - - testdb.build - - - - - - - maven-dependency-plugin - 2.8 - - - process-resources - - unpack - - - - - pavlab - gemma-gsec - 0.0.1-SNAPSHOT - jar - true - ${project.build.directory}/schema - **/*.sql - - - - - - - - org.codehaus.mojo - sql-maven-plugin - 1.5 - - - mysql - mysql-connector-java - 5.1.10 - jar - - - - - com.mysql.jdbc.Driver - ${aspiredb.db.build.user} - ${aspiredb.db.build.password} - abort - true - - - - drop-add-testdb - initialize - - execute - - - ${bootstrap.db.url} - ${aspiredb.db.build.user} - ${aspiredb.db.build.password} - false - - - - - - - load-testdb-schema - process-test-resources - - execute - - - ${aspiredb.testdb.build.url} - - target/hibernate3/sql/schema.sql - target/schema/gsec-acl-ddl.sql - src/main/resources/sql/init-acls.sql - src/main/resources/sql/init-entities.sql - src/main/resources/sql/init-indices.sql - target/schema/sql/init-acl-indices.sql - - abort - - - - - - - - - db.build - - false - - db.build - - - - - - - maven-dependency-plugin - 2.8 - - - process-resources - - unpack - - - - - pavlab - gemma-gsec - 0.0.1-SNAPSHOT - jar - true - ${project.build.directory}/schema - **/*.sql - - - - - - - - org.codehaus.mojo - sql-maven-plugin - 1.5 - - - mysql - mysql-connector-java - 5.1.10 - jar - - - - - com.mysql.jdbc.Driver - ${aspiredb.db.build.user} - ${aspiredb.db.build.password} - abort - true - - - - drop-add-db - initialize - - execute - - - ${bootstrap.db.url} - false - - - - - - - load-db-schema - process-resources - - execute - - - ${aspiredb.db.build.url} - ${aspiredb.db.build.user} - ${aspiredb.db.build.password} - - target/hibernate3/sql/schema.sql - target/schema/gsec-acl-ddl.sql - src/main/resources/sql/init-acls.sql - src/main/resources/sql/init-entities.sql - src/main/resources/sql/init-indices.sql - target/schema/sql/init-acl-indices.sql - - abort - - - - - - - local-deploy @@ -708,16 +601,6 @@ localDeploy file:///space/aspiredbData - - repo - Pavlab - file:///space/maven2 - - - repo - Pavlab - file:///space/maven2 - @@ -727,11 +610,9 @@ org.codehaus.mojo cobertura-maven-plugin - 2.6 + 2.7 - - diff --git a/aspiredb/src/main/java/ubc/pavlab/aspiredb/cli/SpringContextUtil.java b/aspiredb/src/main/java/ubc/pavlab/aspiredb/cli/SpringContextUtil.java index c479b8c5..49e154f0 100644 --- a/aspiredb/src/main/java/ubc/pavlab/aspiredb/cli/SpringContextUtil.java +++ b/aspiredb/src/main/java/ubc/pavlab/aspiredb/cli/SpringContextUtil.java @@ -88,7 +88,7 @@ public static String[] getConfigLocations( boolean testing ) { * @param paths */ private static void addCommonConfig( List paths ) { - paths.add( "classpath*:gemma/gsec/acl/security-bean-baseconfig.xml" ); + paths.add( "classpath*:gemma/gsec/applicationContext-*.xml" ); paths.add( "classpath*:application-context.xml" ); paths.add( "classpath*:applicationContext-security.xml" ); paths.add( "classpath*:applicationContext-serviceBeans.xml" ); diff --git a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyService.java b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyService.java index 6b070b0d..5424bf59 100644 --- a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyService.java +++ b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyService.java @@ -24,6 +24,7 @@ import ubic.basecode.ontology.model.OntologyTerm; import ubic.basecode.ontology.providers.DiseaseOntologyService; import ubic.basecode.ontology.providers.HumanPhenotypeOntologyService; +import ubic.basecode.ontology.search.OntologySearchException; /** * @author paul @@ -35,7 +36,7 @@ public interface OntologyService extends InitializingBean { * @param givenSearch * @return */ - public Collection findIndividuals( String givenSearch ); + public Collection findIndividuals( String givenSearch ) throws OntologySearchException; /** * Given a search string will look through the loaded ontologies for terms that match the search term. this a lucene @@ -44,7 +45,7 @@ public interface OntologyService extends InitializingBean { * @param search * @return returns a collection of ontologyTerm's */ - public Collection findTerms( String search ); + public Collection findTerms( String search ) throws OntologySearchException; /** * @return the diseaseOntologyService diff --git a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyServiceImpl.java b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyServiceImpl.java index 6073e806..f09fe508 100644 --- a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyServiceImpl.java +++ b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/ontology/OntologyServiceImpl.java @@ -28,6 +28,7 @@ import ubic.basecode.ontology.providers.DiseaseOntologyService; import ubic.basecode.ontology.providers.HumanPhenotypeOntologyService; import ubic.basecode.ontology.search.OntologySearch; +import ubic.basecode.ontology.search.OntologySearchException; /** * Has a static method for finding out which ontologies are loaded into the system and a general purpose find method @@ -64,7 +65,7 @@ public void afterPropertiesSet() { } @Override - public Collection findIndividuals( String givenSearch ) { + public Collection findIndividuals( String givenSearch ) throws OntologySearchException { String query = OntologySearch.stripInvalidCharacters( givenSearch ); Collection results = new HashSet(); @@ -80,7 +81,7 @@ public Collection findIndividuals( String givenSearch ) { } @Override - public Collection findTerms( String search ) { + public Collection findTerms( String search ) throws OntologySearchException { String query = OntologySearch.stripInvalidCharacters( search ); diff --git a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryService.java b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryService.java index 9b661d0e..73360eb0 100644 --- a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryService.java +++ b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryService.java @@ -38,6 +38,7 @@ import ubc.pavlab.aspiredb.shared.suggestions.PhenotypeSuggestion; import com.sencha.gxt.data.shared.loader.PagingLoadResult; +import ubic.basecode.ontology.search.OntologySearchException; /** * Methods for various query operations such as querying a list of subjects and variants given a list of filters, @@ -53,7 +54,7 @@ public BoundedList querySubjects( Set public BoundedList queryVariants( Set filters ) throws NotLoggedInException, ExternalDependencyException; - public PagingLoadResult getOntologyTermSuggestions( String query ); + public PagingLoadResult getOntologyTermSuggestions( String query ) throws OntologySearchException; public List getValuesForOntologyTerm( String ontologyTermUri ); diff --git a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryServiceImpl.java b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryServiceImpl.java index 28a41987..105bafd6 100644 --- a/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryServiceImpl.java +++ b/aspiredb/src/main/java/ubc/pavlab/aspiredb/server/service/QueryServiceImpl.java @@ -77,6 +77,7 @@ import ubc.pavlab.aspiredb.shared.suggestions.PhenotypeSuggestion; import ubic.basecode.ontology.model.OntologyTerm; import ubic.basecode.ontology.providers.HumanPhenotypeOntologyService; +import ubic.basecode.ontology.search.OntologySearchException; /** * Methods for various query operations such as querying a list of subjects and variants given a list of filters, @@ -151,7 +152,7 @@ public PagingLoadResult getNeurocartaPhenotypeSu } @Override - public PagingLoadResult getOntologyTermSuggestions( String query ) { + public PagingLoadResult getOntologyTermSuggestions( String query ) throws OntologySearchException { HumanPhenotypeOntologyService HPOService = ontologyService.getHumanPhenotypeOntologyService(); // if ( !HPOService.isOntologyLoaded() ) { // HPOService.startInitializationThread( true ); diff --git a/aspiredb/src/main/resources/application-context.xml b/aspiredb/src/main/resources/application-context.xml index a43d9567..b15e265f 100644 --- a/aspiredb/src/main/resources/application-context.xml +++ b/aspiredb/src/main/resources/application-context.xml @@ -1,14 +1,13 @@ diff --git a/aspiredb/src/main/resources/database.properties b/aspiredb/src/main/resources/database.properties index bd41b915..1f96e93b 100644 --- a/aspiredb/src/main/resources/database.properties +++ b/aspiredb/src/main/resources/database.properties @@ -1,6 +1,5 @@ -jdbc.driverClassName=com.mysql.jdbc.Driver +jdbc.driverClassName=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/aspiredb?rewriteBatchedStatements=true jdbc.username=aspiredb_web jdbc.password=aspiredb -#hibernate.dialect=org.hibernate.dialect.MySQLDialect hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect \ No newline at end of file diff --git a/aspiredb/src/main/resources/hibernate.cfg.xml b/aspiredb/src/main/resources/hibernate.cfg.xml index 0b7e3a4d..97127e93 100644 --- a/aspiredb/src/main/resources/hibernate.cfg.xml +++ b/aspiredb/src/main/resources/hibernate.cfg.xml @@ -6,7 +6,7 @@ - org.hibernate.dialect.MySQLDialect + org.hibernate.dialect.MySQL5InnoDBDialect + + + + + + + + + + + + + + + class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> - - - + - - classpath:hibernate.cfg.xml - + + + + + classpath:gemma/gsec/model/AclEntry.hbm.xml + classpath:gemma/gsec/model/AclObjectIdentity.hbm.xml + classpath:gemma/gsec/model/AclSid.hbm.xml + + - - - classpath:gemma/gsec/model/AclEntry.hbm.xml - classpath:gemma/gsec/model/AclObjectIdentity.hbm.xml - classpath:gemma/gsec/model/AclSid.hbm.xml - - - ${hibernate.dialect} false - true - false - false - false - org.hibernate.cache.StandardQueryCacheFactory - org.hibernate.cache.EhCacheProvider - - 3 - 512 - 512 - 256 - true - true - - - - - - - - + true + false + false + false + org.hibernate.cache.StandardQueryCacheFactory + org.hibernate.cache.EhCacheProvider + + 3 + 512 + 512 + 256 + true + true + + + + + - - - - ${mail.host} - - - ${mail.username} - - - ${mail.password} - - - + + + + + + + \ No newline at end of file diff --git a/aspiredb/src/main/webapp/WEB-INF/web.xml b/aspiredb/src/main/webapp/WEB-INF/web.xml index d54cdb3d..c1b00e03 100644 --- a/aspiredb/src/main/webapp/WEB-INF/web.xml +++ b/aspiredb/src/main/webapp/WEB-INF/web.xml @@ -6,7 +6,7 @@ contextConfigLocation - classpath*:gemma/gsec/acl/security-bean-baseconfig.xml, + classpath*:gemma/gsec/applicationContext-*.xml, classpath*:application-context.xml, classpath*:applicationContext-security.xml, classpath*:production-data-source.xml, diff --git a/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/BaseSpringContextTest.java b/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/BaseSpringContextTest.java index 073d078b..3f7df549 100644 --- a/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/BaseSpringContextTest.java +++ b/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/BaseSpringContextTest.java @@ -56,7 +56,7 @@ * @version $Id: BaseSpringContextTest.java,v 1.4 2013/06/12 20:18:48 cmcdonald Exp $ */ @ContextConfiguration(locations = { "classpath:/test-data-source.xml", - "classpath:gemma/gsec/acl/security-bean-baseconfig.xml", "classpath:/application-context.xml", + "classpath*:/gemma/gsec/applicationContext-*.xml", "classpath:/application-context.xml", "classpath:/applicationContext-security.xml", "classpath*:applicationContext-serviceBeans.xml" }) public abstract class BaseSpringContextTest extends AbstractJUnit4SpringContextTests implements InitializingBean { diff --git a/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/controller/SignupControllerTest.java b/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/controller/SignupControllerTest.java index 9007a287..f45e496f 100644 --- a/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/controller/SignupControllerTest.java +++ b/aspiredb/src/test/java/ubc/pavlab/aspiredb/server/controller/SignupControllerTest.java @@ -15,7 +15,7 @@ package ubc.pavlab.aspiredb.server.controller; import static org.junit.Assert.fail; -import static org.mockito.Matchers.any; +import static org.mockito.Mockito.any; import static org.mockito.Mockito.when; import java.util.ArrayList; diff --git a/aspiredb/src/test/resources/database.properties b/aspiredb/src/test/resources/database.properties index 2f967a78..23c9a0ae 100644 --- a/aspiredb/src/test/resources/database.properties +++ b/aspiredb/src/test/resources/database.properties @@ -1,6 +1,5 @@ -test.jdbc.driverClassName=com.mysql.jdbc.Driver +test.jdbc.driverClassName=com.mysql.cj.jdbc.Driver test.jdbc.url=jdbc:mysql://localhost:3306/aspiredbtest test.jdbc.username=default_testdb_user test.jdbc.password=default_testdb_password -#test.hibernate.dialect=org.hibernate.dialect.MySQLDialect test.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect \ No newline at end of file diff --git a/aspiredb/src/test/resources/test-data-source.xml b/aspiredb/src/test/resources/test-data-source.xml index 5337c4c2..f23985ef 100644 --- a/aspiredb/src/test/resources/test-data-source.xml +++ b/aspiredb/src/test/resources/test-data-source.xml @@ -1,15 +1,7 @@ + xsi:schemaLocation="http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans-3.2.xsd"> @@ -22,34 +14,20 @@ - - - com.mysql.jdbc.Driver - - - ${test.jdbc.username} - - - ${test.jdbc.password} - - - ${test.jdbc.url} - - - 20 - - - + + + + + + + + - - - + - - classpath:hibernate.cfg.xml - + @@ -72,9 +50,7 @@ - - - +