Updated Branches: refs/heads/develop adff4653c -> 717792188
- updated to Jetty 9.0 - updated to Servlet API 3.0 Project: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/commit/71779218 Tree: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/tree/71779218 Diff: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/diff/71779218 Branch: refs/heads/develop Commit: 717792188a4f93a09c1fca38c6365b871a4962f7 Parents: adff465 Author: Sebastian Schaffert <[email protected]> Authored: Thu May 16 16:42:46 2013 +0200 Committer: Sebastian Schaffert <[email protected]> Committed: Thu May 16 16:42:46 2013 +0200 ---------------------------------------------------------------------- .../src/main/resources/archetype-resources/pom.xml | 12 +- .../src/main/resources/archetype-resources/pom.xml | 4 +- client/marmotta-client-java/pom.xml | 16 +- launchers/marmotta-webapp/pom.xml | 6 +- parent/pom.xml | 107 ++++------ platform/marmotta-core/pom.xml | 15 +- .../core/api/triplestore/SesameService.java | 3 +- .../services/triplestore/SesameServiceImpl.java | 168 +++++++++------ .../platform/core/test/base/JettyMarmotta.java | 34 ++-- .../services/ldcache/LDCacheSailProvider.java | 4 +- platform/marmotta-reasoner/pom.xml | 12 +- .../reasoner/services/ReasoningSailProvider.java | 3 +- platform/marmotta-sparql/pom.xml | 12 +- .../sparql/services/sail/SPARQLSailProvider.java | 3 +- .../services/VersioningSailProvider.java | 3 +- 15 files changed, 218 insertions(+), 184 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/build/archetypes/marmotta-archetype-module/src/main/resources/archetype-resources/pom.xml ---------------------------------------------------------------------- diff --git a/build/archetypes/marmotta-archetype-module/src/main/resources/archetype-resources/pom.xml b/build/archetypes/marmotta-archetype-module/src/main/resources/archetype-resources/pom.xml index 00ae519..3d7ec18 100644 --- a/build/archetypes/marmotta-archetype-module/src/main/resources/archetype-resources/pom.xml +++ b/build/archetypes/marmotta-archetype-module/src/main/resources/archetype-resources/pom.xml @@ -64,9 +64,15 @@ <scope>test</scope> </dependency> <dependency> - <groupId>org.mortbay.jetty</groupId> - <artifactId>jetty-embedded</artifactId> - <version>6.1.26</version> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-server</artifactId> + <version>9.0.3.v20130506</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-servlet</artifactId> + <version>9.0.3.v20130506</version> <scope>test</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/build/archetypes/marmotta-archetype-webapp/src/main/resources/archetype-resources/pom.xml ---------------------------------------------------------------------- diff --git a/build/archetypes/marmotta-archetype-webapp/src/main/resources/archetype-resources/pom.xml b/build/archetypes/marmotta-archetype-webapp/src/main/resources/archetype-resources/pom.xml index 61bae84..2e163a6 100644 --- a/build/archetypes/marmotta-archetype-webapp/src/main/resources/archetype-resources/pom.xml +++ b/build/archetypes/marmotta-archetype-webapp/src/main/resources/archetype-resources/pom.xml @@ -232,8 +232,8 @@ <!-- Servlet / CDI Environment --> <dependency> <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> - <version>${servletApiVersion}</version> + <artifactId>javax.servlet-api</artifactId> + <version>3.0.1</version> <scope>provided</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/client/marmotta-client-java/pom.xml ---------------------------------------------------------------------- diff --git a/client/marmotta-client-java/pom.xml b/client/marmotta-client-java/pom.xml index aee1f8c..4737e5e 100644 --- a/client/marmotta-client-java/pom.xml +++ b/client/marmotta-client-java/pom.xml @@ -79,10 +79,6 @@ <artifactId>guava</artifactId> </dependency> <dependency> - <groupId>org.apache.solr</groupId> - <artifactId>solr-solrj</artifactId> - </dependency> - <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-core-asl</artifactId> </dependency> @@ -124,9 +120,15 @@ <scope>test</scope> </dependency> <dependency> - <groupId>org.mortbay.jetty</groupId> - <artifactId>jetty-embedded</artifactId> - <version>6.1.26</version> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-server</artifactId> + <version>9.0.3.v20130506</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-servlet</artifactId> + <version>9.0.3.v20130506</version> <scope>test</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/launchers/marmotta-webapp/pom.xml ---------------------------------------------------------------------- diff --git a/launchers/marmotta-webapp/pom.xml b/launchers/marmotta-webapp/pom.xml index 142537c..002cf57 100644 --- a/launchers/marmotta-webapp/pom.xml +++ b/launchers/marmotta-webapp/pom.xml @@ -79,7 +79,7 @@ <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat6-maven-plugin</artifactId> - <version>2.0</version> + <version>2.1</version> <configuration> <path>${marmotta.context}</path> <port>${marmotta.port}</port> @@ -91,7 +91,7 @@ <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> - <version>2.0</version> + <version>2.1</version> <configuration> <path>${marmotta.context}</path> <port>${marmotta.port}</port> @@ -262,7 +262,7 @@ <!-- Servlet / CDI Environment --> <dependency> <groupId>javax.el</groupId> - <artifactId>el-api</artifactId> + <artifactId>javax.el-api</artifactId> <scope>provided</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/parent/pom.xml ---------------------------------------------------------------------- diff --git a/parent/pom.xml b/parent/pom.xml index 0655580..9726ef9 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -39,16 +39,17 @@ <sesame.version>2.7.0</sesame.version> <junit.version>4.11</junit.version> <weld.version>1.1.Final</weld.version> - <weld.core.version>1.1.11.Final</weld.core.version> + <weld.core.version>1.1.13.Final</weld.core.version> <rest.assured.version>1.7.1</rest.assured.version> <hamcrest.version>1.3</hamcrest.version> <tempus.fugit.version>1.1</tempus.fugit.version> <jatl.version>0.2.2</jatl.version> - <servlet.api.version>2.5</servlet.api.version> - <javax.el.version>2.2</javax.el.version> + <servlet.api.version>3.0.1</servlet.api.version> + <javax.el.version>2.2.4</javax.el.version> <h2.version>1.3.170</h2.version> <postgresql.version>9.2-1002-jdbc4</postgresql.version> <mysql.version>5.1.21</mysql.version> + <jetty.version>9.0.3.v20130506</jetty.version> </properties> <prerequisites> @@ -564,7 +565,7 @@ <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> - <version>13.0.1</version> + <version>14.0.1</version> </dependency> <dependency> <groupId>commons-io</groupId> @@ -600,7 +601,7 @@ <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> - <version>1.7</version> + <version>1.8</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> @@ -690,14 +691,9 @@ <!-- XML Processing --> <dependency> - <groupId>xom</groupId> - <artifactId>xom</artifactId> - <version>1.2.6</version> - </dependency> - <dependency> <groupId>org.jdom</groupId> <artifactId>jdom2</artifactId> - <version>2.0.4</version> + <version>2.0.5</version> </dependency> <dependency> <groupId>jaxen</groupId> @@ -709,47 +705,47 @@ <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> - <version>1.7.4</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-ext</artifactId> - <version>1.7.4</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> - <version>1.7.4</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> - <version>1.7.4</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> - <version>1.7.4</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> - <version>1.7.4</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> - <version>1.0.10</version> + <version>1.0.13</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> - <version>1.0.10</version> + <version>1.0.13</version> </dependency> <dependency> <groupId>ch.qos.cal10n</groupId> <artifactId>cal10n-api</artifactId> - <version>0.7.7</version> + <version>0.8.1</version> </dependency> <dependency> <groupId>org.codehaus.janino</groupId> @@ -760,20 +756,20 @@ <!-- Servlet API, Web Services --> <dependency> <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> + <artifactId>javax.servlet-api</artifactId> <version>${servlet.api.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.el</groupId> - <artifactId>el-api</artifactId> + <artifactId>javax.el-api</artifactId> <version>${javax.el.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-cdi</artifactId> - <version>2.3.5.Final</version> + <version>2.3.6.Final</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> @@ -784,7 +780,7 @@ <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-jackson-provider</artifactId> - <version>2.3.5.Final</version> + <version>2.3.6.Final</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> @@ -886,7 +882,7 @@ <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache-core</artifactId> - <version>2.6.5</version> + <version>2.6.6</version> </dependency> <dependency> <groupId>com.h2database</groupId> @@ -916,45 +912,15 @@ <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jdbc</artifactId> - <version>7.0.37</version> - </dependency> - - - <!-- SOLR (Semantic Search) --> - <dependency> - <groupId>org.apache.solr</groupId> - <artifactId>solr-solrj</artifactId> - <version>3.6.1</version> - <exclusions> - <exclusion> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.solr</groupId> - <artifactId>solr-core</artifactId> - <version>3.6.1</version> - <exclusions> - <exclusion> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - </exclusion> - </exclusions> + <version>7.0.40</version> </dependency> <dependency> - <groupId>org.apache.solr</groupId> - <artifactId>solr-clustering</artifactId> - <version>3.6.1</version> - <exclusions> - <exclusion> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - </exclusion> - </exclusions> + <groupId>org.apache.tomcat</groupId> + <artifactId>tomcat-juli</artifactId> + <version>7.0.40</version> </dependency> + <!-- Test Support --> <dependency> <groupId>com.jayway.restassured</groupId> @@ -1447,6 +1413,24 @@ <groupId>com.thetransactioncompany</groupId> <artifactId>cors-filter</artifactId> <version>1.5.1</version> + <exclusions> + <exclusion> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + </exclusion> + </exclusions> + </dependency> + + <!-- embedded jetty (testing) --> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-server</artifactId> + <version>${jetty.version}</version> + </dependency> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-servlet</artifactId> + <version>${jetty.version}</version> </dependency> </dependencies> @@ -1457,7 +1441,8 @@ <!-- Java Servlet API is always provided --> <dependency> <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> + <artifactId>javax.servlet-api</artifactId> + <version>${servlet.api.version}</version> <scope>provided</scope> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-core/pom.xml ---------------------------------------------------------------------- diff --git a/platform/marmotta-core/pom.xml b/platform/marmotta-core/pom.xml index 49c16f1..f95f33b 100644 --- a/platform/marmotta-core/pom.xml +++ b/platform/marmotta-core/pom.xml @@ -248,7 +248,8 @@ <dependency> <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> + <artifactId>javax.servlet-api</artifactId> + <version>${servlet.api.version}</version> <scope>provided</scope> </dependency> <dependency> @@ -313,9 +314,15 @@ <!-- Test Support --> <dependency> - <groupId>org.mortbay.jetty</groupId> - <artifactId>jetty-embedded</artifactId> - <version>6.1.26</version> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-server</artifactId> + <version>${jetty.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-servlet</artifactId> + <version>${jetty.version}</version> <scope>test</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/api/triplestore/SesameService.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/api/triplestore/SesameService.java b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/api/triplestore/SesameService.java index bfc3f58..d47fd32 100644 --- a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/api/triplestore/SesameService.java +++ b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/api/triplestore/SesameService.java @@ -83,5 +83,6 @@ public interface SesameService { */ @Deprecated ValueFactory getValueFactory(); - + + void restart(); } http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/triplestore/SesameServiceImpl.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/triplestore/SesameServiceImpl.java b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/triplestore/SesameServiceImpl.java index ca7e00a..b29036f 100644 --- a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/triplestore/SesameServiceImpl.java +++ b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/services/triplestore/SesameServiceImpl.java @@ -17,6 +17,7 @@ */ package org.apache.marmotta.platform.core.services.triplestore; +import edu.emory.mathcs.backport.java.util.concurrent.locks.ReentrantReadWriteLock; import org.apache.marmotta.platform.core.api.config.ConfigurationService; import org.apache.marmotta.platform.core.api.triplestore.NotifyingSailProvider; import org.apache.marmotta.platform.core.api.triplestore.SesameService; @@ -37,6 +38,7 @@ import org.apache.marmotta.kiwi.transactions.sail.KiWiTransactionalSail; import org.openrdf.model.ValueFactory; import org.openrdf.repository.RepositoryConnection; import org.openrdf.repository.RepositoryException; +import org.openrdf.repository.base.RepositoryConnectionWrapper; import org.openrdf.repository.sail.SailRepository; import org.openrdf.sail.NotifyingSail; import org.openrdf.sail.Sail; @@ -117,79 +119,86 @@ public class SesameServiceImpl implements SesameService { private SailRepository repository; + private ReentrantReadWriteLock restartLock = new ReentrantReadWriteLock(); + /** * Initialise the Sesame repository. Should be called on service activation. */ @Override public synchronized void initialise() { - log.info("Apache Marmotta Sesame Repository Service starting up ..."); + restartLock.writeLock().lock(); + try { + log.info("Apache Marmotta Sesame Repository Service starting up ..."); - if(repository != null) { - log.warn("RDF repository has already been initialized"); - } + if(repository != null) { + log.warn("RDF repository has already been initialized"); + } - String database = configurationService.getStringConfiguration("database.type"); - KiWiDialect dialect; - if("h2".equalsIgnoreCase(database)) { - dialect = new H2Dialect(); - } else if("mysql".equalsIgnoreCase(database)) { - dialect = new MySQLDialect(); - } else if("postgres".equalsIgnoreCase(database)) { - dialect = new PostgreSQLDialect(); - } else - throw new IllegalStateException("database type "+database+" currently not supported!"); - String jdbcUrl = configurationService.getStringConfiguration("database.url"); - String dbUser = configurationService.getStringConfiguration("database.user"); - String dbPass = configurationService.getStringConfiguration("database.password"); - - store = new KiWiStore("lmf", jdbcUrl, dbUser, dbPass, dialect, configurationService.getDefaultContext(), configurationService.getInferredContext()); - - tsail = new KiWiTransactionalSail(store); - - log.info("initialising repository plugins ..."); - - // wrap all stackable transactional sails - TransactionalSail transactionalSail = tsail; - for(TransactionalSailProvider provider : transactionalSailProviders) { - if(provider.isEnabled()) { - log.info("- transaction plugin: {}",provider.getName()); - transactionalSail = provider.createSail(transactionalSail); - } else { - log.info("- transaction plugin: {} (DISABLED)", provider.getName()); + String database = configurationService.getStringConfiguration("database.type"); + KiWiDialect dialect; + if("h2".equalsIgnoreCase(database)) { + dialect = new H2Dialect(); + } else if("mysql".equalsIgnoreCase(database)) { + dialect = new MySQLDialect(); + } else if("postgres".equalsIgnoreCase(database)) { + dialect = new PostgreSQLDialect(); + } else + throw new IllegalStateException("database type "+database+" currently not supported!"); + String jdbcUrl = configurationService.getStringConfiguration("database.url"); + String dbUser = configurationService.getStringConfiguration("database.user"); + String dbPass = configurationService.getStringConfiguration("database.password"); + + store = new KiWiStore("lmf", jdbcUrl, dbUser, dbPass, dialect, configurationService.getDefaultContext(), configurationService.getInferredContext()); + + tsail = new KiWiTransactionalSail(store); + + log.info("initialising repository plugins ..."); + + // wrap all stackable transactional sails + TransactionalSail transactionalSail = tsail; + for(TransactionalSailProvider provider : transactionalSailProviders) { + if(provider.isEnabled()) { + log.info("- transaction plugin: {}",provider.getName()); + transactionalSail = provider.createSail(transactionalSail); + } else { + log.info("- transaction plugin: {} (DISABLED)", provider.getName()); + } } - } - // wrap all stackable notifying sails - NotifyingSail notifyingSail = transactionalSail; - for(NotifyingSailProvider provider : notifyingSailProviders) { - if(provider.isEnabled()) { - log.info("- notifying plugin: {}",provider.getName()); - notifyingSail = provider.createSail(notifyingSail); - } else { - log.info("- notifying plugin: {} (DISABLED)", provider.getName()); + // wrap all stackable notifying sails + NotifyingSail notifyingSail = transactionalSail; + for(NotifyingSailProvider provider : notifyingSailProviders) { + if(provider.isEnabled()) { + log.info("- notifying plugin: {}",provider.getName()); + notifyingSail = provider.createSail(notifyingSail); + } else { + log.info("- notifying plugin: {} (DISABLED)", provider.getName()); + } } - } - // wrap all standard sails - Sail standardSail = notifyingSail; - for(StandardSailProvider provider : standardSailProviders) { - if(provider.isEnabled()) { - log.info("- standard plugin: {}",provider.getName()); - standardSail = provider.createSail(standardSail); - } else { - log.info("- standard plugin: {} (DISABLED)", provider.getName()); + // wrap all standard sails + Sail standardSail = notifyingSail; + for(StandardSailProvider provider : standardSailProviders) { + if(provider.isEnabled()) { + log.info("- standard plugin: {}",provider.getName()); + standardSail = provider.createSail(standardSail); + } else { + log.info("- standard plugin: {} (DISABLED)", provider.getName()); + } } - } - // the CDI events should be triggered once all internal events have been handled, so register the transaction listener last - tsail.addTransactionListener(new LMFTransactionEventProxy()); + // the CDI events should be triggered once all internal events have been handled, so register the transaction listener last + tsail.addTransactionListener(new LMFTransactionEventProxy()); - repository = new SailRepository(standardSail); + repository = new SailRepository(standardSail); - try { - repository.initialize(); - } catch (RepositoryException e) { - log.error("error while initialising Apache Marmotta Sesame repository",e); + try { + repository.initialize(); + } catch (RepositoryException e) { + log.error("error while initialising Apache Marmotta Sesame repository",e); + } + } finally { + restartLock.writeLock().unlock(); } } @@ -199,14 +208,33 @@ public class SesameServiceImpl implements SesameService { @Override @PreDestroy public synchronized void shutdown() { - if(repository != null) { - log.info("Apache Marmotta Sesame Repository Service shutting down ..."); - try { - repository.shutDown(); - } catch (RepositoryException e) { - log.error("error while shutting down Apache Marmotta Sesame repository",e); + restartLock.writeLock().lock(); + try { + if(repository != null) { + log.info("Apache Marmotta Sesame Repository Service shutting down ..."); + try { + repository.shutDown(); + } catch (RepositoryException e) { + log.error("error while shutting down Apache Marmotta Sesame repository",e); + } + repository = null; } - repository = null; + } finally { + restartLock.writeLock().unlock(); + } + } + + /** + * Restart the Sesame Service. + */ + @Override + public void restart() { + restartLock.writeLock().lock(); + try { + shutdown(); + initialise(); + } finally { + restartLock.writeLock().unlock(); } } @@ -245,9 +273,15 @@ public class SesameServiceImpl implements SesameService { @Override @Produces public RepositoryConnection getConnection() throws RepositoryException { + restartLock.readLock().lock(); RepositoryConnection connection = repository.getConnection(); - // connection.setAutoCommit(false); - return connection; + return new RepositoryConnectionWrapper(repository,connection) { + @Override + public void close() throws RepositoryException { + super.close(); + restartLock.readLock().unlock(); + } + }; } /** http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-core/src/test/java/org/apache/marmotta/platform/core/test/base/JettyMarmotta.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-core/src/test/java/org/apache/marmotta/platform/core/test/base/JettyMarmotta.java b/platform/marmotta-core/src/test/java/org/apache/marmotta/platform/core/test/base/JettyMarmotta.java index ed4af08..c1a965f 100644 --- a/platform/marmotta-core/src/test/java/org/apache/marmotta/platform/core/test/base/JettyMarmotta.java +++ b/platform/marmotta-core/src/test/java/org/apache/marmotta/platform/core/test/base/JettyMarmotta.java @@ -19,24 +19,20 @@ package org.apache.marmotta.platform.core.test.base; import java.io.IOException; import java.net.ServerSocket; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashSet; -import java.util.Random; -import java.util.Set; +import java.util.*; import org.apache.marmotta.platform.core.servlet.MarmottaResourceFilter; import org.apache.marmotta.platform.core.test.base.jetty.TestApplication; import org.apache.marmotta.platform.core.test.base.jetty.TestInjectorFactory; import org.apache.marmotta.platform.core.util.CDIContext; import org.apache.marmotta.platform.core.webservices.CoreApplication; -import org.mortbay.jetty.Connector; -import org.mortbay.jetty.Handler; -import org.mortbay.jetty.Server; -import org.mortbay.jetty.nio.SelectChannelConnector; -import org.mortbay.jetty.servlet.Context; -import org.mortbay.jetty.servlet.FilterHolder; -import org.mortbay.jetty.servlet.ServletHolder; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.servlet.FilterHolder; +import org.eclipse.jetty.servlet.FilterMapping; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; + +import javax.servlet.DispatcherType; /** * An extended version of the EmbeddedMarmotta which also starts a jetty servlet @@ -91,17 +87,13 @@ public class JettyMarmotta extends AbstractMarmotta { this.port = port; this.context = (context != null ? context : "/"); - // create a new jetty - jetty = new Server(); + // create a new jetty & run it on port 8080 + jetty = new Server(this.port); + - // run it on port 8080 - Connector connector=new SelectChannelConnector(); - connector.setPort(this.port); - jetty.setConnectors(new Connector[]{connector}); - TestInjectorFactory.setManager(container.getBeanManager()); - Context ctx = new Context(jetty, this.context); + ServletContextHandler ctx = new ServletContextHandler(jetty, this.context); // now we have a context, start up the first phase of the LMF initialisation startupService.startupConfiguration(home.getAbsolutePath(), override, ctx.getServletContext()); @@ -112,7 +104,7 @@ public class JettyMarmotta extends AbstractMarmotta { // register filters FilterHolder resourceFilter = new FilterHolder(CDIContext.getInstance(MarmottaResourceFilter.class)); resourceFilter.setInitParameter("kiwi.resourceCaching", "true"); - ctx.addFilter(resourceFilter,"/*", Handler.DEFAULT); + ctx.addFilter(resourceFilter, "/*", EnumSet.of(DispatcherType.REQUEST)); // register RestEasy so we can run web services http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-ldcache/src/main/java/org/apache/marmotta/platform/ldcache/services/ldcache/LDCacheSailProvider.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-ldcache/src/main/java/org/apache/marmotta/platform/ldcache/services/ldcache/LDCacheSailProvider.java b/platform/marmotta-ldcache/src/main/java/org/apache/marmotta/platform/ldcache/services/ldcache/LDCacheSailProvider.java index 8e455e1..f2a08db 100644 --- a/platform/marmotta-ldcache/src/main/java/org/apache/marmotta/platform/ldcache/services/ldcache/LDCacheSailProvider.java +++ b/platform/marmotta-ldcache/src/main/java/org/apache/marmotta/platform/ldcache/services/ldcache/LDCacheSailProvider.java @@ -95,9 +95,7 @@ public class LDCacheSailProvider implements NotifyingSailProvider { public void configurationChanged(@Observes ConfigurationChangedEvent e) { if(e.containsChangedKey(LDCACHE_ENABLED)) { - // FIXME: (jf) i don't like this dependency - i think it would be better to fire an event here - sesameService.shutdown(); - sesameService.initialise(); + sesameService.restart(); } } http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-reasoner/pom.xml ---------------------------------------------------------------------- diff --git a/platform/marmotta-reasoner/pom.xml b/platform/marmotta-reasoner/pom.xml index e238e41..fc1d3f6 100644 --- a/platform/marmotta-reasoner/pom.xml +++ b/platform/marmotta-reasoner/pom.xml @@ -141,9 +141,15 @@ <scope>test</scope> </dependency> <dependency> - <groupId>org.mortbay.jetty</groupId> - <artifactId>jetty-embedded</artifactId> - <version>6.1.26</version> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-server</artifactId> + <version>${jetty.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-servlet</artifactId> + <version>${jetty.version}</version> <scope>test</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-reasoner/src/main/java/org/apache/marmotta/platform/reasoner/services/ReasoningSailProvider.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-reasoner/src/main/java/org/apache/marmotta/platform/reasoner/services/ReasoningSailProvider.java b/platform/marmotta-reasoner/src/main/java/org/apache/marmotta/platform/reasoner/services/ReasoningSailProvider.java index 8ce7627..52dd024 100644 --- a/platform/marmotta-reasoner/src/main/java/org/apache/marmotta/platform/reasoner/services/ReasoningSailProvider.java +++ b/platform/marmotta-reasoner/src/main/java/org/apache/marmotta/platform/reasoner/services/ReasoningSailProvider.java @@ -98,8 +98,7 @@ public class ReasoningSailProvider implements TransactionalSailProvider { public void configurationChanged(@Observes ConfigurationChangedEvent e) { if(e.containsChangedKey(REASONING_ENABLED)) { - sesameService.shutdown(); - sesameService.initialise(); + sesameService.restart(); } else if(e.containsChangedKeyWithPrefix("reasoning")) { ReasoningConfiguration config = sail.getConfig(); config.setBatchSize(configurationService.getIntConfiguration("reasoning.batchsize",1000)); http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-sparql/pom.xml ---------------------------------------------------------------------- diff --git a/platform/marmotta-sparql/pom.xml b/platform/marmotta-sparql/pom.xml index ac86efb..9374f2c 100644 --- a/platform/marmotta-sparql/pom.xml +++ b/platform/marmotta-sparql/pom.xml @@ -187,9 +187,15 @@ <scope>test</scope> </dependency> <dependency> - <groupId>org.mortbay.jetty</groupId> - <artifactId>jetty-embedded</artifactId> - <version>6.1.26</version> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-server</artifactId> + <version>${jetty.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>jetty-servlet</artifactId> + <version>${jetty.version}</version> <scope>test</scope> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sail/SPARQLSailProvider.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sail/SPARQLSailProvider.java b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sail/SPARQLSailProvider.java index 6b4112f..e91be5d 100644 --- a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sail/SPARQLSailProvider.java +++ b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sail/SPARQLSailProvider.java @@ -56,8 +56,7 @@ public class SPARQLSailProvider implements NotifyingSailProvider { public void configurationChanged(@Observes ConfigurationChangedEvent e) { if(e.containsChangedKey(SPARQL_STRATEGY)) { - sesameService.shutdown(); - sesameService.initialise(); + sesameService.restart(); } } http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/71779218/platform/marmotta-versioning/src/main/java/org/apache/marmotta/platform/versioning/services/VersioningSailProvider.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-versioning/src/main/java/org/apache/marmotta/platform/versioning/services/VersioningSailProvider.java b/platform/marmotta-versioning/src/main/java/org/apache/marmotta/platform/versioning/services/VersioningSailProvider.java index 0cefe05..67ad27c 100644 --- a/platform/marmotta-versioning/src/main/java/org/apache/marmotta/platform/versioning/services/VersioningSailProvider.java +++ b/platform/marmotta-versioning/src/main/java/org/apache/marmotta/platform/versioning/services/VersioningSailProvider.java @@ -96,8 +96,7 @@ public class VersioningSailProvider implements TransactionalSailProvider { public void configurationChanged(@Observes ConfigurationChangedEvent e) { if(e.containsChangedKey(VERSIONING_ENABLED)) { - sesameService.shutdown(); - sesameService.initialise(); + sesameService.restart(); } }
