我正在尝试使用JNDI在使用'RefFSContextFactory'时创建新绑定。所以我想要做的是使用JNDI创建一个新文件。但是,此代码抛出异常javax.naming.OperationNotSupportedException:只能绑定References或Referenceable对象。
import javax.naming.Context;
import javax.naming.InitialContext;
import java.io.IOException;
import java.util.Hashtable;
public class Main2 {
public static void main(String [] rgstring) throws IOException {
try {
Hashtable<String,String> hashtableEnvironment = new Hashtable<String,String>();
hashtableEnvironment.put(
Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.fscontext.RefFSContextFactory"
);
hashtableEnvironment.put(
Context.PROVIDER_URL,
"file:///TestingApps/"
);
Context context = new InitialContext(hashtableEnvironment);
//File f=new File("C:\\TestingApps\\test");
//f.createNewFile();
context.bind("test", null);
context.close();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
}
使用JNDI可以吗?绑定对象应该是File的对象吗?不能为null?
答案 0 :(得分:0)
所以我想做的是创造一个新的 使用JNDI的文件。
(a)为什么? f.createNewFile()就是这么做的。
(b)你不能。
(c)这不是JNDI的用途,也不是文件系统提供者。它用于在文件或文件中记录的绑定。
正如你也被告知on the Oracle forums。