Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序引擎JDO模式更改。更新新的不可为空的值_Java_Google App Engine_Jdo - Fatal编程技术网

Java 应用程序引擎JDO模式更改。更新新的不可为空的值

Java 应用程序引擎JDO模式更改。更新新的不可为空的值,java,google-app-engine,jdo,Java,Google App Engine,Jdo,不可为null的类型包括int和boolean。我的问题是,如何通过添加这些类型的新变量来更新已通过模式更改持久化的对象。似乎我无法检索这些对象,因为它们现在有一个不允许null的null变量 根据: 如果字段不是可空值类型,则加载不带相应属性的实体会引发异常。如果实体是从用于重新创建实例的同一个JDO类创建的,则不会发生这种情况,但是如果JDO类发生更改,或者如果实体是使用低级API而不是JDO创建的,则会发生这种情况 这是否意味着无法将这些类型的变量添加到我的架构中?您可以添加新属性,但它们

不可为null的类型包括int和boolean。我的问题是,如何通过添加这些类型的新变量来更新已通过模式更改持久化的对象。似乎我无法检索这些对象,因为它们现在有一个不允许null的null变量

根据:

如果字段不是可空值类型,则加载不带相应属性的实体会引发异常。如果实体是从用于重新创建实例的同一个JDO类创建的,则不会发生这种情况,但是如果JDO类发生更改,或者如果实体是使用低级API而不是JDO创建的,则会发生这种情况


这是否意味着无法将这些类型的变量添加到我的架构中?

您可以添加新属性,但它们需要能够接受null,这意味着两件事:

  • 不能添加基本体。您必须使用整数和布尔值,而不是整数和布尔值

  • 必须准备好代码,才能使属性为null


  • 如果有人支持添加原语,那就太好了,我提出了一个问题,如果你有兴趣的话,就开始吧。