Помогите чайнику, вопрос следующий, неоходимо получить дату создания файла лежащего в сети средствами Oracle. После того как ознакомился с предметом, понял, что надо делать это с помощью Java класса, других вариантов как я понимаю вроде нет. Попробовал, если файл лежит локально, то это работает, если на выделенном ресурсе в сети, то нет! По крайней мере у меня не получается. Прошу пояснить, возможно ли получить lastModified файла лежащего на сетевом диске? Может это нельзя сделать, и надо искать другие решения. Хотя наверно все ж таки можно, потому что если класс выполнять не в среде оракла, то дату файла в сети все же я могу получить, а вот из оракла почему то не получается.
делаю это следующим образом..
create or replace and compile java source named filedate as
import java.io.*;
import java.sql.*;
public class filedate
{
public static void getFile(java.lang.String path) throws SQLException
{
java.io.File f = new File( path );
if (!f.exists())
{
return;
}
System.out.println(new java.sql.Timestamp(f.lastModified()).toString());
}
}
Далее создаю процедуру, которая в свою очередь использует Java класс
CREATE OR REPLACE PROCEDURE GET_FILE_DATE(FILENAME VARCHAR2)
AS LANGUAGE JAVA
NAME 'filedate.getFile(java.lang.String)';
Предоставляю грант пользователю
exec dbms_java.grant_permission( 'USERNAME', 'SYS:java.io.FilePermission', '\\compname\directory\*', 'read' );
Ну уже дал и такие привилегии как..
grant javasyspriv to USERNAME;
grant javauserpriv to USERNAME;
... может есть какие нить мысли по этому поводу?
С уважением..