mirror of https://github.com/apache/activemq.git
[AMQ-6646] improve error reporting to include url
This commit is contained in:
parent
09acc504f1
commit
b64ac1dd77
|
@ -46,9 +46,13 @@ public class DefaultBlobDownloadStrategy extends DefaultStrategy implements Blob
|
|||
|
||||
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
|
||||
connection.setRequestMethod("DELETE");
|
||||
connection.connect();
|
||||
connection.disconnect();
|
||||
|
||||
try {
|
||||
connection.connect();
|
||||
} catch (IOException e) {
|
||||
throw new IOException("DELETE failed on: " + url, e);
|
||||
} finally {
|
||||
connection.disconnect();
|
||||
}
|
||||
if (!isSuccessfulCode(connection.getResponseCode())) {
|
||||
throw new IOException("DELETE was not successful: " + connection.getResponseCode() + " "
|
||||
+ connection.getResponseMessage());
|
||||
|
|
|
@ -63,10 +63,12 @@ public class DefaultBlobUploadStrategy extends DefaultStrategy implements BlobUp
|
|||
os.write(buf, 0, c);
|
||||
os.flush();
|
||||
}
|
||||
} catch (IOException error) {
|
||||
throw new IOException("PUT failed to: " + url, error);
|
||||
}
|
||||
|
||||
if (!isSuccessfulCode(connection.getResponseCode())) {
|
||||
throw new IOException("PUT was not successful: " + connection.getResponseCode() + " "
|
||||
throw new IOException("PUT to " + url + " was not successful: " + connection.getResponseCode() + " "
|
||||
+ connection.getResponseMessage());
|
||||
}
|
||||
|
||||
|
|
|
@ -18,6 +18,11 @@ package org.apache.activemq.blob;
|
|||
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.activemq.ActiveMQConnectionFactory;
|
||||
import org.apache.activemq.command.ActiveMQBlobMessage;
|
||||
import org.apache.activemq.command.MessageId;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -29,4 +34,33 @@ public class BlobTransferPolicyUriTest extends TestCase {
|
|||
assertEquals("http://foo.com", policy.getDefaultUploadUrl());
|
||||
assertEquals("http://foo.com", policy.getUploadUrl());
|
||||
}
|
||||
|
||||
public void testDefaultUploadStrategySensibleError() throws Exception {
|
||||
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("vm://localhost");
|
||||
BlobTransferPolicy policy = factory.getBlobTransferPolicy();
|
||||
BlobUploadStrategy strategy = policy.getUploadStrategy();
|
||||
ActiveMQBlobMessage message = new ActiveMQBlobMessage();
|
||||
message.setMessageId(new MessageId("1:0:0:0"));
|
||||
try {
|
||||
strategy.uploadStream(message, message.getInputStream());
|
||||
} catch (IOException expected) {
|
||||
assertTrue(expected.getMessage().contains("8080"));
|
||||
expected.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public void testDefaultDownlaodStrategySensibleError() throws Exception {
|
||||
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("vm://localhost");
|
||||
BlobTransferPolicy policy = factory.getBlobTransferPolicy();
|
||||
BlobDownloadStrategy strategy = policy.getDownloadStrategy();
|
||||
ActiveMQBlobMessage message = new ActiveMQBlobMessage();
|
||||
message.setMessageId(new MessageId("1:0:0:0"));
|
||||
try {
|
||||
strategy.deleteFile(message);
|
||||
} catch (IOException expected) {
|
||||
assertTrue(expected.getMessage().contains("8080"));
|
||||
expected.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue