Hi, you have to save the whole doc every time.
About the way you append value to a multivalue field does this thing works?
history.push(historyMessage);
Because by calling doc.getItemValue() one get a instance of java.util.Vector and there is no method named push.
Even if it works I suggest to use the add() method a specify the type of history variable.
var history:java.util.Vector = doc.getItemValue('OneHistory');
history.add(historyMessage);