mirror of https://github.com/apache/archiva.git
Use JPA as default and only database backend
Remove the JDO dependencies and set the JPA implementation as only database alternative and default implementation. Uses the same database as JDO before.
This commit is contained in:
parent
dfcef53bf9
commit
dd311845e1
|
@ -168,6 +168,11 @@
|
|||
<artifactId>xercesImpl</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.hsqldb</groupId>
|
||||
<artifactId>hsqldb</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<pluginManagement>
|
||||
|
|
|
@ -209,6 +209,12 @@
|
|||
<artifactId>assertj-core</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.hsqldb</groupId>
|
||||
<artifactId>hsqldb</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
<build>
|
||||
<plugins>
|
||||
|
|
|
@ -235,6 +235,12 @@
|
|||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.hsqldb</groupId>
|
||||
<artifactId>hsqldb</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
|
|
@ -177,6 +177,12 @@
|
|||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.hsqldb</groupId>
|
||||
<artifactId>hsqldb</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
|
|
@ -315,6 +315,12 @@
|
|||
<scope>test</scope>
|
||||
<version>${redback.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-keys-jpa</artifactId>
|
||||
<scope>test</scope>
|
||||
<version>${redback.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva</groupId>
|
||||
|
@ -322,6 +328,12 @@
|
|||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.hsqldb</groupId>
|
||||
<artifactId>hsqldb</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.jackrabbit</groupId>
|
||||
<artifactId>jackrabbit-core</artifactId>
|
||||
|
|
|
@ -40,7 +40,7 @@ public class RedbackRuntimeConfigurationServiceTest
|
|||
{
|
||||
RedbackRuntimeConfiguration redbackRuntimeConfiguration =
|
||||
getRedbackRuntimeConfigurationService().getRedbackRuntimeConfiguration();
|
||||
assertEquals( "jdo", redbackRuntimeConfiguration.getUserManagerImpls().get( 0 ) );
|
||||
assertEquals( "jpa", redbackRuntimeConfiguration.getUserManagerImpls().get( 0 ) );
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -49,7 +49,7 @@ public class RedbackRuntimeConfigurationServiceTest
|
|||
{
|
||||
RedbackRuntimeConfiguration redbackRuntimeConfiguration =
|
||||
getRedbackRuntimeConfigurationService().getRedbackRuntimeConfiguration();
|
||||
assertEquals( "jdo", redbackRuntimeConfiguration.getUserManagerImpls().get( 0 ) );
|
||||
assertEquals( "jpa", redbackRuntimeConfiguration.getUserManagerImpls().get( 0 ) );
|
||||
|
||||
redbackRuntimeConfiguration.setUserManagerImpls( Arrays.asList( "foo" ) );
|
||||
|
||||
|
@ -68,7 +68,7 @@ public class RedbackRuntimeConfigurationServiceTest
|
|||
RedbackRuntimeConfigurationService service = getRedbackRuntimeConfigurationService();
|
||||
List<UserManagerImplementationInformation> infos = service.getUserManagerImplementationInformations();
|
||||
assertThat( infos ).isNotNull().isNotEmpty().contains(
|
||||
new UserManagerImplementationInformation( "jdo", null, false ) );
|
||||
new UserManagerImplementationInformation( "jpa", null, false ) );
|
||||
|
||||
}
|
||||
|
||||
|
@ -79,7 +79,7 @@ public class RedbackRuntimeConfigurationServiceTest
|
|||
RedbackRuntimeConfigurationService service = getRedbackRuntimeConfigurationService();
|
||||
List<RBACManagerImplementationInformation> infos = service.getRbacManagerImplementationInformations();
|
||||
assertThat( infos ).isNotNull().isNotEmpty().contains(
|
||||
new RBACManagerImplementationInformation( "jdo", null, false ) );
|
||||
new RBACManagerImplementationInformation( "jpa", null, false ) );
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan
|
||||
base-package="org.apache.archiva.rest.services.utils"/>
|
||||
base-package="org.apache.archiva.redback.keys,org.apache.archiva.rest.services.utils"/>
|
||||
|
||||
<bean name="scheduler" class="org.apache.archiva.redback.components.scheduler.DefaultScheduler">
|
||||
<property name="properties">
|
||||
|
|
|
@ -338,6 +338,12 @@
|
|||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-keys-jpa</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-rest-services</artifactId>
|
||||
|
@ -414,6 +420,12 @@
|
|||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.hsqldb</groupId>
|
||||
<artifactId>hsqldb</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
default-lazy-init="true">
|
||||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan base-package="org.apache.archiva.web.startup, org.apache.archiva.web.runtime, org.apache.archiva.web.api,, org.apache.archiva.web.security"/>
|
||||
<context:component-scan base-package="org.apache.archiva.redback.keys,org.apache.archiva.web.startup, org.apache.archiva.web.runtime, org.apache.archiva.web.api,, org.apache.archiva.web.security"/>
|
||||
|
||||
<util:properties id="archivaRuntimeProperties" location="classpath:application.properties" />
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ import org.apache.archiva.redback.users.UserManagerException;
|
|||
import org.apache.archiva.redback.users.UserManagerListener;
|
||||
import org.apache.archiva.redback.users.UserNotFoundException;
|
||||
import org.apache.archiva.redback.users.UserQuery;
|
||||
import org.apache.archiva.redback.users.jdo.JdoUser;
|
||||
import org.apache.archiva.redback.users.jpa.model.JpaUser;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
|
@ -74,7 +74,7 @@ public class SecuritySystemStub
|
|||
{
|
||||
result = new AuthenticationResult( true, source.getUsername(), null );
|
||||
|
||||
User user = new JdoUser();
|
||||
User user = new JpaUser();
|
||||
user.setUsername( source.getUsername() );
|
||||
user.setPassword( users.get( source.getUsername() ) );
|
||||
|
||||
|
|
|
@ -30,7 +30,6 @@
|
|||
|
||||
<context:property-placeholder system-properties-mode="OVERRIDE"/>
|
||||
|
||||
|
||||
<bean name="commons-configuration" class="org.apache.archiva.redback.components.registry.commons.CommonsConfigurationRegistry">
|
||||
<property name="properties">
|
||||
<value>
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan
|
||||
base-package="org.apache.archiva.rest.services.utils"/>
|
||||
base-package="org.apache.archiva.redback.keys,org.apache.archiva.rest.services.utils"/>
|
||||
|
||||
<bean name="scheduler" class="org.apache.archiva.redback.components.scheduler.DefaultScheduler">
|
||||
<property name="properties">
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
|
||||
|
||||
|
||||
<jee:jndi-lookup id="dataSource" jndi-name="java:/comp/env/jdbc/redbackjpa" />
|
||||
<jee:jndi-lookup id="dataSource" jndi-name="java:/comp/env/jdbc/users" />
|
||||
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
|
||||
<property name="dataSource" ref="dataSource" />
|
||||
<property name="jpaVendorAdapter" >
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:context="http://www.springframework.org/schema/context"
|
||||
xmlns:task="http://www.springframework.org/schema/task" xmlns:util="http://www.springframework.org/schema/util"
|
||||
xmlns:tx="http://www.springframework.org/schema/tx"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans
|
||||
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
|
||||
http://www.springframework.org/schema/context
|
||||
|
@ -28,7 +29,8 @@
|
|||
http://www.springframework.org/schema/task
|
||||
http://www.springframework.org/schema/task/spring-task-3.0.xsd
|
||||
http://www.springframework.org/schema/util
|
||||
http://www.springframework.org/schema/util/spring-util.xsd">
|
||||
http://www.springframework.org/schema/util/spring-util.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
|
||||
|
||||
<context:property-placeholder location="classpath:application.properties" />
|
||||
|
||||
|
@ -108,37 +110,6 @@
|
|||
</bean>
|
||||
<!-- END SNIPPET: configuration-files-list -->
|
||||
|
||||
<bean name="jdoFactory#users" class="org.apache.archiva.redback.components.jdo.DataSourceConfigurableJdoFactory">
|
||||
<property name="connectionFactoryName" value="java:comp/env/jdbc/users"/>
|
||||
<property name="shutdownConnectionFactoryName" value="java:comp/env/jdbc/usersShutdown"/>
|
||||
<property name="persistenceManagerFactoryClass" value="org.jpox.PersistenceManagerFactoryImpl"/>
|
||||
<property name="otherProperties">
|
||||
<props>
|
||||
<prop key="org.jpox.autoCreateSchema">true</prop>
|
||||
<prop key="org.jpox.validateTables">false</prop>
|
||||
<prop key="org.jpox.validateConstraints">false</prop>
|
||||
<prop key="org.jpox.validateColumns">false</prop>
|
||||
<prop key="org.jpox.autoStartMechanism">None</prop>
|
||||
<prop key="org.jpox.transactionIsolation">READ_COMMITTED</prop>
|
||||
<prop key="org.jpox.poid.transactionIsolation">READ_COMMITTED</prop>
|
||||
<prop key="org.jpox.rdbms.dateTimezone">JDK_DEFAULT_TIMEZONE</prop>
|
||||
<!-- NEEDED FOR MYSQL UTF-8 Databases -->
|
||||
<prop key="org.jpox.rdbms.stringDefaultLength">255</prop>
|
||||
|
||||
<!-- NEEDED FOR POSTGRES, But causes problems in other JDBC implementations.
|
||||
<prop key="org.jpox.identifier.case">PreserveCase</prop>
|
||||
-->
|
||||
|
||||
<!-- cache activation -->
|
||||
<prop key="org.jpox.cache.level2">true</prop>
|
||||
<prop key="org.jpox.cache.level2.type">ehcacheclassbased</prop>
|
||||
<prop key="org.jpox.cache.level2.cacheName">defaultJpox</prop>
|
||||
<prop key="org.jpox.cache.level2.configurationFile">/ehcache.xml</prop>
|
||||
</props>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
|
||||
<bean name="scheduler" class="org.apache.archiva.redback.components.scheduler.DefaultScheduler">
|
||||
<property name="properties">
|
||||
<props>
|
||||
|
@ -324,4 +295,28 @@
|
|||
</bean>
|
||||
-->
|
||||
|
||||
<bean name="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
|
||||
<property name="jpaVendorAdapter" >
|
||||
<bean class="org.springframework.orm.jpa.vendor.OpenJpaVendorAdapter" />
|
||||
</property>
|
||||
<property name="persistenceXmlLocation" value="classpath:META-INF/persistence.xml" />
|
||||
<property name="jpaPropertyMap">
|
||||
<map>
|
||||
<entry key="openjpa.jdbc.SynchronizeMappings" value="buildSchema(ForeignKeys=true)"/>
|
||||
<entry key="openjpa.jdbc.SchemaFactory" value="native(ForeignKeys=true)" />
|
||||
<entry key="openjpa.jdbc.MappingDefaults"
|
||||
value="ForeignKeyDeleteAction=restrict,JoinForeignKeyDeleteAction=restrict"/>
|
||||
<entry key="openjpa.Log" value="DefaultLevel=TRACE, Runtime=TRACE, Tool=INFO, SQL=TRACE"/>
|
||||
<entry key="openjpa.jdbc.DBDictionary" value="(disableSchemaFactoryColumnTypeErrors=true,BitTypeName=CHAR(1),BooleanTypeName=CHAR(1),BooleanRepresentation=STRING_YN)"/>
|
||||
</map>
|
||||
</property>
|
||||
|
||||
</bean>
|
||||
|
||||
<bean name="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager" >
|
||||
<property name="entityManagerFactory" ref="entityManagerFactory" />
|
||||
</bean>
|
||||
|
||||
<tx:annotation-driven />
|
||||
|
||||
</beans>
|
||||
|
|
|
@ -143,12 +143,6 @@
|
|||
<res-auth>Container</res-auth>
|
||||
<res-sharing-scope>Shareable</res-sharing-scope>
|
||||
</resource-ref>
|
||||
<resource-ref>
|
||||
<res-ref-name>jdbc/redbackjpa</res-ref-name>
|
||||
<res-type>javax.sql.DataSource</res-type>
|
||||
<res-auth>Container</res-auth>
|
||||
<res-sharing-scope>Shareable</res-sharing-scope>
|
||||
</resource-ref>
|
||||
<resource-ref>
|
||||
<res-ref-name>mail/Session</res-ref-name>
|
||||
<res-type>javax.mail.Session</res-type>
|
||||
|
|
|
@ -26,12 +26,14 @@
|
|||
</properties>
|
||||
|
||||
<appenders>
|
||||
<Console name="console" target="SYSTEM_OUT">
|
||||
<Console name="console" target="SYSTEM_OUT" level="info">
|
||||
<!--PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/-->
|
||||
<PatternLayout pattern="%highlight{%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n}" />
|
||||
</Console>
|
||||
<RollingRandomAccessFile name="rolling" fileName="${logsDirectory}/archiva.log"
|
||||
filePattern="${logsDirectory}/archiva-%d{MM-dd-yyyy}.log" immediateFlush="false" append="true">
|
||||
filePattern="${logsDirectory}/archiva-%d{MM-dd-yyyy}.log"
|
||||
|
||||
immediateFlush="true" append="true">
|
||||
<PatternLayout>
|
||||
<pattern>%d [%t] %-5p %c %x - %m%n</pattern>
|
||||
</PatternLayout>
|
||||
|
@ -82,6 +84,9 @@
|
|||
|
||||
<logger name="org.apache.archiva.redback.components.registry.commons.CommonsConfigurationRegistry" level="debug"/>
|
||||
|
||||
<logger name="org.apache.archiva.redback.components.taskqueue.DefaultTaskQueue" level="info" />
|
||||
|
||||
<logger name="org.apache.archiva" level="debug" />
|
||||
<!--
|
||||
<logger name="org.apache.archiva.scheduler.indexing" level="debug"/>
|
||||
-->
|
||||
|
|
|
@ -24,12 +24,7 @@
|
|||
driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
|
||||
url="jdbc:derby:${appserver.base}/database/users;create=true"
|
||||
/>
|
||||
<Resource name="jdbc/redbackjpa" auth="Container" type="javax.sql.DataSource"
|
||||
username="sa"
|
||||
password=""
|
||||
driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
|
||||
url="jdbc:derby:${appserver.base}/database/jpausers;create=true"
|
||||
/>
|
||||
|
||||
<Resource name="mail/Session" auth="Container"
|
||||
type="javax.mail.Session"
|
||||
mail.smtp.host="localhost"/>
|
||||
|
|
|
@ -149,6 +149,11 @@
|
|||
<artifactId>redback-rbac-memory</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-keys-jpa</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-users-memory</artifactId>
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan
|
||||
base-package="org.apache.archiva.webdav,org.apache.archiva.metadata.repository,org.apache.archiva.webdav.util,org.apache.archiva.common.plexusbridge"/>
|
||||
base-package="org.apache.archiva.redback.keys,org.apache.archiva.webdav,org.apache.archiva.metadata.repository,org.apache.archiva.webdav.util,org.apache.archiva.common.plexusbridge"/>
|
||||
|
||||
<bean name="scheduler" class="org.apache.archiva.redback.components.scheduler.DefaultScheduler">
|
||||
<property name="properties">
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
<context:property-placeholder system-properties-mode="OVERRIDE"/>
|
||||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan base-package="org.apache.archiva.webdav,org.apache.archiva.metadata.repository"/>
|
||||
<context:component-scan base-package="org.apache.archiva.redback.keys,org.apache.archiva.webdav,org.apache.archiva.metadata.repository"/>
|
||||
|
||||
<bean name="scheduler" class="org.apache.archiva.redback.components.scheduler.DefaultScheduler">
|
||||
<property name="properties">
|
||||
|
|
11
pom.xml
11
pom.xml
|
@ -1029,6 +1029,17 @@
|
|||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-keys-jpa</artifactId>
|
||||
<version>${redback.version}</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>commons-logging</groupId>
|
||||
<artifactId>commons-logging</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.archiva.redback</groupId>
|
||||
<artifactId>redback-rbac-model</artifactId>
|
||||
|
|
Loading…
Reference in New Issue