c# - ServiceStack upgrade from V3 to V4 results in successful build but 500 at runtime -
i got licensing servicestack v4 , went through whole upgrade process v3. seems build fine, reason i'm getting 500 error @ runtime. have ensured correct httpmodule referenced in web.config due rename. referencing servicestack.httphandlerfactory. i've checked iis express logs , aren't helpful. seems failed in beginrequest.
i can't seem logging or debug information using log4net. see information ravendb drop log, nothing servicestack itself. seems fail silently 500.
all know sure if take servicestack license appsetting out expected licensing exception. if have license in , gives me generic 500.
this comes out in log file
2014-06-03 15:08:58,991 [1] debug raven.client.document.sessionoperations.queryoperation [(null)] - executing query 'servicename:practicemanagement' on index 'dynamic/apiclientauths' in 'https://ravendb.someurl.com (db: db);db' 2014-06-03 15:08:59,144 [1] debug raven.client.document.sessionoperations.queryoperation [(null)] - query returned 1/1 results 2014-06-03 15:08:59,168 [1] debug raven.client.document.sessionoperations.queryoperation [(null)] - executing query 'servicename:practicemanagement' on index 'dynamic/apiclientauths' in 'https://ravendb.someurl.com (db: db);db' 2014-06-03 15:08:59,251 [1] debug raven.client.document.sessionoperations.queryoperation [(null)] - query returned 1/1 results
here call configure
public override void configure(container container) { //set json web services return idiomatic json camelcase properties jsconfig.emitcamelcasenames = true; setconfig(new hostconfig { debugmode = true }); //logging logmanager.logfactory = new log4netfactory(true); //using in-memory cache container.register<icacheclient>(new memorycacheclient()); //configure sql database configuresqldb(container); configurecrosssystemproviders(container); //configure ravendb this.configureravendb("ravendb"); //enable apikeys this.configureapi("practicemanagement"); //enable validation this.configurevalidation(typeof(getrecipes).assembly); //enable authentication configureauth(container); //enable exception management this.configureelmah(); //configure cde data configurecdeproviders(container); }
here code web.config
<system.web> <compilation debug="true"> <assemblies> <add assembly="system.data.entity, version=4.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089" /> </assemblies> </compilation> <httpmodules> <add name="errorlog" type="elmah.errorlogmodule, elmah" /> <add name="errormail" type="elmah.errormailmodule, elmah" /> <add name="errorfilter" type="elmah.errorfiltermodule, elmah" /> </httpmodules> <httphandlers> <add path="*" type="servicestack.httphandlerfactory, servicestack" verb="*" /> </httphandlers> </system.web>
now webserver tag
<system.webserver> <modules runallmanagedmodulesforallrequests="true"> <add name="errorlog" type="elmah.errorlogmodule, elmah" precondition="managedhandler" /> <add name="errormail" type="elmah.errormailmodule, elmah" precondition="managedhandler" /> <add name="errorfilter" type="elmah.errorfiltermodule, elmah" precondition="managedhandler" /> </modules> <validation validateintegratedmodeconfiguration="false" /> <handlers> <add path="*" name="servicestack.factory" type="servicestack.httphandlerfactory, servicestack" verb="*" precondition="integratedmode" resourcetype="unspecified" allowpathinfo="true" /> </handlers> </system.webserver>
i found problem. in configureapi method call , had funq resolution wasn't happening properly. still don't know problem dependency resolution was, no longer have vague http 500 failure happening.
Comments
Post a Comment