You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2014/08/13 10:31:51 UTC
[1/4] git commit: CAMEL-7691: camel-serlvet - Potential NPE if no
servlet name configured for osgi
Repository: camel
Updated Branches:
refs/heads/camel-2.12.x 13b5793f7 -> 7507c4928
refs/heads/camel-2.13.x 9a4eb50ff -> 82a54b5fb
refs/heads/master fb7752760 -> 0d842d123
CAMEL-7691: camel-serlvet - Potential NPE if no servlet name configured for osgi
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/82a54b5f
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/82a54b5f
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/82a54b5f
Branch: refs/heads/camel-2.13.x
Commit: 82a54b5fb8eae8d515e4dc0084f17f81b99b8a7c
Parents: 9a4eb50
Author: Claus Ibsen <da...@apache.org>
Authored: Wed Aug 13 10:25:17 2014 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Aug 13 10:31:13 2014 +0200
----------------------------------------------------------------------
.../servlet/osgi/OsgiServletRegisterer.java | 28 ++++++++++++++------
1 file changed, 20 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/82a54b5f/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
----------------------------------------------------------------------
diff --git a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
index 6c786ad..429f9e5 100644
--- a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
+++ b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
@@ -20,6 +20,7 @@ import java.util.Dictionary;
import java.util.Hashtable;
import javax.servlet.http.HttpServlet;
+import org.apache.camel.util.ObjectHelper;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
@@ -38,8 +39,11 @@ public class OsgiServletRegisterer {
* of the form "/" is used to denote the root alias.
*/
private String alias;
-
- private String servletName;
+
+ /**
+ * The servlet name.
+ */
+ private String servletName = "CamelServlet";
/**
* Servlet to be registered
@@ -47,14 +51,16 @@ public class OsgiServletRegisterer {
private HttpServlet servlet;
/**
- * HttpService to register with. Get this with osgi:reference in the spring
- * context
+ * HttpService to register with. Get this with osgi:reference in the blueprint/spring-dm file
*/
private HttpService httpService;
private HttpContext httpContext;
private boolean alreadyRegistered;
+
+ // The servlet will default have to match on uri prefix as some endpoints may do so
+ private volatile boolean matchOnUriPrefix = true;
public void setHttpService(HttpService httpService) {
this.httpService = httpService;
@@ -75,14 +81,20 @@ public class OsgiServletRegisterer {
public void setHttpContext(HttpContext httpContext) {
this.httpContext = httpContext;
}
-
+
+ public void setMatchOnUriPrefix(boolean matchOnUriPrefix) {
+ this.matchOnUriPrefix = matchOnUriPrefix;
+ }
+
public void register() throws Exception {
- HttpContext actualHttpContext = (httpContext == null)
+ ObjectHelper.notEmpty(alias, "alias", this);
+ ObjectHelper.notEmpty(servletName, "servletName", this);
+
+ HttpContext actualHttpContext = (httpContext == null)
? httpService.createDefaultHttpContext()
: httpContext;
final Dictionary<String, String> initParams = new Hashtable<String, String>();
- // The servlet will always have to match on uri prefix as some endpoints may do so
- initParams.put("matchOnUriPrefix", "true");
+ initParams.put("matchOnUriPrefix", matchOnUriPrefix ? "true" : "false");
initParams.put("servlet-name", servletName);
httpService.registerServlet(alias, servlet, initParams, actualHttpContext);
alreadyRegistered = true;
[4/4] git commit: Polished
Posted by da...@apache.org.
Polished
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/0d842d12
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/0d842d12
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/0d842d12
Branch: refs/heads/master
Commit: 0d842d123b637b15fddbb124219611eef53caf49
Parents: f070a83
Author: Claus Ibsen <da...@apache.org>
Authored: Wed Aug 13 10:25:44 2014 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Aug 13 10:31:39 2014 +0200
----------------------------------------------------------------------
.../camel-example-servlet-rest-tomcat/pom.xml | 24 ++++----------------
.../camel/example/rest/UserRouteBuilder.java | 5 ----
2 files changed, 4 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/0d842d12/examples/camel-example-servlet-rest-tomcat/pom.xml
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/pom.xml b/examples/camel-example-servlet-rest-tomcat/pom.xml
index 5804e59..3f68013 100755
--- a/examples/camel-example-servlet-rest-tomcat/pom.xml
+++ b/examples/camel-example-servlet-rest-tomcat/pom.xml
@@ -46,10 +46,11 @@
<groupId>org.apache.camel</groupId>
<artifactId>camel-servlet</artifactId>
</dependency>
+
+ <!-- swagger api -->
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-swagger</artifactId>
- <version>${project.version}</version>
</dependency>
<!-- use for json binding -->
@@ -64,23 +65,6 @@
<artifactId>spring-web</artifactId>
</dependency>
- <!-- swagger -->
- <dependency>
- <groupId>com.wordnik</groupId>
- <artifactId>swagger-annotations</artifactId>
- <version>1.3.7</version>
- </dependency>
- <dependency>
- <groupId>com.wordnik</groupId>
- <artifactId>swagger-jaxrs_2.10</artifactId>
- <version>1.3.7</version>
- </dependency>
- <dependency>
- <groupId>com.wordnik</groupId>
- <artifactId>swagger-servlet_2.10</artifactId>
- <version>1.3.7</version>
- </dependency>
-
<!-- logging -->
<dependency>
<groupId>log4j</groupId>
@@ -94,19 +78,19 @@
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
- <scope>compile</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.0.13</version>
- <scope>compile</scope>
</dependency>
</dependencies>
<build>
+ <!-- we do not want version in the WAR name -->
<finalName>${project.artifactId}</finalName>
+ <!-- allows running this example with mvn:jetty-run -->
<plugins>
<plugin>
<groupId>org.eclipse.jetty</groupId>
http://git-wip-us.apache.org/repos/asf/camel/blob/0d842d12/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserRouteBuilder.java
----------------------------------------------------------------------
diff --git a/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserRouteBuilder.java b/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserRouteBuilder.java
index 0bcdf36..0f6fbd5 100644
--- a/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserRouteBuilder.java
+++ b/examples/camel-example-servlet-rest-tomcat/src/main/java/org/apache/camel/example/rest/UserRouteBuilder.java
@@ -16,13 +16,8 @@
*/
package org.apache.camel.example.rest;
-import com.wordnik.swagger.config.SwaggerConfig;
-import com.wordnik.swagger.model.ApiListing;
import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.swagger.RestSwaggerReader;
import org.apache.camel.model.rest.RestBindingMode;
-import org.apache.camel.model.rest.RestDefinition;
-import scala.Option;
/**
* Define REST services using the Camel REST DSL
[2/4] git commit: CAMEL-7691: camel-serlvet - Potential NPE if no
servlet name configured for osgi
Posted by da...@apache.org.
CAMEL-7691: camel-serlvet - Potential NPE if no servlet name configured for osgi
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/7507c492
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/7507c492
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/7507c492
Branch: refs/heads/camel-2.12.x
Commit: 7507c4928e937122d679fdfecbc15f02f7060024
Parents: 13b5793
Author: Claus Ibsen <da...@apache.org>
Authored: Wed Aug 13 10:25:17 2014 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Aug 13 10:31:29 2014 +0200
----------------------------------------------------------------------
.../servlet/osgi/OsgiServletRegisterer.java | 28 ++++++++++++++------
1 file changed, 20 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/7507c492/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
----------------------------------------------------------------------
diff --git a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
index 6c786ad..429f9e5 100644
--- a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
+++ b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
@@ -20,6 +20,7 @@ import java.util.Dictionary;
import java.util.Hashtable;
import javax.servlet.http.HttpServlet;
+import org.apache.camel.util.ObjectHelper;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
@@ -38,8 +39,11 @@ public class OsgiServletRegisterer {
* of the form "/" is used to denote the root alias.
*/
private String alias;
-
- private String servletName;
+
+ /**
+ * The servlet name.
+ */
+ private String servletName = "CamelServlet";
/**
* Servlet to be registered
@@ -47,14 +51,16 @@ public class OsgiServletRegisterer {
private HttpServlet servlet;
/**
- * HttpService to register with. Get this with osgi:reference in the spring
- * context
+ * HttpService to register with. Get this with osgi:reference in the blueprint/spring-dm file
*/
private HttpService httpService;
private HttpContext httpContext;
private boolean alreadyRegistered;
+
+ // The servlet will default have to match on uri prefix as some endpoints may do so
+ private volatile boolean matchOnUriPrefix = true;
public void setHttpService(HttpService httpService) {
this.httpService = httpService;
@@ -75,14 +81,20 @@ public class OsgiServletRegisterer {
public void setHttpContext(HttpContext httpContext) {
this.httpContext = httpContext;
}
-
+
+ public void setMatchOnUriPrefix(boolean matchOnUriPrefix) {
+ this.matchOnUriPrefix = matchOnUriPrefix;
+ }
+
public void register() throws Exception {
- HttpContext actualHttpContext = (httpContext == null)
+ ObjectHelper.notEmpty(alias, "alias", this);
+ ObjectHelper.notEmpty(servletName, "servletName", this);
+
+ HttpContext actualHttpContext = (httpContext == null)
? httpService.createDefaultHttpContext()
: httpContext;
final Dictionary<String, String> initParams = new Hashtable<String, String>();
- // The servlet will always have to match on uri prefix as some endpoints may do so
- initParams.put("matchOnUriPrefix", "true");
+ initParams.put("matchOnUriPrefix", matchOnUriPrefix ? "true" : "false");
initParams.put("servlet-name", servletName);
httpService.registerServlet(alias, servlet, initParams, actualHttpContext);
alreadyRegistered = true;
[3/4] git commit: CAMEL-7691: camel-serlvet - Potential NPE if no
servlet name configured for osgi
Posted by da...@apache.org.
CAMEL-7691: camel-serlvet - Potential NPE if no servlet name configured for osgi
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f070a83f
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f070a83f
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f070a83f
Branch: refs/heads/master
Commit: f070a83fa2f95ffa345b48b555cb7c8d7b6b8da7
Parents: fb77527
Author: Claus Ibsen <da...@apache.org>
Authored: Wed Aug 13 10:25:17 2014 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Aug 13 10:31:39 2014 +0200
----------------------------------------------------------------------
.../servlet/osgi/OsgiServletRegisterer.java | 28 ++++++++++++++------
1 file changed, 20 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/f070a83f/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
----------------------------------------------------------------------
diff --git a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
index 6c786ad..429f9e5 100644
--- a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
+++ b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/osgi/OsgiServletRegisterer.java
@@ -20,6 +20,7 @@ import java.util.Dictionary;
import java.util.Hashtable;
import javax.servlet.http.HttpServlet;
+import org.apache.camel.util.ObjectHelper;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
@@ -38,8 +39,11 @@ public class OsgiServletRegisterer {
* of the form "/" is used to denote the root alias.
*/
private String alias;
-
- private String servletName;
+
+ /**
+ * The servlet name.
+ */
+ private String servletName = "CamelServlet";
/**
* Servlet to be registered
@@ -47,14 +51,16 @@ public class OsgiServletRegisterer {
private HttpServlet servlet;
/**
- * HttpService to register with. Get this with osgi:reference in the spring
- * context
+ * HttpService to register with. Get this with osgi:reference in the blueprint/spring-dm file
*/
private HttpService httpService;
private HttpContext httpContext;
private boolean alreadyRegistered;
+
+ // The servlet will default have to match on uri prefix as some endpoints may do so
+ private volatile boolean matchOnUriPrefix = true;
public void setHttpService(HttpService httpService) {
this.httpService = httpService;
@@ -75,14 +81,20 @@ public class OsgiServletRegisterer {
public void setHttpContext(HttpContext httpContext) {
this.httpContext = httpContext;
}
-
+
+ public void setMatchOnUriPrefix(boolean matchOnUriPrefix) {
+ this.matchOnUriPrefix = matchOnUriPrefix;
+ }
+
public void register() throws Exception {
- HttpContext actualHttpContext = (httpContext == null)
+ ObjectHelper.notEmpty(alias, "alias", this);
+ ObjectHelper.notEmpty(servletName, "servletName", this);
+
+ HttpContext actualHttpContext = (httpContext == null)
? httpService.createDefaultHttpContext()
: httpContext;
final Dictionary<String, String> initParams = new Hashtable<String, String>();
- // The servlet will always have to match on uri prefix as some endpoints may do so
- initParams.put("matchOnUriPrefix", "true");
+ initParams.put("matchOnUriPrefix", matchOnUriPrefix ? "true" : "false");
initParams.put("servlet-name", servletName);
httpService.registerServlet(alias, servlet, initParams, actualHttpContext);
alreadyRegistered = true;