Author: mfranklin
Date: Thu Oct 18 01:32:02 2012
New Revision: 1399504
URL: http://svn.apache.org/viewvc?rev=1399504&view=rev
Log:
Added initial data from js
Added:
rave/branches/mongo/UPGRADING
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/DataImporter.java
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/ModelWrapper.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageLayoutImplConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageTemplateImplConverter.java
- copied, changed from r1399029,
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongDbPageTemplateConverter.java
rave/branches/mongo/rave-portal-resources/src/main/resources/initial-data.js
Removed:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongDbPageTemplateConverter.java
Modified:
rave/branches/mongo/pom.xml
rave/branches/mongo/rave-components/rave-core/pom.xml
rave/branches/mongo/rave-components/rave-core/src/main/resources/org/apache/rave/core-applicationContext.xml
rave/branches/mongo/rave-components/rave-core/src/test/resources/portal.properties
rave/branches/mongo/rave-components/rave-jpa/src/main/resources/org/apache/rave/persistence-applicationContext.xml
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/portal.properties
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/test-applicationContext.xml
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbCategoryRepository.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageLayoutRepository.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/persistence-applicationContext.xml
rave/branches/mongo/rave-components/rave-mongodb/src/test/resources/portal.properties
rave/branches/mongo/rave-portal-resources/src/main/resources/portal.properties
rave/branches/mongo/rave-portal-resources/src/main/webapp/WEB-INF/applicationContext.xml
rave/branches/mongo/rave-portal-resources/src/main/webapp/WEB-INF/dataContext.xml
rave/branches/mongo/rave-portal/src/test/resources/portal.properties
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/resources/rave.shindig.properties
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave-shindig-applicationContext.xml
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties
Added: rave/branches/mongo/UPGRADING
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/UPGRADING?rev=1399504&view=auto
==============================================================================
--- rave/branches/mongo/UPGRADING (added)
+++ rave/branches/mongo/UPGRADING Thu Oct 18 01:32:02 2012
@@ -0,0 +1,4 @@
+Upgrading from 0.17 to 0.18
+=======================================
+ - rave.shindig.properties & portal.properties keys have been changed for JPA
operations. The prefix is now jpa.xxx.xxxx
+ - the MongoDB implementation has properties added to rave.shindig.properties
and portal.properties
\ No newline at end of file
Modified: rave/branches/mongo/pom.xml
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/pom.xml?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
--- rave/branches/mongo/pom.xml (original)
+++ rave/branches/mongo/pom.xml Thu Oct 18 01:32:02 2012
@@ -320,6 +320,11 @@
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-mapper-asl</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mrbean</artifactId>
<version>${jackson.version}</version>
</dependency>
Modified: rave/branches/mongo/rave-components/rave-core/pom.xml
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/pom.xml?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-core/pom.xml (original)
+++ rave/branches/mongo/rave-components/rave-core/pom.xml Thu Oct 18 01:32:02
2012
@@ -91,7 +91,11 @@
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
- <version>1.8.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-mrbean</artifactId>
+ <scope>provided</scope>
</dependency>
<!-- JSON Support -->
Added:
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/DataImporter.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/DataImporter.java?rev=1399504&view=auto
==============================================================================
---
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/DataImporter.java
(added)
+++
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/DataImporter.java
Thu Oct 18 01:32:02 2012
@@ -0,0 +1,146 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.rave.portal.util.data;
+
+import org.apache.rave.portal.model.*;
+import org.apache.rave.portal.repository.*;
+import org.codehaus.jackson.map.AnnotationIntrospector;
+import org.codehaus.jackson.map.DeserializationConfig;
+import org.codehaus.jackson.map.ObjectMapper;
+import org.codehaus.jackson.map.introspect.JacksonAnnotationIntrospector;
+import org.codehaus.jackson.mrbean.MrBeanModule;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.io.Resource;
+
+import javax.annotation.PostConstruct;
+import java.io.IOException;
+import java.util.List;
+
+public class DataImporter {
+
+ //TODO GROUP REPOSITORY
+
+ @Autowired
+ private PageLayoutRepository pageLayoutRepository;
+
+ @Autowired
+ private UserRepository userRepository;
+
+ @Autowired
+ private WidgetRepository widgetRepository;
+
+ @Autowired
+ private PageRepository pageRepository;
+
+ @Autowired
+ private AuthorityRepository authorityRepository;
+
+ @Autowired
+ private PortalPreferenceRepository portalPreferenceRepository;
+
+ @Autowired
+ private CategoryRepository categoryRepository;
+
+ @Autowired
+ private PageTemplateRepository pageTemplateRepository;
+
+ private List<Resource> scriptLocations;
+
+ public List<Resource> getScriptLocations() {
+ return scriptLocations;
+ }
+
+ public void setScriptLocations(List<Resource> scriptLocations) {
+ this.scriptLocations = scriptLocations;
+ }
+
+ @PostConstruct
+ public void importData() {
+ if (scriptLocations != null) {
+ for (Resource resource : scriptLocations) {
+ ModelWrapper wrapper = mapObject(resource);
+ if (wrapper.getPageLayouts() != null) {
+ for (PageLayout layout : wrapper.getPageLayouts()) {
+ pageLayoutRepository.save(layout);
+ }
+ }
+ if (wrapper.getUsers() != null) {
+ for (User user : wrapper.getUsers()) {
+ userRepository.save(user);
+ }
+ }
+ if (wrapper.getPageLayouts() != null) {
+ for (PageLayout layout : wrapper.getPageLayouts()) {
+ pageLayoutRepository.save(layout);
+ }
+ }
+ if (wrapper.getWidgets() != null) {
+ for (Widget widget : wrapper.getWidgets()) {
+ widgetRepository.save(widget);
+ }
+ }
+ if (wrapper.getPages() != null) {
+ for (Page page : wrapper.getPages()) {
+ pageRepository.save(page);
+ }
+ }
+ if (wrapper.getAuthorities() != null) {
+ for (Authority authority : wrapper.getAuthorities()) {
+ authorityRepository.save(authority);
+ }
+ }
+ if (wrapper.getPortalPreferences() != null) {
+ for (PortalPreference preference :
wrapper.getPortalPreferences()) {
+ portalPreferenceRepository.save(preference);
+ }
+ }
+ if (wrapper.getCategories() != null) {
+ for (Category category : wrapper.getCategories()) {
+ categoryRepository.save(category);
+ }
+ }
+/* TODO Update PageTemplateRepository
+ for(PortalPreference preference :
wrapper.getPortalPreferences()) {
+ pageTemplateRepository.save(preference);
+ }*/
+ }
+ }
+
+ }
+
+ private ModelWrapper mapObject(Resource resource) {
+ try {
+ return getMapper().readValue(resource.getFile(),
ModelWrapper.class);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ private ObjectMapper getMapper() {
+ ObjectMapper jacksonMapper = new ObjectMapper();
+ AnnotationIntrospector primary = new JacksonAnnotationIntrospector();
+ jacksonMapper.setAnnotationIntrospector(primary);
+
jacksonMapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES,
false);
+ jacksonMapper.registerModule(new MrBeanModule());
+ return jacksonMapper;
+ }
+
+
+}
Added:
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/ModelWrapper.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/ModelWrapper.java?rev=1399504&view=auto
==============================================================================
---
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/ModelWrapper.java
(added)
+++
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/util/data/ModelWrapper.java
Thu Oct 18 01:32:02 2012
@@ -0,0 +1,108 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.rave.portal.util.data;
+
+import org.apache.rave.portal.model.*;
+
+import java.util.List;
+
+public class ModelWrapper {
+ private List<PageLayout> pageLayouts;
+ private List<User> users;
+ private List<Group> groups;
+ private List<Widget> widgets;
+ private List<Page> pages;
+ private List<Authority> authorities;
+ private List<PortalPreference> portalPreferences;
+ private List<Category> categories;
+ private List<PageTemplate> pageTemplates;
+
+ public List<PageLayout> getPageLayouts() {
+ return pageLayouts;
+ }
+
+ public void setPageLayouts(List<PageLayout> pageLayouts) {
+ this.pageLayouts = pageLayouts;
+ }
+
+ public List<User> getUsers() {
+ return users;
+ }
+
+ public void setUsers(List<User> users) {
+ this.users = users;
+ }
+
+ public List<Group> getGroups() {
+ return groups;
+ }
+
+ public void setGroups(List<Group> groups) {
+ this.groups = groups;
+ }
+
+ public List<Widget> getWidgets() {
+ return widgets;
+ }
+
+ public void setWidgets(List<Widget> widgets) {
+ this.widgets = widgets;
+ }
+
+ public List<Page> getPages() {
+ return pages;
+ }
+
+ public void setPages(List<Page> pages) {
+ this.pages = pages;
+ }
+
+ public List<Authority> getAuthorities() {
+ return authorities;
+ }
+
+ public void setAuthorities(List<Authority> authorities) {
+ this.authorities = authorities;
+ }
+
+ public List<PortalPreference> getPortalPreferences() {
+ return portalPreferences;
+ }
+
+ public void setPortalPreferences(List<PortalPreference> portalPreferences)
{
+ this.portalPreferences = portalPreferences;
+ }
+
+ public List<Category> getCategories() {
+ return categories;
+ }
+
+ public void setCategories(List<Category> categories) {
+ this.categories = categories;
+ }
+
+ public List<PageTemplate> getPageTemplates() {
+ return pageTemplates;
+ }
+
+ public void setPageTemplates(List<PageTemplate> pageTemplates) {
+ this.pageTemplates = pageTemplates;
+ }
+}
\ No newline at end of file
Modified:
rave/branches/mongo/rave-components/rave-core/src/main/resources/org/apache/rave/core-applicationContext.xml
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/src/main/resources/org/apache/rave/core-applicationContext.xml?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-core/src/main/resources/org/apache/rave/core-applicationContext.xml
(original)
+++
rave/branches/mongo/rave-components/rave-core/src/main/resources/org/apache/rave/core-applicationContext.xml
Thu Oct 18 01:32:02 2012
@@ -50,13 +50,6 @@
<context:component-scan base-package="org.apache.rave.portal.service"/>
<context:component-scan base-package="org.apache.rave.portal.security"/>
- <bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
- <property name="url" value="${portal.dataSource.url}"/>
- <property name="driverClassName" value="${portal.dataSource.driver}"/>
- <property name="username" value="${portal.dataSource.username}"/>
- <property name="password" value="${portal.dataSource.password}"/>
- </bean>
-
<!-- Password encoding -->
<bean
class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"
id="passwordEncoder">
<!--<constructor-arg index="0" value="10"/>-->
Modified:
rave/branches/mongo/rave-components/rave-core/src/test/resources/portal.properties
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/src/test/resources/portal.properties?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-core/src/test/resources/portal.properties
(original)
+++
rave/branches/mongo/rave-components/rave-core/src/test/resources/portal.properties
Thu Oct 18 01:32:02 2012
@@ -21,21 +21,21 @@
portal.page.default_name=Main
#Default Rave Portal database settings with in memory H2 database
-portal.dataSource.url=jdbc:h2:mem:portal;DB_CLOSE_DELAY=-1
-portal.dataSource.driver=org.h2.Driver
-portal.dataSource.username=sa
-portal.dataSource.password=local
-
-portal.jpaDialect=org.apache.rave.persistence.jpa.impl.H2OpenJpaDialect
-portal.jpaVendorAdapter.databasePlatform=org.apache.openjpa.jdbc.sql.H2Dictionary
-portal.jpaVendorAdapter.database=H2
+jpa.dataSource.url=jdbc:h2:mem:portal;DB_CLOSE_DELAY=-1
+jpa.dataSource.driver=org.h2.Driver
+jpa.dataSource.username=sa
+jpa.dataSource.password=local
+
+jpa.jpaDialect=org.apache.rave.persistence.jpa.impl.H2OpenJpaDialect
+jpa.jpaVendorAdapter.databasePlatform=org.apache.openjpa.jdbc.sql.H2Dictionary
+jpa.jpaVendorAdapter.database=H2
# General Rave portal database settings
-portal.jpaVendorAdapter.showSql=true
-portal.openjpa.Log=DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=WARN
-portal.openjpa.RuntimeUnenhancedClasses=supported
-portal.openjpa.jdbc.SynchronizeMappings=buildSchema(ForeignKeys=true)
-portal.openjpa.jdbc.MappingDefaults=ForeignKeyDeleteAction=restrict,
JoinForeignKeyDeleteAction=restrict
+jpa.jpaVendorAdapter.showSql=true
+jpa.openjpa.Log=DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=WARN
+jpa.openjpa.RuntimeUnenhancedClasses=supported
+jpa.openjpa.jdbc.SynchronizeMappings=buildSchema(ForeignKeys=true)
+jpa.openjpa.jdbc.MappingDefaults=ForeignKeyDeleteAction=restrict,
JoinForeignKeyDeleteAction=restrict
provider.wookie.wookieServerUrl=http://localhost:8080/wookie
provider.wookie.wookieApiKey=TEST
Modified:
rave/branches/mongo/rave-components/rave-jpa/src/main/resources/org/apache/rave/persistence-applicationContext.xml
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-jpa/src/main/resources/org/apache/rave/persistence-applicationContext.xml?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-jpa/src/main/resources/org/apache/rave/persistence-applicationContext.xml
(original)
+++
rave/branches/mongo/rave-components/rave-jpa/src/main/resources/org/apache/rave/persistence-applicationContext.xml
Thu Oct 18 01:32:02 2012
@@ -29,27 +29,6 @@
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
- <!-- make the the portal.properties props available to autowire injectors,
location of the properties can
- be overridden by setting a system property "portal.override.properties"
-->
- <bean id="portalPropertyPlaceholder"
class="org.apache.rave.util.OverridablePropertyPlaceholderConfigurer">
- <property name="systemPropertiesModeName"
value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
- <property name="systemPropertyName"
value="portal.override.properties"/>
- <property name="location" value="classpath:portal.properties"/>
- </bean>
-
- <!-- bean post-processor for JPA annotations -->
- <context:annotation-config/>
-
- <!-- enable the use of the @AspectJ style of Spring AOP -->
- <aop:aspectj-autoproxy/>
-
- <!-- rave-common component base-package scan (maybe move to a separate
common-applicationContext.xml?) -->
- <context:component-scan base-package="org.apache.rave.service"/>
- <context:component-scan base-package="org.apache.rave.synchronization"/>
-
- <!-- rave-core component base-package scan -->
- <context:component-scan base-package="org.apache.rave.portal.model"/>
- <context:component-scan base-package="org.apache.rave.portal.repository"/>
<bean id="transactionManager"
class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
@@ -67,121 +46,27 @@
<property name="dataSource" ref="dataSource"/>
<property name="jpaVendorAdapter">
<bean
class="org.springframework.orm.jpa.vendor.OpenJpaVendorAdapter"
-
p:databasePlatform="${portal.jpaVendorAdapter.databasePlatform}"
- p:database="${portal.jpaVendorAdapter.database}"
- p:showSql="${portal.jpaVendorAdapter.showSql}"/>
+ p:databasePlatform="${jpa.jpaVendorAdapter.databasePlatform}"
+ p:database="${jpa.jpaVendorAdapter.database}"
+ p:showSql="${jpa.jpaVendorAdapter.showSql}"/>
</property>
<property name="jpaDialect">
- <bean class="${portal.jpaDialect}"/>
+ <bean class="${jpa.jpaDialect}"/>
</property>
<property name="jpaPropertyMap">
<map>
- <entry key="openjpa.Log" value="${portal.openjpa.Log}"/>
- <entry key="openjpa.RuntimeUnenhancedClasses"
value="${portal.openjpa.RuntimeUnenhancedClasses}"/>
- <entry key="openjpa.jdbc.SynchronizeMappings"
value="${portal.openjpa.jdbc.SynchronizeMappings}"/>
- <entry key="openjpa.jdbc.MappingDefaults"
value="${portal.openjpa.jdbc.MappingDefaults}"/>
+ <entry key="openjpa.Log" value="${jpa.openjpa.Log}"/>
+ <entry key="openjpa.RuntimeUnenhancedClasses"
value="${jpa.openjpa.RuntimeUnenhancedClasses}"/>
+ <entry key="openjpa.jdbc.SynchronizeMappings"
value="${jpa.openjpa.jdbc.SynchronizeMappings}"/>
+ <entry key="openjpa.jdbc.MappingDefaults"
value="${jpa.openjpa.jdbc.MappingDefaults}"/>
</map>
</property>
</bean>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
- <property name="url" value="${portal.dataSource.url}"/>
- <property name="driverClassName" value="${portal.dataSource.driver}"/>
- <property name="username" value="${portal.dataSource.username}"/>
- <property name="password" value="${portal.dataSource.password}"/>
- </bean>
-
- <!-- Password encoding -->
- <bean
class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"
id="passwordEncoder">
- <!--<constructor-arg index="0" value="10"/>-->
- </bean>
-
- <!-- email settings -->
- <bean id="emailServiceMailMessage"
class="org.springframework.mail.SimpleMailMessage">
- <property name="from" value="${portal.mail.sender}"/>
- <property name="replyTo" value="${portal.mail.replyto}"/>
- </bean>
-
- <bean id="freemarkerMailConfiguration"
class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
- <property name="templateLoaderPath" value="/WEB-INF/mailtemplates"/>
- </bean>
- <bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
- <property name="host" value="${portal.mail.host}"/>
- <property name="password" value="${portal.mail.password}"/>
- <property name="username" value="${portal.mail.username}"/>
- <property name="port" value="${portal.mail.port}"/>
- <property name="protocol" value="${portal.mail.protocol}"/>
- <!-- NOTE: if using Gmail, you'll need following properties-->
- <!--<property name="javaMailProperties">
- <props>
- <prop key="mail.smtp.auth">true</prop>
- <prop key="mail.smtp.starttls.enable">true</prop>
- <prop key="mail.smtp.timeout">8500</prop>
- </props>
- </property>-->
- </bean>
- <!--
- NOTE: to use mail session you'll need to configure following within
catalina_home/conf/context.xml
- <Resource name="mail/Session" auth="Container" type="javax.mail.Session"
mail.smtp.host="my.mail.host"/>
-
- Further, activation & mail jars needs to be placed within
catalina_home/lib folder
- -->
- <!--
- <bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
- <property name="session" ref="mailSession"/>
- </bean>
- <bean id="mailSession"
class="org.springframework.jndi.JndiObjectFactoryBean">
- <property name="jndiName" value="java:comp/env/mail/Session"/>
- </bean>
- -->
-
- <bean id="restTemplate"
class="org.springframework.web.client.RestTemplate" />
-
- <bean id="staticContentCache"
class="org.apache.rave.service.impl.DefaultStaticContentFetcherService">
- <constructor-arg ref="restTemplate"/>
- <constructor-arg>
- <list>
- <!-- example of a Static Content source that doesn't have any
string token placeholders in its content body
- <bean class="org.apache.rave.model.StaticContent">
- <constructor-arg index="0" value="standardCompanyHeader"/>
- <constructor-arg index="1"
value="${company.header.host}/content/standard_header.html"/>
- <constructor-arg index="2">
- <null/>
- </constructor-arg>
- </bean>
- -->
- <!-- example of a Static Content source that has string token
placeholders
- <bean class="org.apache.rave.model.StaticContent">
- <constructor-arg index="0"
value="environmentSpecificContent"/>
- <constructor-arg index="1"
value="${company.header.host}/content/footer.html"/>
- <constructor-arg index="2">
- <map>
- <entry key="\{supportEmail\}"
value="${raveproperty.supportemail}"/>
- <entry key="\{productVersion\}"
value="${raveproperty.version}"/>
- </map>
- </constructor-arg>
- </bean>
- -->
- </list>
- </constructor-arg>
- </bean>
-
- <!-- example on how to setup a Spring Timer to refresh the Static Content
cache at a fixed interval
- <bean id="refreshStaticContentCacheScheduledTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
- <property name="delay" value="5000"/>
- <property name="period" value="300000"/>
- <property name="timerTask">
- <bean
class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean"
- p:targetObject-ref="staticContentCache"
p:targetMethod="refreshAll"/>
- </property>
- </bean>
- <bean id="timerFactory"
class="org.springframework.scheduling.timer.TimerFactoryBean">
- <property name="daemon" value="true"/>
- <property name="scheduledTimerTasks">
- <list>
- <ref local="refreshStaticContentCacheScheduledTask"/>
- </list>
- </property>
+ <property name="url" value="${jpa.dataSource.url}"/>
+ <property name="driverClassName" value="${jpa.dataSource.driver}"/>
+ <property name="username" value="${jpa.dataSource.username}"/>
+ <property name="password" value="${jpa.dataSource.password}"/>
</bean>
- -->
</beans>
\ No newline at end of file
Modified:
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/portal.properties
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-jpa/src/test/resources/portal.properties?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/portal.properties
(original)
+++
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/portal.properties
Thu Oct 18 01:32:02 2012
@@ -20,22 +20,23 @@
# the default page name to create for new users
portal.page.default_name=Main
+
#Default Rave Portal database settings with in memory H2 database
-portal.dataSource.url=jdbc:h2:mem:portal;DB_CLOSE_DELAY=-1
-portal.dataSource.driver=org.h2.Driver
-portal.dataSource.username=sa
-portal.dataSource.password=local
-
-portal.jpaDialect=org.apache.rave.persistence.jpa.impl.H2OpenJpaDialect
-portal.jpaVendorAdapter.databasePlatform=org.apache.openjpa.jdbc.sql.H2Dictionary
-portal.jpaVendorAdapter.database=H2
-
-# General Rave portal database settings
-portal.jpaVendorAdapter.showSql=true
-portal.openjpa.Log=DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=WARN
-portal.openjpa.RuntimeUnenhancedClasses=supported
-portal.openjpa.jdbc.SynchronizeMappings=buildSchema(ForeignKeys=true)
-portal.openjpa.jdbc.MappingDefaults=ForeignKeyDeleteAction=restrict,
JoinForeignKeyDeleteAction=restrict
+jpa.dataSource.url=jdbc:h2:mem:portal;DB_CLOSE_DELAY=-1
+jpa.dataSource.driver=org.h2.Driver
+jpa.dataSource.username=sa
+jpa.dataSource.password=local
+
+jpa.jpaDialect=org.apache.rave.persistence.jpa.impl.H2OpenJpaDialect
+jpa.jpaVendorAdapter.databasePlatform=org.apache.openjpa.jdbc.sql.H2Dictionary
+jpa.jpaVendorAdapter.database=H2
+
+# General Rave jpa database settings
+jpa.jpaVendorAdapter.showSql=true
+jpa.openjpa.Log=DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=WARN
+jpa.openjpa.RuntimeUnenhancedClasses=unsupported
+jpa.openjpa.jdbc.SynchronizeMappings=buildSchema(ForeignKeys=true)
+jpa.openjpa.jdbc.MappingDefaults=ForeignKeyDeleteAction=restrict,
JoinForeignKeyDeleteAction=restrict
provider.wookie.wookieServerUrl=http://localhost:8080/wookie
provider.wookie.wookieApiKey=TEST
Modified:
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/test-applicationContext.xml
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-jpa/src/test/resources/test-applicationContext.xml?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/test-applicationContext.xml
(original)
+++
rave/branches/mongo/rave-components/rave-jpa/src/test/resources/test-applicationContext.xml
Thu Oct 18 01:32:02 2012
@@ -19,8 +19,128 @@
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
-
http://www.springframework.org/schema/beans/spring-beans.xsd">
+ xmlns:context="http://www.springframework.org/schema/context"
+ xmlns:aop="http://www.springframework.org/schema/aop"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
+ http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
+
+
+ <!-- make the the portal.properties props available to autowire injectors,
location of the properties can
+be overridden by setting a system property "portal.override.properties" -->
+ <bean id="portalPropertyPlaceholder"
class="org.apache.rave.util.OverridablePropertyPlaceholderConfigurer">
+ <property name="systemPropertiesModeName"
value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
+ <property name="systemPropertyName"
value="portal.override.properties"/>
+ <property name="location" value="classpath:portal.properties"/>
+ </bean>
+
+ <!-- bean post-processor for JPA annotations -->
+ <context:annotation-config/>
+
+ <!-- enable the use of the @AspectJ style of Spring AOP -->
+ <aop:aspectj-autoproxy/>
+
+ <!-- rave-common component base-package scan (maybe move to a separate
common-applicationContext.xml?) -->
+ <context:component-scan base-package="org.apache.rave.service"/>
+ <context:component-scan base-package="org.apache.rave.synchronization"/>
+
+ <!-- rave-core component base-package scan -->
+ <context:component-scan base-package="org.apache.rave.portal.model"/>
+ <context:component-scan base-package="org.apache.rave.portal.repository"/>
+
+ <!-- Password encoding -->
+ <bean
class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"
id="passwordEncoder">
+ <!--<constructor-arg index="0" value="10"/>-->
+ </bean>
+
+ <!-- email settings -->
+ <bean id="emailServiceMailMessage"
class="org.springframework.mail.SimpleMailMessage">
+ <property name="from" value="${portal.mail.sender}"/>
+ <property name="replyTo" value="${portal.mail.replyto}"/>
+ </bean>
+
+ <bean id="freemarkerMailConfiguration"
class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
+ <property name="templateLoaderPath" value="/WEB-INF/mailtemplates"/>
+ </bean>
+ <bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
+ <property name="host" value="${portal.mail.host}"/>
+ <property name="password" value="${portal.mail.password}"/>
+ <property name="username" value="${portal.mail.username}"/>
+ <property name="port" value="${portal.mail.port}"/>
+ <property name="protocol" value="${portal.mail.protocol}"/>
+ <!-- NOTE: if using Gmail, you'll need following properties-->
+ <!--<property name="javaMailProperties">
+ <props>
+ <prop key="mail.smtp.auth">true</prop>
+ <prop key="mail.smtp.starttls.enable">true</prop>
+ <prop key="mail.smtp.timeout">8500</prop>
+ </props>
+ </property>-->
+ </bean>
+ <!--
+ NOTE: to use mail session you'll need to configure following within
catalina_home/conf/context.xml
+ <Resource name="mail/Session" auth="Container" type="javax.mail.Session"
mail.smtp.host="my.mail.host"/>
+
+ Further, activation & mail jars needs to be placed within
catalina_home/lib folder
+ -->
+ <!--
+ <bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
+ <property name="session" ref="mailSession"/>
+ </bean>
+ <bean id="mailSession"
class="org.springframework.jndi.JndiObjectFactoryBean">
+ <property name="jndiName" value="java:comp/env/mail/Session"/>
+ </bean>
+ -->
+
+ <bean id="restTemplate"
class="org.springframework.web.client.RestTemplate" />
+
+ <bean id="staticContentCache"
class="org.apache.rave.service.impl.DefaultStaticContentFetcherService">
+ <constructor-arg ref="restTemplate"/>
+ <constructor-arg>
+ <list>
+ <!-- example of a Static Content source that doesn't have any
string token placeholders in its content body
+ <bean class="org.apache.rave.model.StaticContent">
+ <constructor-arg index="0" value="standardCompanyHeader"/>
+ <constructor-arg index="1"
value="${company.header.host}/content/standard_header.html"/>
+ <constructor-arg index="2">
+ <null/>
+ </constructor-arg>
+ </bean>
+ -->
+ <!-- example of a Static Content source that has string token
placeholders
+ <bean class="org.apache.rave.model.StaticContent">
+ <constructor-arg index="0"
value="environmentSpecificContent"/>
+ <constructor-arg index="1"
value="${company.header.host}/content/footer.html"/>
+ <constructor-arg index="2">
+ <map>
+ <entry key="\{supportEmail\}"
value="${raveproperty.supportemail}"/>
+ <entry key="\{productVersion\}"
value="${raveproperty.version}"/>
+ </map>
+ </constructor-arg>
+ </bean>
+ -->
+ </list>
+ </constructor-arg>
+ </bean>
+
+ <!-- example on how to setup a Spring Timer to refresh the Static Content
cache at a fixed interval
+ <bean id="refreshStaticContentCacheScheduledTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
+ <property name="delay" value="5000"/>
+ <property name="period" value="300000"/>
+ <property name="timerTask">
+ <bean
class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean"
+ p:targetObject-ref="staticContentCache"
p:targetMethod="refreshAll"/>
+ </property>
+ </bean>
+ <bean id="timerFactory"
class="org.springframework.scheduling.timer.TimerFactoryBean">
+ <property name="daemon" value="true"/>
+ <property name="scheduledTimerTasks">
+ <list>
+ <ref local="refreshStaticContentCacheScheduledTask"/>
+ </list>
+ </property>
+ </bean>
+ -->
<import
resource="classpath:org/apache/rave/persistence-applicationContext.xml"/>
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbCategoryConverter.java
Thu Oct 18 01:32:02 2012
@@ -55,7 +55,7 @@ public class MongoDbCategoryConverter im
@Override
public MongoDbCategory convert(Category source) {
- MongoDbCategory category = source instanceof MongoDbCategory ?
((MongoDbCategory)source) : new MongoDbCategory();
+ MongoDbCategory category = source instanceof MongoDbCategory ?
((MongoDbCategory) source) : new MongoDbCategory();
category.setCreatedUserId(source.getCreatedUser().getId());
category.setCreatedUser(null);
category.setLastModifiedUserId(source.getLastModifiedUser().getId());
@@ -65,8 +65,10 @@ public class MongoDbCategoryConverter im
category.setText(source.getText());
ArrayList<Long> widgetIds = Lists.<Long>newArrayList();
category.setWidgetIds(widgetIds);
- for(Widget widget : source.getWidgets()) {
- widgetIds.add(widget.getId());
+ if (source.getWidgets() != null) {
+ for (Widget widget : source.getWidgets()) {
+ widgetIds.add(widget.getId());
+ }
}
category.setWidgets(null);
return category;
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbUserConverter.java
Thu Oct 18 01:32:02 2012
@@ -54,6 +54,7 @@ public class MongoDbUserConverter implem
for(GrantedAuthority authority : source.getAuthorities()) {
authorityCodes.add(authority.getAuthority());
}
+ user.setAuthorityCodes(authorityCodes);
updateProperties(source, user);
return user;
}
@@ -76,12 +77,25 @@ public class MongoDbUserConverter implem
converted.setProperties(source.getProperties());
converted.setPassword(source.getPassword());
converted.setConfirmPassword(source.getConfirmPassword());
- converted.setDefaultPageLayoutCode(source.getDefaultPageLayoutCode());
+ converted.setDefaultPageLayoutCode(getPageLayoutCode(source));
converted.setEnabled(source.isEnabled());
converted.setExpired(source.isExpired());
converted.setLocked(source.isLocked());
converted.setOpenId(source.getOpenId());
converted.setForgotPasswordHash(source.getForgotPasswordHash());
converted.setForgotPasswordTime(source.getForgotPasswordTime());
+
+ }
+
+ private String getPageLayoutCode(User source) {
+ String code = null;
+ if (source.getDefaultPageLayout() == null) {
+ if(source.getDefaultPageLayoutCode() != null) {
+ code = source.getDefaultPageLayoutCode();
+ }
+ } else {
+ code = source.getDefaultPageLayout().getCode();
+ }
+ return code;
}
}
Added:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageLayoutImplConverter.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageLayoutImplConverter.java?rev=1399504&view=auto
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageLayoutImplConverter.java
(added)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageLayoutImplConverter.java
Thu Oct 18 01:32:02 2012
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.rave.portal.model.conversion.impl;
+
+import org.apache.rave.portal.model.PageLayout;
+import org.apache.rave.portal.model.conversion.HydratingModelConverter;
+import org.apache.rave.portal.model.impl.PageLayoutImpl;
+import org.springframework.stereotype.Component;
+
+@Component
+public class PageLayoutImplConverter implements
HydratingModelConverter<PageLayout, PageLayoutImpl> {
+ @Override
+ public void hydrate(PageLayoutImpl dehydrated) {
+ //NOOP
+ }
+
+ @Override
+ public Class<PageLayout> getSourceType() {
+ return PageLayout.class;
+ }
+
+ @Override
+ public PageLayoutImpl convert(PageLayout source) {
+ PageLayoutImpl converted = source instanceof PageLayoutImpl ?
((PageLayoutImpl)source) : new PageLayoutImpl();
+ converted.setCode(source.getCode());
+ converted.setNumberOfRegions(source.getNumberOfRegions());
+ converted.setRenderSequence(source.getRenderSequence());
+ converted.setUserSelectable(source.isUserSelectable());
+ return converted;
+ }
+}
Copied:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageTemplateImplConverter.java
(from r1399029,
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongDbPageTemplateConverter.java)
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageTemplateImplConverter.java?p2=rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageTemplateImplConverter.java&p1=rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongDbPageTemplateConverter.java&r1=1399029&r2=1399504&rev=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongDbPageTemplateConverter.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/PageTemplateImplConverter.java
Thu Oct 18 01:32:02 2012
@@ -31,7 +31,7 @@ import org.springframework.beans.factory
import org.springframework.stereotype.Component;
@Component
-public class MongDbPageTemplateConverter implements
HydratingModelConverter<PageTemplate, PageTemplateImpl> {
+public class PageTemplateImplConverter implements
HydratingModelConverter<PageTemplate, PageTemplateImpl> {
@Autowired
private WidgetRepository widgetRepository;
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbCategoryRepository.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbCategoryRepository.java?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbCategoryRepository.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbCategoryRepository.java
Thu Oct 18 01:32:02 2012
@@ -87,7 +87,7 @@ public class MongoDbCategoryRepository i
}
private Category hydrate(MongoDbCategory category) {
- converter.hydrate(category, CLASS);
+ converter.hydrate(category, Category.class);
return category;
}
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageLayoutRepository.java
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageLayoutRepository.java?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageLayoutRepository.java
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoDbPageLayoutRepository.java
Thu Oct 18 01:32:02 2012
@@ -21,6 +21,7 @@ package org.apache.rave.portal.repositor
import org.apache.commons.lang.NotImplementedException;
import org.apache.rave.portal.model.PageLayout;
+import org.apache.rave.portal.model.conversion.HydratingConverterFactory;
import org.apache.rave.portal.model.impl.PageLayoutImpl;
import org.apache.rave.portal.repository.PageLayoutRepository;
import org.apache.rave.util.CollectionUtils;
@@ -41,6 +42,9 @@ public class MongoDbPageLayoutRepository
@Autowired
private MongoOperations template;
+ @Autowired
+ private HydratingConverterFactory converter;
+
@Override
public PageLayout getByPageLayoutCode(String codename) {
return template.findOne(new Query(where("code").is(codename)),
PageLayoutImpl.class, COLLECTION);
@@ -69,7 +73,7 @@ public class MongoDbPageLayoutRepository
@Override
public PageLayout save(PageLayout item) {
- template.save(item, COLLECTION);
+ template.save(converter.convert(item, PageLayout.class), COLLECTION);
return item;
}
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/persistence-applicationContext.xml
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/persistence-applicationContext.xml?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/persistence-applicationContext.xml
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/persistence-applicationContext.xml
Thu Oct 18 01:32:02 2012
@@ -31,125 +31,11 @@
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/data/mongo
http://www.springframework.org/schema/data/mongo/spring-mongo.xsd">
- <!-- make the the portal.properties props available to autowire injectors,
location of the properties can
- be overridden by setting a system property "portal.override.properties"
-->
- <bean id="portalPropertyPlaceholder"
class="org.apache.rave.util.OverridablePropertyPlaceholderConfigurer">
- <property name="systemPropertiesModeName"
value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
- <property name="systemPropertyName"
value="portal.override.properties"/>
- <property name="location" value="classpath:portal.properties"/>
- </bean>
-
- <!-- bean post-processor for JPA annotations -->
- <context:annotation-config/>
-
- <!-- enable the use of the @AspectJ style of Spring AOP -->
- <aop:aspectj-autoproxy/>
- <mongo:mongo id="mongo" host="${portal.mongo.host}"
port="${portal.mongo.port}"/>
+ <mongo:mongo id="mongo" host="${mongo.host}" port="${mongo.port}"/>
<bean id="mongoTemplate"
class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongo"/>
<constructor-arg name="databaseName" value="rave"/>
</bean>
- <!-- rave-common component base-package scan (maybe move to a separate
common-applicationContext.xml?) -->
- <context:component-scan base-package="org.apache.rave.service"/>
- <context:component-scan base-package="org.apache.rave.synchronization"/>
-
- <!-- rave-core component base-package scan -->
- <context:component-scan base-package="org.apache.rave.portal.model"/>
- <context:component-scan base-package="org.apache.rave.portal.repository"/>
-
- <!-- Password encoding -->
- <bean
class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"
id="passwordEncoder">
- <!--<constructor-arg index="0" value="10"/>-->
- </bean>
-
- <!-- email settings -->
- <bean id="emailServiceMailMessage"
class="org.springframework.mail.SimpleMailMessage">
- <property name="from" value="${portal.mail.sender}"/>
- <property name="replyTo" value="${portal.mail.replyto}"/>
- </bean>
-
- <bean id="freemarkerMailConfiguration"
class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
- <property name="templateLoaderPath" value="/WEB-INF/mailtemplates"/>
- </bean>
- <bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
- <property name="host" value="${portal.mail.host}"/>
- <property name="password" value="${portal.mail.password}"/>
- <property name="username" value="${portal.mail.username}"/>
- <property name="port" value="${portal.mail.port}"/>
- <property name="protocol" value="${portal.mail.protocol}"/>
- <!-- NOTE: if using Gmail, you'll need following properties-->
- <!--<property name="javaMailProperties">
- <props>
- <prop key="mail.smtp.auth">true</prop>
- <prop key="mail.smtp.starttls.enable">true</prop>
- <prop key="mail.smtp.timeout">8500</prop>
- </props>
- </property>-->
- </bean>
- <!--
- NOTE: to use mail session you'll need to configure following within
catalina_home/conf/context.xml
- <Resource name="mail/Session" auth="Container" type="javax.mail.Session"
mail.smtp.host="my.mail.host"/>
-
- Further, activation & mail jars needs to be placed within
catalina_home/lib folder
- -->
- <!--
- <bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
- <property name="session" ref="mailSession"/>
- </bean>
- <bean id="mailSession"
class="org.springframework.jndi.JndiObjectFactoryBean">
- <property name="jndiName" value="java:comp/env/mail/Session"/>
- </bean>
- -->
-
- <bean id="restTemplate"
class="org.springframework.web.client.RestTemplate" />
-
- <bean id="staticContentCache"
class="org.apache.rave.service.impl.DefaultStaticContentFetcherService">
- <constructor-arg ref="restTemplate"/>
- <constructor-arg>
- <list>
- <!-- example of a Static Content source that doesn't have any
string token placeholders in its content body
- <bean class="org.apache.rave.model.StaticContent">
- <constructor-arg index="0" value="standardCompanyHeader"/>
- <constructor-arg index="1"
value="${company.header.host}/content/standard_header.html"/>
- <constructor-arg index="2">
- <null/>
- </constructor-arg>
- </bean>
- -->
- <!-- example of a Static Content source that has string token
placeholders
- <bean class="org.apache.rave.model.StaticContent">
- <constructor-arg index="0"
value="environmentSpecificContent"/>
- <constructor-arg index="1"
value="${company.header.host}/content/footer.html"/>
- <constructor-arg index="2">
- <map>
- <entry key="\{supportEmail\}"
value="${raveproperty.supportemail}"/>
- <entry key="\{productVersion\}"
value="${raveproperty.version}"/>
- </map>
- </constructor-arg>
- </bean>
- -->
- </list>
- </constructor-arg>
- </bean>
-
- <!-- example on how to setup a Spring Timer to refresh the Static Content
cache at a fixed interval
- <bean id="refreshStaticContentCacheScheduledTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
- <property name="delay" value="5000"/>
- <property name="period" value="300000"/>
- <property name="timerTask">
- <bean
class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean"
- p:targetObject-ref="staticContentCache"
p:targetMethod="refreshAll"/>
- </property>
- </bean>
- <bean id="timerFactory"
class="org.springframework.scheduling.timer.TimerFactoryBean">
- <property name="daemon" value="true"/>
- <property name="scheduledTimerTasks">
- <list>
- <ref local="refreshStaticContentCacheScheduledTask"/>
- </list>
- </property>
- </bean>
- -->
</beans>
\ No newline at end of file
Modified:
rave/branches/mongo/rave-components/rave-mongodb/src/test/resources/portal.properties
URL:
http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/test/resources/portal.properties?rev=1399504&r1=1399503&r2=1399504&view=diff
==============================================================================
---
rave/branches/mongo/rave-components/rave-mongodb/src/test/resources/portal.properties
(original)
+++
rave/branches/mongo/rave-components/rave-mongodb/src/test/resources/portal.properties
Thu Oct 18 01:32:02 2012
@@ -33,28 +33,11 @@ portal.opensocial_security.domain=defaul
# the default page name to create for new users
portal.page.default_name=Main
-#Default Rave Portal database settings with in memory H2 database
-portal.dataSource.url=jdbc:h2:mem:portal;DB_CLOSE_DELAY=-1
-portal.dataSource.driver=org.h2.Driver
-portal.dataSource.username=sa
-portal.dataSource.password=local
-
-portal.jpaDialect=org.apache.rave.persistence.jpa.impl.H2OpenJpaDialect
-portal.jpaVendorAdapter.databasePlatform=org.apache.openjpa.jdbc.sql.H2Dictionary
-portal.jpaVendorAdapter.database=H2
-
-# General Rave portal database settings
-portal.jpaVendorAdapter.showSql=true
-portal.openjpa.Log=DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=WARN
-portal.openjpa.RuntimeUnenhancedClasses=unsupported
-portal.openjpa.jdbc.SynchronizeMappings=buildSchema(ForeignKeys=true)
-portal.openjpa.jdbc.MappingDefaults=ForeignKeyDeleteAction=restrict,
JoinForeignKeyDeleteAction=restrict
-
###################################################################
# Properties related to the Rave MongoDB implementation #
###################################################################
-portal.mongo.host=localhost
-portal.mongo.port=27017
+mongo.host=localhost
+mongo.port=27017
provider.wookie.wookieServerUrl=http://localhost:8080/wookie
provider.wookie.wookieApiKey=TEST