You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Dalia Abo Sheasha (JIRA)" <ji...@apache.org> on 2014/02/18 20:32:30 UTC

[jira] [Updated] (OPENJPA-2389) For entity fields missing @Transient annotations, let us know the classes they are in.

     [ https://issues.apache.org/jira/browse/OPENJPA-2389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dalia Abo Sheasha updated OPENJPA-2389:
---------------------------------------

    Attachment: OPENJPA-2389.txt

Since it's not favorable to change our trace messages (due to existing tools that may rely on old messages), I changed the patch to have the code return the entity class with the field name instead of changing the message itself. This accomplishes the same goal but keeps the message as it is. 

> For entity fields missing @Transient annotations, let us know the classes they are in.
> --------------------------------------------------------------------------------------
>
>                 Key: OPENJPA-2389
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2389
>             Project: OpenJPA
>          Issue Type: Improvement
>    Affects Versions: 2.2.2
>            Reporter: Glen Mazza
>         Attachments: OPENJPA-2389.patch, OPENJPA-2389.txt
>
>
> Hi, I'm on the Apache Roller team and we apparently have a dozen or so missing @Transient annotations somewhere within our many, many persistence classes but OpenJPA just tells us the element missing the annotation, *not* the entity class where that element is located[1].
> For example, running mvn test from Roller's weblogger-business module:
> 575  RollerPU  WARN   [main] openjpa.Runtime - Fields "categories" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> 575  RollerPU  WARN   [main] openjpa.Runtime - Fields "entryAttributes" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> 575  RollerPU  WARN   [main] openjpa.Runtime - Fields "tags" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> 740  RollerPU  WARN   [main] openjpa.Runtime - Fields "inputStream" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> 740  RollerPU  WARN   [main] openjpa.Runtime - Fields "directory" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> 740  RollerPU  WARN   [main] openjpa.Runtime - Fields "tags" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> 781  RollerPU  WARN   [main] openjpa.Runtime - Fields "parent" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient.
> These fields are so generic they could be on any of a half-dozen entity classes.  If you could alter the error message to include the entity class where the field missing @Transient is located, it would be *much* easier for code cleanup/debugging.  Thanks!
> [1] http://mail-archives.apache.org/mod_mbox/openjpa-commits/201201.mbox/%3C20120103184609.3E6B32388AB9@eris.apache.org%3E



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)