builder.ConfigureAndWatch( "dao.config ",   handler); 
吓猜一个, 是不是handler is nothing

解决方案 »

  1.   


    代吗如下
    public class ServiceConfig
        {
            static private object _synRoot = new Object();
            static private ServiceConfig _instance;        private IDaoManager _daoManager = null;        /// <summary>
            /// Remove public constructor. prevent instantiation.
            /// </summary>
            private ServiceConfig() { }        static public ServiceConfig GetInstance()
            {
                if (_instance == null)
                {
                    lock (_synRoot)
                    {
                        if (_instance == null)
                        {
                            ConfigureHandler handler = new ConfigureHandler(ServiceConfig.Reset);                        DomDaoManagerBuilder builder = new DomDaoManagerBuilder();
                            builder.ConfigureAndWatch("dao.config", handler);                        _instance = new ServiceConfig();
                            // TODO:默认为sqlMapDao指定的Context, 要提供对多个Context的支持.
                            _instance._daoManager = IBatisNet.DataAccess.DaoManager.GetInstance("SqlMapDao");
                        }
                    }
                }
                return _instance;
            }
      

  2.   

                
    我在页面上是这样调用的,但是第一行久出错了
    CatalogAction action2 = new CatalogAction(Context);
                IList tt2 = (IList)action2.GetSearchList(searchTxt);            this.GridView1.DataSource = tt2;
                this.GridView1.DataBind();
      

  3.   

    builder.ConfigureAndWatch(   "dao.config",       handler);   
    再猜一个,   是不是"dao.config"没结尾空格
      

  4.   

    好像不是,我拿Npetshop弄就可以,自己的项目里面就不行
      

  5.   

    根据使用ibatis两年的经验
    错误不在你的代码,你的代码应该是从另外的成熟的ibatis结构中拷贝出来的
    错误应该是出现在你的配置文件中
    包括maps文件和dao.config文件[ConfigurationException:  
    - The error occurred while loading SqlMap. 
    - The error occurred in  <sqlMap resource="Maps/Hb001Family.xml" xmlns="http://ibatis.apache.org/dataMapper" /> .] 
       IBatisNet.DataMapper.Configuration.DomSqlMapBuilder.Build(XmlDocument document, DataSource dataSource, Boolean useConfigFileWatcher, Boolean isCallFromDao) +287 
       IBatisNet.DataMapper.Configuration.DomSqlMapBuilder.Build(XmlDocument document, DataSource dataSource, Boolean useConfigFileWatcher, NameValueCollection properties) +45 
       IBatisNet.DataAccess.DaoSessionHandlers.SqlMapDaoSessionHandler.Configure(NameValueCollection properties, IDictionary resources) +528 [ConfigurationException: DaoManager could not configure SqlMapDaoSessionHandler.Cause:  
    - The error occurred while loading SqlMap. 
    - The error occurred in  <sqlMap resource="Maps/Hb001Family.xml" xmlns="http://ibatis.apache.org/dataMapper" /> .] 
       IBatisNet.DataAccess.DaoSessionHandlers.SqlMapDaoSessionHandler.Configure(NameValueCollection properties, IDictionary resources) +610 
       IBatisNet.DataAccess.Configuration.DomDaoManagerBuilder.GetContexts(ConfigurationScope configurationScope) +1277 
       IBatisNet.DataAccess.Configuration.DomDaoManagerBuilder.BuildDaoManagers(XmlDocument document, Boolean useConfigFileWatcher) +163 仔细看这两段中加黑的部分
    检查你的这两个文件
    因为sqlmap加载失败,因此导致
    ConfigureHandler handler = new ConfigureHandler(ServiceConfig.Reset); 
    中的handler为null,当然就报 未将对象引用设置到对象的实例 错误了
      

  6.   

    一般是你的配置文件的问题,注重检查maps下的映射文件