Hi Diogo,

 >> <component name="org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider" />

This gave me some Exceptions when defining any of the other 
components 
("org.picocontainer.defaults.AmbiguousComponentResolutionException: 
Ambiguous interface org.generama.QDoxCapableMetadataProvider, 
resolves to multiple keys [class org.xdoclet.QDoxMetadataProvider, 
class org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider").

Anyway, I simply removed the MetaDataProvider from the plugin 
constructors completely, leaving it only in EjbConfig which wraps it 
in a QDoxCachedMetadataProvider. In EjbJavaGeneratingPlugin & 
EjbQDoxPlugin I then call

         super(templateEngine, config.getMetadataProvider(), writerMapper);

This doesn't fit the ValueObjectPlugin (which modifies the Metadata), 
but that should be solveable by adding a simple 'setMetaData' method. 
More importantly: it does speed up things a lot for those plugins 
comming after the EjbJarPlugin, which on itself is still very slow 
:-(: running PK, Remote(Home), Local(Home), EjbJar, WeblogicEjbJar & 
WeblogicCmpRdbmsJar now takes 55 minutes. A lot better but still too 
slow to be useable.

My biggest problem now: my local code is getting further and further 
away from CVS (the patch I already submitted, some minor changes 
needed for the Weblogic plugin, these changes) that it's becomming 
hard to provide a patch :-S

Regards,
Ive

PS: Another improvement might be to cache the RelationManager in the 
EjbUtils. I call it from the weblogic specific things and 
constructing it still takes 23 secs (before the optimisation above: 127 secs).




_______________________________________________
xdoclet-plugins-interest mailing list
xdoclet-plugins-interest@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xdoclet-plugins-interest

Reply via email to