I upgraded from a 6/13 build to a 6/25 build. I'm now getting compile
errors because the generated interfaces use the incorrect
fully-qualified class name.
For example, if I have a FooBean which uses local interface of BarBean:
package com.acme.foo.ejb;
import com.acme.bar.ejb.*;
public class BarBean ... {
.
.
.
/**
[XDoclet tags snipped]
*/
public BarLocal getBar();
}
I get a warning from XDoclet:
[ejbdoclet] INFO: Some classes refer to other classes that were not
found among the sources or on the class path.
[ejbdoclet] (Perhaps the referred class doesn't exist? Hasn't
been generated yet?)
[ejbdoclet] The referring classes do not import any the fully
qualified names of these classes.
[ejbdoclet] However, since no packages are imported, xjavadoc
has assumed that the referred classes
[ejbdoclet] belong to the same package as the referring class.
The classes are:
.
.
.
Furthermore, I get a compile error in FooLocal.java because the code
generated for the CMR field for Bar is something like:
package com.acme.foo.ejb;
import com.acme.bar.ejb.*;
.
.
.
public com.acme.foo.ejb.BarLocal getBar( ) ;
.
.
.
which is incorrect. The previous version I used generated the method
signature without fully qualifying the return type; e.g.,
public BarLocal getBar( );
letting the '*' import resolve the class.
Why the change? For better or for worse, I prefer to just import '*' to
keep the import list small; now it seems XDoclet is forcing me to
specifically import the generated classes.
Rich
-------------------------------------------------------
Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
_______________________________________________
Xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user