An exception is thrown when a file watch is applied to an embedded resource ---------------------------------------------------------------------------
Key: IBATISNET-37 URL: http://issues.apache.org/jira/browse/IBATISNET-37 Project: iBatis for .NET Type: Bug Versions: DataMapper 1.1 Environment: [assembly: AssemblyVersion("1.5.458")] Reporter: Ron Grabowski As of 4/13/2005, the version of IBatisNet in SVN contains the following code on line 505 of DomSqlMapBuilder.cs: private void ConfigureSqlMap( ) { XmlSerializer serializer = null; XmlNode sqlMapNode = _configScope.NodeContext; _configScope.ErrorContext.Activity = "loading SqlMap "; _configScope.ErrorContext.Resource = sqlMapNode.OuterXml.ToString(); if (_configScope.UseConfigFileWatcher == true) { ConfigWatcherHandler.AddFileToWatch( Resources.GetFileInfo( Resources.GetValueOfNodeResourceUrl(sqlMapNode) ) ); } Resources.GetValueOfNodeResourceUrl does not contain a case for "embedded" (this is correct becuase embedded files do not reside on the file system: public static string GetValueOfNodeResourceUrl(XmlNode node) { string path = null; if (node.Attributes["resource"] != null) { path = Path.Combine(_applicationBase, node.Attributes["resource"].Value); } else if (node.Attributes["url"] != null) { path = node.Attributes["url"].Value; } return path; } In the case of embedded resources, GetValueOfNodeResourceUrl returns null. The null value is then passed up to Resources.GetFileInfo which makes a call to Path.Combine. An exception is throw becuase Path.Combine cannot be sent a null value: [ArgumentNullException: Value cannot be null. Parameter name: path2] System.IO.Path.Combine(String path1, String path2) One solution would be to wrap the call to AddFileToWatch to make sure the sqlMap has a resource or a url attribute: if (sqlMapNode.Attributes["resource"] != null || sqlMapNode.Attributes["url"] != null) { if (_configScope.UseConfigFileWatcher == true) { ConfigWatcherHandler.AddFileToWatch( Resources.GetFileInfo( Resources.GetValueOfNodeResourceUrl(sqlMapNode) ) ); } } -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira