Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Spring';s SimpleNameContextBuilder是否知道在其目录中搜索资源?_Java_Spring_Jndi - Fatal编程技术网

Java 如何使用Spring';s SimpleNameContextBuilder是否知道在其目录中搜索资源?

Java 如何使用Spring';s SimpleNameContextBuilder是否知道在其目录中搜索资源?,java,spring,jndi,Java,Spring,Jndi,使用Spring作为其提供者的应用程序如何知道在其目录中搜索资源?什么将应用程序链接到Spring命名目录?例如,前面的bean如何知道在Spring目录中查找resourcemydb?JndiObjectFactoryBean是否需要一个属性为java.naming.factory.initial的上下文环境来实现接口?当使用SimpleNameingContextBuilder作为JNDI提供程序时,java.naming.factory.initial的值应该是多少?java运行时类充当j

使用Spring作为其提供者的应用程序如何知道在其目录中搜索资源?什么将应用程序链接到Spring命名目录?例如,前面的bean如何知道在Spring目录中查找resource
mydb
JndiObjectFactoryBean
是否需要一个属性为java.naming.factory.initial的上下文环境来实现接口?当使用
SimpleNameingContextBuilder
作为JNDI提供程序时,
java.naming.factory.initial的值应该是多少?

java运行时类充当java应用程序与其命名目录之间的链接。当一个
SimpleNameContextBuilder
时,它将自己安装到
NamingManager
中的静态成员。当应用程序创建一个用于检索JNDI上下文的类时,类
InitialContext
将委托给NamingManager,后者反过来要求
IntialContextFactoryBuilder
(在本例中为
SimpleNameContextBuilder
)创建一个,该类最终创建
InitialContext


JNDObjectFactoryBean
不需要显式上下文环境,因为
SimpleNameingContextBuilder
NamingManager
提供
InitialContextFactory
,而
JNDObjectFactoryBean
使用
NamingManager
检索其资源。因此,在前面的回答中,
JndiObjectFactoryBean
知道如何在Spring命名目录中搜索资源
my db
,因为简单地说,
SimpleNameingContextBuilder
已经在
NamingManager
中成为JNDI提供者,如果要在单元测试中使用模拟InitialContext模拟JNDI树,可以使用SimpleNameingContextBuilder。我在测试的启动方法中实例化了SimpleNameingContextBuildEIT,并成功地创建了内存中的InitialContext。 e、 g.在弹簧试验课上

@BeforeClass
    public static void setupJndi() throws Exception {
    SimpleNamingContextBuilder.emptyActivatedContextBuilder();
    Context context = new InitialContext();
    context.bind("java:comp/env/jms/ConnectionFactory",myJmsConnectionFactory);
   }

好榜样!这说明了我的观点,即当激活
SimpleNameContextBuilder
时,它会将自身安装为默认的JNDI上下文。