diff --git a/README.md b/README.md index ef6690ba..51d545cc 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ See [here](http://jasonwryan.com/blog/2013/05/25/greader/) for an alternative me Deployment on your own server ----------------------------- -For storage, you can either use an embedded HSQLDB database or an external MySQL or PostgreSQL database. +For storage, you can either use an embedded HSQLDB database or an external MySQL, PostgreSQL or SQLServer database. You also need Maven 3.x (and a Java 1.7+ JDK) installed in order to build the application. To install maven and openjdk on Ubuntu, issue the following commands @@ -57,7 +57,7 @@ If you don't have git you can download the sources as a zip file from [here](htt Now build the application - Embedded HSQL database + Embedded HSQL database: mvn clean package tomee:build -Pprod External MySQL database: @@ -66,6 +66,9 @@ Now build the application External PostgreSQL database: mvn clean package tomee:build -Pprod -Ppgsql + External Microsoft SQL Server database: + mvn clean package tomee:build -Pprod -Pmssql + It will generate a zip file at `target/commafeed.zip` with everything you need to run the application. * Create a directory somewhere (e.g. `/opt/commafeed/`) and extract the generated zip inside this directory. diff --git a/pom.xml b/pom.xml index 0fda3085..1d0eb186 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,6 @@ false false java:openejb/Resource/My DataSource - org.hibernate.dialect.HSQLDialect false com.commafeed.backend.cache.NoopCacheService @@ -120,6 +119,7 @@ org.hsqldb:hsqldb:SNAPSHOT mysql:mysql-connector-java:5.1.24 postgresql:postgresql:9.1-901.jdbc4 + net.sourceforge.jtds:jtds:1.3.0 org.infinispan:infinispan-core:5.1.4.FINAL org.hibernate:hibernate-infinispan:4.1.11.Final @@ -434,7 +434,6 @@ openshift java:jboss/datasources/MysqlDS - com.commafeed.backend.MySQL5Dialect commafeed @@ -474,14 +473,18 @@ mysql java:openejb/Resource/MySQL - com.commafeed.backend.MySQL5Dialect pgsql java:openejb/Resource/PostgreSQL - org.hibernate.dialect.PostgreSQLDialect + + + + mssql + + java:openejb/Resource/MSSQL diff --git a/src/main/java/com/commafeed/backend/MySQL5Dialect.java b/src/main/java/com/commafeed/backend/MySQL5Dialect.java deleted file mode 100644 index 70edf93e..00000000 --- a/src/main/java/com/commafeed/backend/MySQL5Dialect.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.commafeed.backend; - -import org.hibernate.dialect.MySQL5InnoDBDialect; - -public class MySQL5Dialect extends MySQL5InnoDBDialect { - - public String getTableTypeString() { - return " ENGINE=InnoDB DEFAULT CHARSET=utf8"; - } -} \ No newline at end of file diff --git a/src/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml index cc29416a..ba113c73 100644 --- a/src/main/resources/META-INF/persistence.xml +++ b/src/main/resources/META-INF/persistence.xml @@ -14,7 +14,6 @@ - diff --git a/src/main/resources/changelogs/db.changelog-1.1.xml b/src/main/resources/changelogs/db.changelog-1.1.xml index 9ae26e21..02ab473d 100644 --- a/src/main/resources/changelogs/db.changelog-1.1.xml +++ b/src/main/resources/changelogs/db.changelog-1.1.xml @@ -32,6 +32,8 @@ + 7:094e881ed7e4fa14fb1f61147ce44acc + 7:f4bf2004a72bb41daa128df5771af902 @@ -41,16 +43,16 @@ - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'APPLICATIONSETTINGS', COALESCE(ceil(max(id) / 1000 + 2), 1) from APPLICATIONSETTINGS - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDCATEGORIES', COALESCE(ceil(max(id) / 1000 + 2), 1) from FEEDCATEGORIES - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRIES', COALESCE(ceil(max(id) / 1000 + 2), 1) from FEEDENTRIES - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRYCONTENTS', COALESCE(ceil(max(id) / 1000 + 2), 1) from FEEDENTRYCONTENTS - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRYSTATUSES', COALESCE(ceil(max(id) / 1000 + 2), 1) from FEEDENTRYSTATUSES - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDS', COALESCE(ceil(max(id) / 1000 + 2), 1) from FEEDS - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDSUBSCRIPTIONS', COALESCE(ceil(max(id) / 1000 + 2), 1) from FEEDSUBSCRIPTIONS - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERROLES', COALESCE(ceil(max(id) / 1000 + 2), 1) from USERROLES - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERS', COALESCE(ceil(max(id) / 1000 + 2), 1) from USERS - insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERSETTINGS', COALESCE(ceil(max(id) / 1000 + 2), 1) from USERSETTINGS + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'APPLICATIONSETTINGS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from APPLICATIONSETTINGS + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDCATEGORIES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDCATEGORIES + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRIES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDENTRIES + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRYCONTENTS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDENTRYCONTENTS + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRYSTATUSES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDENTRYSTATUSES + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDS + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDSUBSCRIPTIONS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDSUBSCRIPTIONS + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERROLES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from USERROLES + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from USERS + insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERSETTINGS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from USERSETTINGS diff --git a/src/main/tomee/conf/tomee.xml b/src/main/tomee/conf/tomee.xml index bf417791..29411b7e 100644 --- a/src/main/tomee/conf/tomee.xml +++ b/src/main/tomee/conf/tomee.xml @@ -29,6 +29,15 @@ --> +