Christopher Oliver <[EMAIL PROTECTED]> writes:
>
> It appears the source resolver used by the compiling class loader was
> able to resolve a Source for one of your Java classes but
> Source.getInputStream() returned null. Since clearly you
> weren't using
> the compiling class loader previously, this seems odd. I'm not sure
> what's causing this. Can you provide more information? What class was
> being loaded when this occurred? Can you set a breakpoint in
> CompilingClassLoader and find out what type of Source was returned?
Hmm, interesting. When I deploy our EAR expanded I don't get this
error, but instead something else goes wrong in our business logic
classes that I haven't had a chance to track down yet. If the problems
are related then the flowscript causing the problem is:
function logon( collection, screen ) // Handle logon
screen
{
var logonOk = false;
while ( !logonOk )
{
cocoon.sendPageAndWait( "run/_logon/" + screen );
var handler =
Packages.org.stjude.ct.ui.logon.LogonAction();
logonOk = handler.logon( cocoon );
}
_redirectTo( "frameset.frameset" );
}
The class being instantiated here is and old Cocoon action that has been
modified to take a Cocoon object...
>
> Assuming that the above _is_ what's happening, a possible fix
> might be
> to modify CompilingClassLoader as follows:
>
> class SourceReaderFactory implements JavaSourceReaderFactory {
> public JavaSourceReader
> getSourceReader(final String className)
> throws IOException {
> Source src = getSource(className);
> if (src == null) return null;
> try {
> InputStream is = src.getInputStream();
> if (is == null) {
> return null;
> }
> ...