// newDetail.setOrder(order);
order.addDetail(newDetail);
EbeanServer server = Ebean.getServer(null);
JsonContext jsonContext = server.json();
String jsonString = jsonContext.toJson(order);
System.out.println(jsonString);
Order updOrder = jsonContext.toBean(Order.class, jsonString);
server.update(updOrder);
MRole r1 = new MRole();
r1.setRoleName("rolej1");
Ebean.save(r1);
MRole r2 = new MRole();
r2.setRoleName("rolej2");
Ebean.save(r2);
MRole r3 = new MRole();
r3.setRoleName("rolej3");
Ebean.save(r3);
MUser u0 = new MUser();
u0.setUserName("userj1");
u0.addRole(r1);
u0.addRole(r2);
u0.addRole(r3);
Ebean.save(u0);
String jsonUser = jsonContext.toJson(u0);
System.out.println(jsonUser);
String s = "{\"userid\":" + u0.getUserid()
+ ",\"userName\":\"userj1\", \"roles\":[{\"roleid\":" + r2.getRoleid() + "},{\"roleid\":"
+ r3.getRoleid() + "}]} ";
MUser updMUser = jsonContext.toBean(MUser.class, s);
server.update(updMUser);
// checked transaction log to confirm correct behaviour
}