You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2014/09/05 16:45:18 UTC
git commit: CAMEL-7782 Close the channel when the authentication
error is sent back to client
Repository: camel
Updated Branches:
refs/heads/master d3c59647e -> 23ea202d3
CAMEL-7782 Close the channel when the authentication error is sent back to client
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/23ea202d
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/23ea202d
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/23ea202d
Branch: refs/heads/master
Commit: 23ea202d3c1a4e87da8ee98cd398ed7ac298a0bc
Parents: d3c5964
Author: Willem Jiang <wi...@gmail.com>
Authored: Fri Sep 5 22:45:04 2014 +0800
Committer: Willem Jiang <wi...@gmail.com>
Committed: Fri Sep 5 22:45:04 2014 +0800
----------------------------------------------------------------------
.../netty4/http/handlers/HttpServerChannelHandler.java | 2 ++
.../netty4/http/NettyHttpSimpleBasicAuthTest.java | 11 ++++++++++-
2 files changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/23ea202d/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/handlers/HttpServerChannelHandler.java
----------------------------------------------------------------------
diff --git a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/handlers/HttpServerChannelHandler.java b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/handlers/HttpServerChannelHandler.java
index 38e0798..eb33c4c 100644
--- a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/handlers/HttpServerChannelHandler.java
+++ b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/handlers/HttpServerChannelHandler.java
@@ -191,6 +191,8 @@ public class HttpServerChannelHandler extends ServerChannelHandler {
response.headers().set(Exchange.CONTENT_TYPE, "text/plain");
response.headers().set(Exchange.CONTENT_LENGTH, 0);
ctx.writeAndFlush(response);
+ // close the channel
+ ctx.channel().close();
return;
} else {
LOG.debug("Http Basic Auth authorized for username: {}", principal.getUsername());
http://git-wip-us.apache.org/repos/asf/camel/blob/23ea202d/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpSimpleBasicAuthTest.java
----------------------------------------------------------------------
diff --git a/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpSimpleBasicAuthTest.java b/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpSimpleBasicAuthTest.java
index bcdd107..cb74342 100644
--- a/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpSimpleBasicAuthTest.java
+++ b/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpSimpleBasicAuthTest.java
@@ -36,8 +36,17 @@ public class NettyHttpSimpleBasicAuthTest extends BaseNettyTest {
@Test
public void testBasicAuth() throws Exception {
+
+ try {
+ template.requestBody("netty4-http:http://localhost:{{port}}/foo", "Hello World", String.class);
+ fail("Should send back 401");
+ } catch (CamelExecutionException e) {
+ NettyHttpOperationFailedException cause = assertIsInstanceOf(NettyHttpOperationFailedException.class, e.getCause());
+ assertEquals(401, cause.getStatusCode());
+ }
+
getMockEndpoint("mock:input").expectedBodiesReceived("Hello World");
-
+
// username:password is scott:secret
String auth = "Basic c2NvdHQ6c2VjcmV0";
String out = template.requestBodyAndHeader("netty4-http:http://localhost:{{port}}/foo", "Hello World", "Authorization", auth, String.class);