如何在外部Tomcat8

时间:2017-10-13 13:11:20

标签: java spring-boot jndi tomcat8

我有一个spring boot web-application,它作为war文件部署到Tomcat8 Server。

此Tomcat 8 Server通过JNDI提供connectivityService。

如果我在普通的动态网络应用程序中使用此服务,它可以正常使用:

Context ctx = null;
try {
    ctx = new InitialContext();
} catch (NamingException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
}
ConnectivityConfiguration configuration = null;
try {
    configuration = (ConnectivityConfiguration) ctx.lookup("java:comp/env/connectivityConfiguration");
} catch (NamingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

我在web.xml中注册资源:

<resource-ref>
    <res-ref-name>connectivityConfiguration</res-ref-name>
    <res-type>com.sap.core.connectivity.api.configuration.ConnectivityConfiguration</res-type>
  </resource-ref>

但是如果尝试在我的Spring-Boot应用程序中使用它,它会给我这个例外:

javax.naming.NameNotFoundException: Name [connectivityConfiguration] is not bound in this Context. Unable to find [connectivityConfiguration].

在我的春季启动时没有web.xml,那么如何注册资源?

我尝试在属性文件中注册它,但它给了我同样的例外:

spring.datasource.jndi-name=java:comp/env/connectivityConfiguration

我无法找到针对具体案例的解决方案。

我真的很感激一些指导。

问候 Maverin

0 个答案:

没有答案