You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by og...@apache.org on 2011/04/04 02:13:32 UTC
svn commit: r1088454 -
/incubator/stanbol/branches/http-endpoint-refactoring/commons/web/base/src/main/java/org/apache/stanbol/commons/web/base/JerseyEndpoint.java
Author: ogrisel
Date: Mon Apr 4 00:13:32 2011
New Revision: 1088454
URL: http://svn.apache.org/viewvc?rev=1088454&view=rev
Log:
STANBOL-120: better handling of unregistration of web fragments
Modified:
incubator/stanbol/branches/http-endpoint-refactoring/commons/web/base/src/main/java/org/apache/stanbol/commons/web/base/JerseyEndpoint.java
Modified: incubator/stanbol/branches/http-endpoint-refactoring/commons/web/base/src/main/java/org/apache/stanbol/commons/web/base/JerseyEndpoint.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/branches/http-endpoint-refactoring/commons/web/base/src/main/java/org/apache/stanbol/commons/web/base/JerseyEndpoint.java?rev=1088454&r1=1088453&r2=1088454&view=diff
==============================================================================
--- incubator/stanbol/branches/http-endpoint-refactoring/commons/web/base/src/main/java/org/apache/stanbol/commons/web/base/JerseyEndpoint.java (original)
+++ incubator/stanbol/branches/http-endpoint-refactoring/commons/web/base/src/main/java/org/apache/stanbol/commons/web/base/JerseyEndpoint.java Mon Apr 4 00:13:32 2011
@@ -67,9 +67,14 @@ public class JerseyEndpoint {
@Activate
protected void activate(ComponentContext ctx) throws IOException, ServletException, NamespaceException {
+ if (webFragments.isEmpty()) {
+ // nothing to activate
+ return;
+ }
+
this.componentContext = ctx;
this.registeredAliases = new ArrayList<String>();
-
+
// register all the JAX-RS resources into a a JAX-RS application and bind it to a configurable URL
// prefix
JerseyEndpointApplication app = new JerseyEndpointApplication();
@@ -124,6 +129,7 @@ public class JerseyEndpoint {
httpService.unregister(alias);
}
servletContext = null;
+ componentContext = null;
}
protected void bindHttpService(HttpService httpService) {
@@ -140,8 +146,9 @@ public class JerseyEndpoint {
// TODO: support some ordering for jax-rs resource and template overrides?
webFragments.add(webFragment);
if (componentContext != null) {
- deactivate(componentContext);
- activate(componentContext);
+ ComponentContext oldContext = componentContext;
+ deactivate(oldContext);
+ activate(oldContext);
}
}
@@ -150,8 +157,9 @@ public class JerseyEndpoint {
NamespaceException {
webFragments.remove(webFragment);
if (componentContext != null) {
- deactivate(componentContext);
- activate(componentContext);
+ ComponentContext oldContext = componentContext;
+ deactivate(oldContext);
+ activate(oldContext);
}
}