I have just discovered what I think might be a bug in DNN regarding the user accounts search.
If you enter a name into the text box and append a space you get a nasty server error like this:
Server Error in '/myPortal' Application.
The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
Requested URL: /myPortal/Admin/UserAccounts/tabid/42/filter/rich /filterproperty/Username/currentpage/1/language/en-GB/Default.aspx
Version Information: Microsoft .NET Framework Version:2.0.50727.3053; ASP.NET Version:2.0.50727.3053
Looking at the Event logs, this is what is logged:
AssemblyVersion: 04.09.03
PortalID: -1
PortalName:
UserID: -1
UserName:
ActiveTabID: -1
ActiveTabName:
RawURL: /Admin/UserAccounts/tabid/19396/filter/rich /filterproperty/Username/currentpage/1/language/en-GB/Default.aspx
AbsoluteURL: /Admin/UserAccounts/tabid/19396/filter/rich%20/filterproperty/Username/currentpage/1/language/en-GB/Default.aspx
AbsoluteURLReferrer: https://xxx.xxxx.com/Admin/UserAccounts/tabid/19396/language/en-GB/Default.aspx
UserAgent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2)
DefaultDataProvider: DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider
ExceptionGUID: f135b6fe-b332-4705-878a-42a9aa364a95
InnerException: Unhandled Error:
FileName:
FileLineNumber: 0
FileColumnNumber: 0
Method: System.Web.CachedPathData.GetConfigPathData
StackTrace:
Message: System.Exception: Unhandled Error: ---> System.Web.HttpException at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetConfigPathData(String configPath) at System.Web.CachedPathData.GetVirtualPathData(VirtualPath virtualPath, Boolean permitPathsOutsideApp) at System.Web.HttpContext.GetFilePathData() at System.Web.HttpContext.GetConfigurationPathData() at System.Web.Configuration.RuntimeConfig.GetConfig(HttpContext context) at System.Web.HttpContext.get_ImpersonationToken() at System.Web.ClientImpersonationContext.Start(HttpContext context, Boolean throwOnError) at System.Web.HttpApplication.ThreadContext.SetImpersonationContext() at System.Web.HttpApplication.ThreadContext.Enter(Boolean setImpersonationContext) at System.Web.HttpApplication.OnThreadEnterPrivate(Boolean setImpersonationContext) at System.Web.HttpApplication.ApplicationStepManager.ResumeSteps(Exception error) --- End of inner exception stack trace ---
Source:
Server Name: XXXXXX
The error is obviously in the RawURL which is invalid due to the space after the username, in this case "rich ".
The error happens when you search on any of the available user detail options , ie. Username, eMail, Prefix, First Name, etc
Has anyone come across this before?
Does this need a patch to the core code to trim the textbox entry before creating the RawURL?