mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
FIX: NPE when accessing mutableNext in EBI
This commit is contained in:
@@ -1232,7 +1232,8 @@ public final class EntityBeanIntercept implements Serializable {
|
||||
if (mutableNext == null) {
|
||||
return null;
|
||||
}
|
||||
return mutableNext[propertyIndex].content();
|
||||
final MutableValueNext next = mutableNext[propertyIndex];
|
||||
return next != null ? next.content() : null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,6 +5,8 @@ import io.ebean.DB;
|
||||
import org.junit.Test;
|
||||
import org.tests.model.json.EBasicOldValue;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class TestJsonNullValues extends BaseTestCase {
|
||||
@@ -39,4 +41,26 @@ public class TestJsonNullValues extends BaseTestCase {
|
||||
assertThat(bean.getIntMap()).isEmpty();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetOneToNullAnotherToEmpty() {
|
||||
EBasicOldValue bean = new EBasicOldValue();
|
||||
DB.save(bean);
|
||||
bean = DB.find(EBasicOldValue.class, bean.getId());
|
||||
|
||||
bean.setStringList(null);
|
||||
bean.setStringSet(null);
|
||||
|
||||
DB.save(bean);
|
||||
bean = DB.find(EBasicOldValue.class, bean.getId());
|
||||
|
||||
bean.setStringList(new ArrayList<>());
|
||||
bean.setStringSet(null);
|
||||
|
||||
DB.save(bean);
|
||||
bean = DB.find(EBasicOldValue.class, bean.getId());
|
||||
|
||||
assertThat(bean.getStringList()).isEmpty();
|
||||
assertThat(bean.getStringSet()).isEmpty();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user