You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ff...@apache.org on 2008/09/03 06:10:12 UTC
svn commit: r691511 -
/cxf/trunk/rt/transports/jbi/src/main/java/org/apache/cxf/transport/jbi/JBIDestinationOutputStream.java
Author: ffang
Date: Tue Sep 2 21:10:11 2008
New Revision: 691511
URL: http://svn.apache.org/viewvc?rev=691511&view=rev
Log:
[CXF-1779]exclude Map or Collection property as well which entry may not be serializable
Modified:
cxf/trunk/rt/transports/jbi/src/main/java/org/apache/cxf/transport/jbi/JBIDestinationOutputStream.java
Modified: cxf/trunk/rt/transports/jbi/src/main/java/org/apache/cxf/transport/jbi/JBIDestinationOutputStream.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/transports/jbi/src/main/java/org/apache/cxf/transport/jbi/JBIDestinationOutputStream.java?rev=691511&r1=691510&r2=691511&view=diff
==============================================================================
--- cxf/trunk/rt/transports/jbi/src/main/java/org/apache/cxf/transport/jbi/JBIDestinationOutputStream.java (original)
+++ cxf/trunk/rt/transports/jbi/src/main/java/org/apache/cxf/transport/jbi/JBIDestinationOutputStream.java Tue Sep 2 21:10:11 2008
@@ -22,7 +22,8 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.Serializable;
-import java.util.Set;
+import java.util.Collection;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -112,12 +113,18 @@
}
}
//copy properties
- Set<String> keys = inMessage.keySet();
- for (String key : keys) {
- if (inMessage.get(key) instanceof Serializable) {
- msg.setProperty(key, inMessage.get(key));
+
+ for (Map.Entry<String, Object> ent : inMessage.entrySet()) {
+ //check if value is Serializable, and if value is Map or collection,
+ //just exclude it since the entry of it may not be Serializable as well
+ if (ent.getValue() instanceof Serializable
+ && !(ent.getValue() instanceof Map)
+ && !(ent.getValue() instanceof Collection)) {
+ msg.setProperty(ent.getKey(), ent.getValue());
}
}
+
+
//copy contents
msg.setContent(new DOMSource(doc));
xchng.setMessage(msg, "out");