在尝试调用SQLite驱动程序时不断获得“IOException:Access Denied”

时间:2017-10-17 20:31:49

标签: java tomcat jdbc liferay

我正在尝试将Liferay 7与Tomcat捆绑在一起,以便访问SQLite数据库以进行测试。该数据库是一个空的“test.db”文件,位于C:/ Eclipse,该文件夹对系统帐户“所有帐户”具有绝对控制权。所以Windows权限应该不是问题。

此代码位于我的portlet的render方法中,以某种方式抛出IOException:

@Override
public void render(RenderRequest arg0, RenderResponse arg1) throws IOException, PortletException {
    try {
        Conector.test();
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        System.out.println("ERROR SQLITE: "+e.getMessage());
    }
    super.render(arg0, arg1);
}

Ť

执行任务的代码只是尝试访问.db文件,创建一些表并执行单个查询,只是为了看到一切都已连接,所以我能够做更多的事情,是这样的:

 public static void test() throws ClassNotFoundException
  {
      /**
         * Connect to a sample database
         */

            Connection conn = null;
            try {
                Class.forName("org.sqlite.JDBC");
                // db parameters
                String url = "jdbc:sqlite:C:\\Eclipse\\test.db";
                // create a connection to the database
                conn = DriverManager.getConnection(url);

                System.out.println("Connection to SQLite has been established.");

            } catch (SQLException e) {
                System.out.println(e.getMessage());
            } finally {
                try {
                    if (conn != null) {
                        conn.close();
                    }
                } catch (SQLException ex) {
                    System.out.println("Internal sqlite error: "+ex.getMessage());
                }
            }

  }

但不知何故,我一直收到这个错误(西班牙语模式):

  

java.io.IOException:Acceso denegado at   java.io.WinNTFileSystem.createFileExclusively(Native Method)at   java.io.File.createNewFile(File.java:1012)at   com.db.Conector.test(Conector.java:24)at   com.test.PortletMVC.render(PortletMVC.java:25)at   com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:103)   (许多,更多的线。典型的Liferay)。

发生了什么事?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您需要为其提供用户名和密码。使用DriverManager.getConnection(url,YOUR_USERNAME,YOUR_PASSWORD)