-
Search before asking
Apache SkyWalking ComponentJava Agent (apache/skywalking-java) What happenedSimilar problem: #9357 #3629 If the enhanced instance object belongs to an entity class of the ORM framework, such as @entity annotated with JPA annotations, the SkyWalkingDynamicField field needs to be declared as a non-persistent virtual field, that is, the property is not a field map of the database table.
What you expected to happenConsider to add
How to reproduceSelect one of the ORM framework's entity classes to enhance and then use it to manipulate the database
Anything elseNo response Are you willing to submit a pull request to fix on your own?
Code of Conduct
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 13 replies
-
At present, it is found that adding the keyword 'transient' 'ORM framework to ignore this field is common, and' @transient ' 'such JPA annotations do not work for mybatis-plus, so whether to make a custom annotation' EnhancedClassTransi entField identifies which fields are skywalking enhanced, and then it is better for each ORM framework or its framework's plugins to implement the 'do not persist this field' function? As follows:
|
Beta Was this translation helpful? Give feedback.
-
I am not sure about your use case, but generally, we would not enhance Object beans, which are described in your cases. |
Beta Was this translation helpful? Give feedback.
How to filter out by an ORM extension, I believe that is not our case. We won't adopt for all frameworks, that is not reality.
As I said, if you insist to enhance Java bean for ORM, write a plugin to skip this field, this could be a supported SDK of that plugin, or another SkyWalking plugins. Both are practical.