1.1 --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/KOProperty.java Sun Apr 14 11:52:36 2013 +0200
1.2 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/KOProperty.java Sun Apr 14 12:03:15 2013 +0200
1.3 @@ -52,6 +52,26 @@
1.4
1.5 public void set(Object value) throws Exception {
1.6 LOG.log(Level.INFO, "{0} set to {1}", new Object[] { setter, value });
1.7 - setter.invoke(obj, value);
1.8 + final Class<?> rt = getter.getReturnType();
1.9 +
1.10 + try {
1.11 + if (rt == String.class) {
1.12 + setter.invoke(obj, value.toString());
1.13 + return;
1.14 + }
1.15 + if (rt == Integer.class || rt == int.class) {
1.16 + setter.invoke(obj, Integer.parseInt(value.toString()));
1.17 + return;
1.18 + }
1.19 + if (rt == Double.class || rt == double.class) {
1.20 + setter.invoke(obj, Double.parseDouble(value.toString()));
1.21 + return;
1.22 + }
1.23 + setter.invoke(obj, value);
1.24 + } catch (Throwable ex) {
1.25 + LOG.log(Level.SEVERE, "Can''t set " + setter, ex);
1.26 + }
1.27 +
1.28 }
1.29 +
1.30 }
2.1 --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Knockout.java Sun Apr 14 11:52:36 2013 +0200
2.2 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Knockout.java Sun Apr 14 12:03:15 2013 +0200
2.3 @@ -109,12 +109,12 @@
2.4 }
2.5
2.6 public void valueHasMutated(String prop) {
2.7 - LOG.log(Level.FINE, "property mutated: {0}", prop);
2.8 + LOG.log(Level.INFO, "property mutated: {0}", prop);
2.9 try {
2.10 JSObject koProp = (JSObject) ((JSObject) model).getMember(prop);
2.11 koProp.call("valueHasMutated");
2.12 } catch (Throwable t) {
2.13 - LOG.log(Level.FINE, "valueHasMutated failed for {0}", model);
2.14 + LOG.log(Level.WARNING, "valueHasMutated failed for {0}", model);
2.15 }
2.16 }
2.17