You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2010/09/14 11:32:42 UTC
[jira] Commented: (CAMEL-3120) hawtdb - Should wrap caused
exception in wrapped IOException
[ https://issues.apache.org/activemq/browse/CAMEL-3120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61808#action_61808 ]
Claus Ibsen commented on CAMEL-3120:
------------------------------------
Also hawtdb may have to change how it loads the class. See for example from AMQ:
http://svn.apache.org/repos/asf/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/util/ClassLoadingAwareObjectInputStream.java
> hawtdb - Should wrap caused exception in wrapped IOException
> ------------------------------------------------------------
>
> Key: CAMEL-3120
> URL: https://issues.apache.org/activemq/browse/CAMEL-3120
> Project: Apache Camel
> Issue Type: Improvement
> Affects Versions: 2.4.0
> Reporter: Claus Ibsen
> Assignee: Hiram Chirino
> Priority: Minor
> Fix For: 2.6.0
>
>
> The {{decode}} method in {{ObjectCodec}} should wrap the causes stacktrace in the wrapped IOException.
> For example OSGi frameworks may be pesky and we want to be able to see whatever stacktrace it may thrown on you.
> {code}
> public T decode(DataInput dataIn) throws IOException {
> int size = dataIn.readInt();
> byte[] data = new byte[size];
> dataIn.readFully(data);
> ByteArrayInputStream bytesIn = new ByteArrayInputStream(data);
> ObjectInputStream objectIn = new ObjectInputStream(bytesIn);
> try {
> return (T) objectIn.readObject();
> } catch (ClassNotFoundException e) {
> throw new IOException(e.getMessage());
> }
> }
> {code}
> For being JDK 1.5 compatible you need to do it like
> {code}
> public static IOException createIOException(String message, Throwable cause) {
> IOException answer = new IOException(message);
> answer.initCause(cause);
> return answer;
> }
> {code}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.