Cómo resolver "PK de generación de errores: Entidad no es compatible" cuando se usa Cayenne

StackOverflow https://stackoverflow.com/questions/4785154

  •  24-10-2019
  •  | 
  •  

Pregunta

Al cometer cambios en un contexto de Apache Cayenne, obtengo una excepción como la siguiente.

org.apache.cayenne.CayenneRuntimeException: [v.3.0.1 Sep 06 2010 15:09:38] 
Error generating PK : entity not supported: SOME_TABLE

¿Por qué pasó esto?

¿Fue útil?

Solución 2

Una columna que forma parte de la clave principal de Some_Table no tiene valor. Por lo tanto, Cayenne intenta generar uno, pero no sabe cómo hacerlo.

Para resolver el problema, haga uno de los siguientes.

  • Si se supone que el valor se genere automáticamente, dígale a Cayenne cómo generar el valor.
  • Si no se supone que se genere, proporcione un valor antes de cometer cambios en el contexto.

Otros consejos

Debe establecer una estrategia de generación de claves en el modelador de Cayenne. La documentación se puede encontrar en el Referencia de Cayena.

Normalmente Cayenne no expone el PK al usuario en las clases de entidad de objeto. Puede anular eso, pero piense con mucho cuidado antes de hacer que su PK sea significativo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top