mirror of
https://github.com/ebean-orm/ebean.git
synced 2026-10-23 01:07:49 +00:00
FIX: setting json values to null was throwing a NPE when persisting
This commit is contained in:
committed by
Jonas Pöhler
parent
f7a0ae8b4a
commit
f3ec4a78c9
@@ -122,9 +122,6 @@ class ScalarTypeJsonList {
|
||||
|
||||
@Override
|
||||
public final String formatValue(List value) {
|
||||
if (value.isEmpty()) {
|
||||
return "[]";
|
||||
}
|
||||
try {
|
||||
return EJson.write(value);
|
||||
} catch (IOException e) {
|
||||
|
||||
@@ -122,9 +122,6 @@ final class ScalarTypeJsonSet {
|
||||
|
||||
@Override
|
||||
public final String formatValue(Set value) {
|
||||
if (value.isEmpty()) {
|
||||
return "[]";
|
||||
}
|
||||
try {
|
||||
return EJson.write(value);
|
||||
} catch (IOException e) {
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
package org.tests.json;
|
||||
|
||||
import io.ebean.BaseTestCase;
|
||||
import io.ebean.DB;
|
||||
import org.junit.Test;
|
||||
import org.tests.model.json.EBasicOldValue;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class TestJsonNullValues extends BaseTestCase {
|
||||
|
||||
@Test
|
||||
public void testSetToNull() {
|
||||
EBasicOldValue bean = new EBasicOldValue();
|
||||
DB.save(bean);
|
||||
bean = DB.find(EBasicOldValue.class, bean.getId());
|
||||
|
||||
bean.setStringList(null);
|
||||
bean.setStringSet(null);
|
||||
bean.setObjectMap(null);
|
||||
bean.setLongList(null);
|
||||
bean.setLongSet(null);
|
||||
bean.setLongMap(null);
|
||||
bean.setIntList(null);
|
||||
bean.setIntSet(null);
|
||||
bean.setIntMap(null);
|
||||
|
||||
DB.save(bean);
|
||||
bean = DB.find(EBasicOldValue.class, bean.getId());
|
||||
|
||||
assertThat(bean.getStringList()).isEmpty();
|
||||
assertThat(bean.getStringSet()).isEmpty();
|
||||
assertThat(bean.getObjectMap()).isEmpty();
|
||||
assertThat(bean.getLongList()).isEmpty();
|
||||
assertThat(bean.getLongSet()).isEmpty();
|
||||
assertThat(bean.getLongMap()).isEmpty();
|
||||
assertThat(bean.getIntList()).isEmpty();
|
||||
assertThat(bean.getIntSet()).isEmpty();
|
||||
assertThat(bean.getIntMap()).isEmpty();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user