You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by as...@apache.org on 2008/01/13 16:38:41 UTC
svn commit: r611583 -
/webservices/synapse/branches/1.1.1/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java
Author: asankha
Date: Sun Jan 13 07:38:41 2008
New Revision: 611583
URL: http://svn.apache.org/viewvc?rev=611583&view=rev
Log:
fix SYNAPSE-205 applying patch from Andreas
Modified:
webservices/synapse/branches/1.1.1/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java
Modified: webservices/synapse/branches/1.1.1/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java
URL: http://svn.apache.org/viewvc/webservices/synapse/branches/1.1.1/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java?rev=611583&r1=611582&r2=611583&view=diff
==============================================================================
--- webservices/synapse/branches/1.1.1/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java (original)
+++ webservices/synapse/branches/1.1.1/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java Sun Jan 13 07:38:41 2008
@@ -432,18 +432,19 @@
}
public void failed(SessionRequest request) {
- handleError(request);
+ handleError(request, false);
}
public void timeout(SessionRequest request) {
- handleError(request);
+ handleError(request, true);
+ request.cancel();
}
public void cancelled(SessionRequest sessionRequest) {
}
- private void handleError(SessionRequest request) {
+ private void handleError(SessionRequest request, boolean isTimeout) {
if (request.getAttachment() != null &&
request.getAttachment() instanceof Axis2HttpRequest) {
@@ -456,11 +457,17 @@
// inform that this is a sending error (e.g. endpoint failure) and handle it
// differently at the message receiver.
- Exception exception = request.getException();
+ AxisFault axisFault;
+ if (isTimeout) {
+ // In case of a timeout there is no exception
+ axisFault = new AxisFault("The connection timed out");
+ } else {
+ Exception exception = request.getException();
+ /** this is not a mistake I do NOT want getMessage()*/
+ axisFault = new AxisFault(exception.toString(), exception);
+ }
MessageContext nioFaultMessageContext =
- MessageContextBuilder.createFaultMessageContext(
- /** this is not a mistake I do NOT want getMessage()*/
- mc, new AxisFault(exception.toString(), exception));
+ MessageContextBuilder.createFaultMessageContext(mc, axisFault);
nioFaultMessageContext.setProperty(NhttpConstants.SENDING_FAULT, Boolean.TRUE);
mr.receive(nioFaultMessageContext);
---------------------------------------------------------------------
To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: synapse-dev-help@ws.apache.org