[Mono-devel-list] mod_mono, Inherits option in Page directive, DLL caching

Sebastian Nowozin nowozin at gmail.com
Mon Mar 28 03:52:49 EST 2005


Hello everybody,

I use mono 1.0.5 and the appropriate mod-mono-server, mod_mono and 
Apache 1.3 on Debian and also use XSP for quick testing of my ASP.NET 
application.

Under XSP everything works, using two kind of .aspx files:
   a) simple .aspx files with <script>'ed code, and
   b) .aspx files which use the Inherits="MyNamespace.MyClass" option in 
the Page directive.

The code for the webroot/page.aspx is stored in 
webroot/bin/mynamespace.dll and the DLL is loaded from within the 
webroot/web.config file, namely by a section:

         <system.web>
                 <globalization requestEncoding="UTF-8" 
responseEncoding="UTF-8" />
                 <assemblies>
                         <add assembly="mynamespace.dll" />
                         <add assembly="*" />
                 </assemblies>
         </system.web>
         <runtime>
         <assemblyBinding>
             <probing privatePath="/home/testasp/webroot/bin" />
         </assemblyBinding>
         </runtime>

Under mod_mono the simple .aspx files do work, too.  The Inherits' files 
have problems producing this error 500 message:

> Server error in '/' application
> Description: Error processing request.
> 
> Error Message: HTTP 500.
> 
> Stack Trace:
> 
> System.ArgumentException: Directory does not exists
> Parameter name: value
> in <0x000e4> System.IO.FileSystemWatcher:set_Path (string)
> in <0x00056> (wrapper remoting-invoke-with-check) System.IO.FileSystemWatcher:set_Path (string)
> in <0x00055> System.Web.Caching.CacheDependency:CreateWatcher (string)
> in <0x003c7> System.Web.Caching.CacheDependency:.ctor (string[],string[],System.Web.Caching.CacheDependency,System.DateTime)
> in <0x0002b> System.Web.Caching.CacheDependency:.ctor (string[])
> in <0x0021e> System.Web.Compilation.CachingCompiler:Compile (System.Web.Compilation.BaseCompiler)
> in <0x002ea> System.Web.Compilation.BaseCompiler:GetCompiledType ()
> in <0x00251> System.Web.Compilation.AspGenerator:GetCompiledType ()
> in <0x00036> System.Web.UI.PageParser:CompileIntoType ()
> in <0x00018> System.Web.UI.TemplateControlParser:GetCompiledInstance ()
> in <0x00050> System.Web.UI.PageParser:GetCompiledPageInstance (string,string,System.Web.HttpContext)
> in <0x00011> System.Web.UI.PageHandlerFactory:GetHandler (System.Web.HttpContext,string,string,string)
> in <0x0034e> System.Web.HttpApplication:CreateHttpHandler (System.Web.HttpContext,string,string,string)
> in <0x0011f> CreateHandlerState:Execute ()
> in <0x00084> StateMachine:ExecuteState (System.Web.HttpApplication/IStateHandler,bool&)

Throughout testing I did not (because I cannot, not my server) restart 
apache nor mod_mono, but did update the underlying .aspx and .dll files. 
  I think this must have confused mod_mono (or it did not recognize the 
change to the .dll file).

I found a mail by Gonzalo in which he says this bug (not recognizing 
changes of the DLL) is already in Bugzilla:
http://lists.ximian.com/archives/public/mono-list/2004-August/022715.html

But I was unable to find this bug in Bugzilla, does anyone have a link? 
(Especially I would like to know if its fixed in 1.0.5 already and my 
problem has some other cause).

Searching brought up the same issues in this old postings:
http://lists.ximian.com/archives/public/mono-list/2004-June/021327.html
http://lists.ximian.com/archives/public/mono-devel-list/2004-July/007181.html

Especially in the first link of the two it mentions "shadowcaching" of 
DLL files.  Is this implemented in mod_mono and can it be enabled somehow?


Thanks,
Sebastian



More information about the Mono-devel-list mailing list