[
https://issues.apache.org/jira/browse/LABS-280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Simone Gianni resolved LABS-280.
--------------------------------
Resolution: Fixed
Had to rewrite a new ClassLoader for the development environment.
Now there is a rather complex system that pipelines ".class" resource loading,
making them go thru a flexible number of "transformers" before being finally
defined in the target classloader. There are two transformers, one for AspectJ
and the other one operating on a generic ClassFileTransformer, so working for
JPA and any other Instrumentation agent based transformer.
While this solution is overkill for this specific bug, it was the last part of
the maven plugin still waiting to be properly rewritten, and also rewriting
this part was needed to try to optimize the performance of the LTW system, to
have more productive developers :)
Now there are hooks to introduce enhanced .class file caching, but it still
needs to be implemented.
> [database] OpenJPA does not see ITD properties
> ----------------------------------------------
>
> Key: LABS-280
> URL: https://issues.apache.org/jira/browse/LABS-280
> Project: Labs
> Issue Type: Bug
> Components: Magma
> Affects Versions: Current
> Reporter: Simone Gianni
> Assignee: Simone Gianni
> Fix For: Current
>
>
> AspectJ weaving should happen before OpenJPA enhancement. While this seems to
> be the case both in the LTW environment and in the compile time environment,
> adding a property to an entity bean using ITD is not seen by OpenJPA.
> If it is not a problem of class weaving ordering, then proper inspection of
> how OpenJPA enhancer find which properties are present in a class is
> required, understanding why AspectJ ITDs are not taken into consideration
> (for example, are they marked synthetic? bridged? is the fact that the field
> is private to the aspect a problem for the OpenJPA enhancer?)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]