Luca Morandini wrote:
Today I tried to switch from 2.1.2 to 2.1.3.
After the compilation and installation, I fired up an application of mine (which worked perfectly under 2.1.2)... which seemed to work still fine, but... when I re-loaded the same URI, Cocoon gave me an "Internal server error" and the following on error.log:
I get the same error (upgraded from 2.1.2 to 2.1.4-dev). Did you already find a solution?
It seems to be related to the XSPGenerator and the input.xsl logicsheet.
OK, I narrowed down the problem. The XSPGenerator object is not re-created when the page is requested the second time. So, the XSPModuleHelper isn't re-initialized. Because its input modules were released at the end of the previous generate() execution, the inputModules map is null and the exception is thrown.
input.xsl logicsheet:
<xsp:init-page>
// create module cache
[when the page is requested the second time, this is not executed because the module helper is not null]
if (this._xsp_module_helper == null) {
this._xsp_module_helper = new XSPModuleHelper();
this._xsp_module_helper.setup(manager);
}</xsp:init-page>
<xsp:exit-page>
// clear module cache
if (this._xsp_module_helper != null) this._xsp_module_helper.releaseAll();
</xsp:exit-page>
Why is the generator object not re-created?
Thanks in advance!
-- Andreas
