Файл не может быть переименован после следующего выполнения кода:
private static final String URL = "jdbc:DBF:/C:\\TEST";
private static final String TABLE = "create table SAMPLE ( "
+ " SM VARCHAR(10), "
+ " PRIM VARCHAR(10) " + ")";
...
Properties properties = new Properties();
properties.setProperty( "charSet", "cp866" );
properties.setProperty( "CODEPAGEID", "66" );
// instantiate it
Class.forName( "com.hxtt.sql.dbf.DBFDriver" ).newInstance();
Connection dbfConn = DriverManager.getConnection( URL, properties );
Statement stmt = dbfConn.createStatement();
stmt.executeUpdate( TABLE );
stmt.close();
PreparedStatement ps = dbfConn.prepareStatement( "INSERT INTO SAMPLE (SM, PRIM) VALUES (?,?);" );
ps.setString( 1, "test11" );
ps.setString( 2, "test12" );
ps.executeUpdate();
ps.close();
dbfConn.close();
new File( "C:\\TESTarj\\SAMPLE.DBF").renameTo( new File( "C:\\TESTarj\\SAMPLE_renamed.DBF" ) );
При удалении ps.executeUpdate();
файл переименовывается. Проблема появилась только в последнюю пятницу 13-го . Раньше все работало нормально. dbf_jdbc, Java, версии tomcat не были изменены . Проблема появилась на нескольких ящиках одновременно. В качестве обходного пути я могу использовать javadbf, но в нашем случае это не лучший выбор.
Есть идеи, что может быть причиной проблемы?