try {
  InitialContext ctx=new InitialContext();
}
catch (Exception e) {
  System.out.println(e);
}

解决方案 »

  1.   

    需要捕获异常NamingException和SQLException
      

  2.   

    NamingException 你这里用了 默认的JNDI提供者 应该显式传递它 用HASHTABLE 或者 属性对象
      

  3.   

    错误信息里说的很明白:unreported exception javax.naming.NamingException; 
    must be caught or declared to be thrown
      

  4.   

    public ConPool()
    {
    InitialContext ctx=new InitialContext();
    ds=(DataSource)ctx.lookup("java:comp/env/jdbc/mssql");
    }
    这个方法要不就throws一个异常,否则的话你就要在方法中try...catch
    因为有一些调用时会发生异常,你必须有相应的捕获处理(try...catch)或者将他上抛(throws)
      

  5.   

    must be caught or declared to be thrown
    就是说要你声明抛出或者捕获异常啊!!
      

  6.   

    加上 try catch块来捕捉异常
      

  7.   

    谢谢各位,问题已经解决了。
    我加上try catch以后,编译通过,程序正常运行。
    谢谢了:)