2

这是我在 JSF 2.0 和 Glassfish 3.1 上运行良好的代码

 public static Connection connect(){
    try{

        String userName = "Defend";
        String password = "123456";
        String url = "jdbc:sqlserver://localhost;databaseName=ProductDB;";
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        Connection con = DriverManager.getConnection(url,userName,password);
        System.out.println("Connected-DB");
        return con;
    }catch(Exception e){
        System.out.println(e);
        return null;
    }
}

现在,当我将其转移到 Glassfish 4.0 时,会出现以下警告和错误

严重:无法从初始化时间 FacesContext 获取 InjectionProvider。这个容器是否实现了 Mojarra 注入 SPI?
严重:无法调用 @PreDestroy 注释的方法,因为找不到 InjectionProvider。这个容器是否实现了 Mojarra 注入 SPI?
严重:无法从初始化时间 FacesContext 获取 InjectionProvider。这个容器是否实现了 Mojarra 注入 SPI?
严重:无法调用 @PreDestroy 注释的方法,因为找不到 InjectionProvider。这个容器是否实现了 Mojarra 注入 SPI?
严重:无法从初始化时间 FacesContext 获取 InjectionProvider。这个容器是否实现了 Mojarra 注入 SPI?
严重:无法调用 @PreDestroy 注释的方法,因为找不到 InjectionProvider。这个容器是否实现了 Mojarra 注入 SPI?
警告:Web 应用程序 [/Cyber​​D] 注册了 JDBC 驱动程序 [com.microsoft.sqlserver.jdbc.SQLServerDriver],但在 Web 应用程序停止时未能取消注册。为防止内存泄漏,已强制注销 JDBC 驱动程序。
严重:Web 应用程序 [/Cyber​​D] 创建了一个 ThreadLocal,其键类型为 [com.microsoft.sqlserver.jdbc.ActivityCorrelator$1](值 [com.microsoft.sqlserver.jdbc.ActivityCorrelator$1@163a1f8f]),值类型[com.microsoft.sqlserver.jdbc.ActivityId](值 [1a62bb37-9aa5-4b36-8185-354eca0f8da0-3])但在 Web 应用程序停止时无法将其删除。线程将随着时间的推移而更新,以尝试避免可能的内存泄漏。

以及在调用此 connect() 函数时给出 NullPointerException。请指导我

4

0 回答 0