You have to try to make the efforts to separate your changes in smaller
patches.
If not, it could be a really big mess to apply your changes. Nevertheless,
it's worthy to provide the patch.

Later, if you can provide me by email your big beans "test case" I could
test some of this "slow-movers".

>  >> <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").

Well, i haven't tried.. :D

> 
> 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.

It modifies in memory metadata (doesn't change the original metadata)

> 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.


> 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).
> 

As I recall, the relationManager construction receives a metadata Collection
as parameter. If you simply cache it, how could you guarantee it's working
on the same metadata... And every plugin instantiates EjbUtils... surely you
don't want to cache it "statically"..

Regards
Diogo Quintela

PS: you've pointed out some important unfound bootlenecks. That's the
problem of being the on the bleeding edge (I suppose that because of the
lack of server DD's, not much people is already using this on medium to big
projects)


Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
xdoclet-plugins-interest mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xdoclet-plugins-interest

Reply via email to