You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by at...@apache.org on 2012/08/27 15:53:39 UTC
svn commit: r1377683 - in /rave/sandbox/content-services:
demo-portal/src/main/webapp/WEB-INF/
rave-jcr-service/src/main/java/org/apache/rave/jcr/servlet/
rave-web-hmvc/src/main/java/org/apache/rave/portal/web/hmvc/
Author: ate
Date: Mon Aug 27 13:53:39 2012
New Revision: 1377683
URL: http://svn.apache.org/viewvc?rev=1377683&view=rev
Log:
RAVE-698
- check repository available and configuration loaded from -ByConfig mapper
- drop no longer needed/used repository available filter
Removed:
rave/sandbox/content-services/rave-jcr-service/src/main/java/org/apache/rave/jcr/servlet/ContextRepositoryAvailableFilter.java
Modified:
rave/sandbox/content-services/demo-portal/src/main/webapp/WEB-INF/web.xml
rave/sandbox/content-services/rave-web-hmvc/src/main/java/org/apache/rave/portal/web/hmvc/HmvcHandlerMethodMappingByConfig.java
Modified: rave/sandbox/content-services/demo-portal/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/rave/sandbox/content-services/demo-portal/src/main/webapp/WEB-INF/web.xml?rev=1377683&r1=1377682&r2=1377683&view=diff
==============================================================================
--- rave/sandbox/content-services/demo-portal/src/main/webapp/WEB-INF/web.xml (original)
+++ rave/sandbox/content-services/demo-portal/src/main/webapp/WEB-INF/web.xml Mon Aug 27 13:53:39 2012
@@ -40,22 +40,11 @@
<listener-class>org.apache.rave.portal.web.context.RaveContextLoaderListener</listener-class>
</listener>
- <!-- Filter to ensure Content Repository is loaded
- <filter>
- <filter-name>contentRepositoryAvailableFilter</filter-name>
- <filter-class>org.apache.rave.jcr.servlet.ContextRepositoryAvailableFilter</filter-class>
- </filter>
--->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
-<!--
- <filter-mapping>
- <filter-name>contentRepositoryAvailableFilter</filter-name>
- <url-pattern>/jcr/*</url-pattern>
- </filter-mapping>
--->
+
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
Modified: rave/sandbox/content-services/rave-web-hmvc/src/main/java/org/apache/rave/portal/web/hmvc/HmvcHandlerMethodMappingByConfig.java
URL: http://svn.apache.org/viewvc/rave/sandbox/content-services/rave-web-hmvc/src/main/java/org/apache/rave/portal/web/hmvc/HmvcHandlerMethodMappingByConfig.java?rev=1377683&r1=1377682&r2=1377683&view=diff
==============================================================================
--- rave/sandbox/content-services/rave-web-hmvc/src/main/java/org/apache/rave/portal/web/hmvc/HmvcHandlerMethodMappingByConfig.java (original)
+++ rave/sandbox/content-services/rave-web-hmvc/src/main/java/org/apache/rave/portal/web/hmvc/HmvcHandlerMethodMappingByConfig.java Mon Aug 27 13:53:39 2012
@@ -28,7 +28,7 @@ import javax.jcr.Credentials;
import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
-import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
import org.apache.rave.jcr.LazyRepositoryFactory;
import org.apache.rave.jcr.LazyRepositoryFactoryListener;
@@ -69,6 +69,8 @@ public class HmvcHandlerMethodMappingByC
private String urlMappingsPath;
+ private boolean configured;
+
/**
* Used only when JCR config manager is used
*/
@@ -86,6 +88,7 @@ public class HmvcHandlerMethodMappingByC
}
} else {
+ configured = true;
final PageConfiguration configuration = configManager.loadConfiguration(configurationPath);
final UrlConfiguration urlConfig = configManager.loadUrlConfig(urlMappingsPath, configuration);
// TODO use urlConfig
@@ -94,9 +97,10 @@ public class HmvcHandlerMethodMappingByC
}
@Override
- public void repositoryAvailable(final Object factoryKey, final Repository repository) {
+ public synchronized void repositoryAvailable(final Object factoryKey, final Repository repository) {
Session session = null;
try {
+ configured = true;
session = repository.login(credentials);
configManager = new JcrConfigManager(session, configurationPath);
final PageConfiguration configuration = configManager.loadConfiguration(configurationName);
@@ -114,7 +118,8 @@ public class HmvcHandlerMethodMappingByC
}
@Override
- public void repositoryNotAvailable(final Object factoryKey) {
+ public synchronized void repositoryNotAvailable(final Object factoryKey) {
+ configured = false;
// TODO
}
@@ -246,4 +251,11 @@ public class HmvcHandlerMethodMappingByC
public void setLazyRepositoryFactory(LazyRepositoryFactory repositoryFactory) {
this.repositoryFactory = repositoryFactory;
}
+
+ @Override
+ protected HandlerMethod getHandlerInternal(HttpServletRequest request) throws Exception {
+ // force check repository available
+ repositoryFactory.getRepository();
+ return super.getHandlerInternal(request);
+ }
}
\ No newline at end of file