You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Dan Haywood (JIRA)" <ji...@apache.org> on 2014/01/25 15:08:40 UTC
[jira] [Updated] (ISIS-651) Modifications to enable JRebel support
[ https://issues.apache.org/jira/browse/ISIS-651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dan Haywood updated ISIS-651:
-----------------------------
Summary: Modifications to enable JRebel support (was: Prereqs to possible JRebel support)
> Modifications to enable JRebel support
> --------------------------------------
>
> Key: ISIS-651
> URL: https://issues.apache.org/jira/browse/ISIS-651
> Project: Isis
> Issue Type: Improvement
> Components: Core, Objectstore: JDO
> Affects Versions: objectstore-jdo-1.3.0, core-1.3.0
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Minor
> Fix For: objectstore-jdo-1.4.0, core-1.4.0
>
>
> Make JDO PersistenceManagerFactory accessible so can be interacted with outside of Isis runtime
> Invalidate Isis spec cache by way of class (not just by object).
> ~~~
> need to be able to do similar with the DN metadata:
> http://www.datanucleus.org/servlet/jira/browse/NUCCORE-1104
> Assuming that there's auto-enhancement within the IDE, this means that JRebel picks up each class twice: once for the unenhanced class, then almost immediately for the enhanced class. Therefore, I think that all that may be required is to remove the ClassMetaData whenever an unenhanced class is reloaded DN's will lazily recreate metadata as required.
> An enhancement might be to do the enhancement within the JRebel plugin (and not in the IDE). This would require the enhancement is done in a separate classloader; it (obviously!) isn't allowed to reference the java.lang.Class being loaded within the plugin itself. As enhancement does cause this to occur, it must be namespaced off to a separate classloader.
> resources:
> - http://www.datanucleus.org/servlet/wiki/pages/viewpage.action?pageId=6619188 (Metadata Generation, programmatic running of Enhancement)
> - http://markmail.org/message/xn6fowrxqeucac26 (useful forum messages hinting on the classloader stuff)
> - http://www.datanucleus.org/products/accessplatform/jpa/enhancer.html#api (background notes)
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)