From bd3ae4bb4166de9b0dd723ff6103268ce297f898 Mon Sep 17 00:00:00 2001 From: Redkale <22250530@qq.com> Date: Wed, 7 Sep 2016 18:01:37 +0800 Subject: [PATCH] --- src/org/redkale/convert/ConvertFactory.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/org/redkale/convert/ConvertFactory.java b/src/org/redkale/convert/ConvertFactory.java index 76885e97a..9f5e66c12 100644 --- a/src/org/redkale/convert/ConvertFactory.java +++ b/src/org/redkale/convert/ConvertFactory.java @@ -104,6 +104,14 @@ public abstract class ConvertFactory { this.register(double[].class, DoubleArraySimpledCoder.instance); this.register(String[].class, StringArraySimpledCoder.instance); //--------------------------------------------------------- + this.register(HttpCookie.class, new Creator() { + @Override + @Creator.ConstructorParameters({"name", "value"}) + public HttpCookie create(Object... params) { + return new HttpCookie((String) params[0], (String) params[1]); + } + + }); } } @@ -387,7 +395,9 @@ public abstract class ConvertFactory { } else if (clazz == Object.class) { od = new ObjectDecoder(type); decoder = od; - } else if (!clazz.getName().startsWith("java.") || clazz.getName().startsWith("java.awt.geom.Point2D")) { + } else if (!clazz.getName().startsWith("java.") + || java.net.HttpCookie.class == clazz + || clazz.getName().startsWith("java.awt.geom.Point2D")) { Decodeable simpleCoder = null; for (final Method method : clazz.getDeclaredMethods()) { if (!Modifier.isStatic(method.getModifiers())) continue; @@ -467,7 +477,7 @@ public abstract class ConvertFactory { encoder = new MapEncoder(this, type); } else if (clazz == Object.class) { return (Encodeable) this.anyEncoder; - } else if (!clazz.getName().startsWith("java.")) { + } else if (!clazz.getName().startsWith("java.") || java.net.HttpCookie.class == clazz) { Encodeable simpleCoder = null; for (final Method method : clazz.getDeclaredMethods()) { if (!Modifier.isStatic(method.getModifiers())) continue;