本人为了做数据库备份,现在想用JAVA 每天创建文件夹。我在MYECLIPSE当中把程序编写好测试成功以后,部署到ORACLE
当中,ORACLE 可以正常运行,编译也没有问题。可就是不能创建文件夹。想问问大家这是什么原因,或者有什么地方需要修改。PS:我之前做了一个程序,用来得到生成数据文件大小的。也是用JAVA 的 io包来编写程序。
在ORACLE中部署以后可以得到备份文件大小。也是在MYECLIPSE里面编写完毕后,在oracle中部署。没有问题。所以我很奇怪,为什么在ORACLE当中编写的这个程序在MYECLIPSE当中能创建。ORACLE当中不行。所用的JDK 都是1.4 不存在问题。创建过程create or replace procedure datainputfolder
as language java
name 'OptionFiler.createFolder()';
这是JAVA创建文件方法create or replace and compile java source named optionfiler as
import java.text.SimpleDateFormat;
import java.util.Calendar;public class OptionFiler { public static void createFolder() {
String filePath = "";
java.io.File myFilePath = null;
try {
filePath = "d:/databackup/20100404";
filePath = filePath.toString();
myFilePath = new java.io.File(filePath);
if (!myFilePath.exists()) {
myFilePath.mkdir();
}
}catch (Exception e) {
e.printStackTrace();
}
}
}
当中,ORACLE 可以正常运行,编译也没有问题。可就是不能创建文件夹。想问问大家这是什么原因,或者有什么地方需要修改。PS:我之前做了一个程序,用来得到生成数据文件大小的。也是用JAVA 的 io包来编写程序。
在ORACLE中部署以后可以得到备份文件大小。也是在MYECLIPSE里面编写完毕后,在oracle中部署。没有问题。所以我很奇怪,为什么在ORACLE当中编写的这个程序在MYECLIPSE当中能创建。ORACLE当中不行。所用的JDK 都是1.4 不存在问题。创建过程create or replace procedure datainputfolder
as language java
name 'OptionFiler.createFolder()';
这是JAVA创建文件方法create or replace and compile java source named optionfiler as
import java.text.SimpleDateFormat;
import java.util.Calendar;public class OptionFiler { public static void createFolder() {
String filePath = "";
java.io.File myFilePath = null;
try {
filePath = "d:/databackup/20100404";
filePath = filePath.toString();
myFilePath = new java.io.File(filePath);
if (!myFilePath.exists()) {
myFilePath.mkdir();
}
}catch (Exception e) {
e.printStackTrace();
}
}
}
the Permission (java.io.FilePermission /u02/backups/2010 read) has not been granted to HR. The PL/SQL to grant this is dbms_java.grant_permission( 'HR', 'SYS:java.io.FilePermission', '/u02/backups/2010', 'read' )
the Permission (java.io.FilePermission /u02/backups/2010 write) has not been granted to HR. The PL/SQL to grant this is dbms_java.grant_permission( 'HR', 'SYS:java.io.FilePermission', '/u02/backups/2010', 'write' )
試一下先:
begin
dbms_java.grant_permission( 'HR', 'SYS:java.io.FilePermission', '/u02/backups/2010', 'read' );
dbms_java.grant_permission( 'HR', 'SYS:java.io.FilePermission', '/u02/backups/2010', 'write' );
end;