解かりました、原因が・・・
try {
 EOEditingContext ec = session().defaultEditingContext();
 ec.setStopsValidationAfterFirstError(false);
 ec.saveChanges();
 ...

だと、だめで、

 EOEditingContext ec = session().defaultEditingContext();
try {
 ec.setStopsValidationAfterFirstError(false);
 ec.saveChanges();
 ...

だとおっけいだったのですがこれは
Java言語的にそうなんでしたっけ?
だとすると、saveChanges()は何故良いのでしょうか?
両方ともstaticでないインスタンスメソッドなのに。

うーん摩訶不思議。