当前位置: 首页 > 面试题库 >

如何访问Weblogic 10.3.6中定义的JNDI数据源

萧胜
2023-03-14
问题内容

我已经使用Weblogic控制台创建了JNDI数据源,但无法从Web应用程序访问该对象。以下是详细信息

在weblogic 10.3.6中,我为数据源指定了JNDI名称: jdbc/mydb

为了从Web应用程序获得数据库连接,我已经在Web应用程序中编写了以下代码:

Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/mydb");
jndiConnection = ds.getConnection();

之前我使用Tomcat作为服务器,当我在文件中配置资源详细信息时能够获得数据库连接tomcat/conf/server.xml,但是当我开始使用weblogic服务器时,出现以下错误:

Cannot establish DB connection to JNDI:java:/comp/env/jdbc/mydb While trying to look up /comp/env/jdbc/mydb in /app/webapp/sample.war/1811641702. caused by: javax.naming.NameNotFoundException: While trying to look up /comp/env/jdbc/mydb in /app/webapp/sample.war/1811641702.; remaining name '/comp/env/jdbc/mydb'

我尝试了此链接中提到的选项:如何在WebLogic上查找JNDI资源?但我仍然面临问题。

请让我知道我在哪里做错了,访问JNDI对象的过程是什么。


问题答案:

引用该帖子后:Tomcat vs Weblogic JNDI查找我已经修改了我的代码。

在Web应用程序的Java程序中使用以下代码解决了我的问题:

Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("jdbc/mydb");
jndiConnection = ds.getConnection();

同样在weblogic控制台中,我已将JNDI对象添加到部署Web应用程序的管理服务器(在“服务器”选项下)。



 类似资料:
  • 为了从web应用程序获取DB连接,我在web应用程序中编写了以下代码: 早些时候,我使用Tomcat作为服务器,当我在文件中配置资源详细信息时,我能够获得DB连接,但当我使用开始使用weblogic server时,我得到以下错误: 我已经尝试了这个链接中提到的选项:如何在WebLogic上查找JNDI资源?但我仍然面临着问题。 请让我知道我在哪里做错误,访问JNDI对象的过程是什么。

  • 我正在评估Quakus是否可以替代Tomcat环境。我理解我正在尝试做的工作所面临的挑战,但我首先需要验证我现有的遗留JSP应用程序是否可以使用Quarkus工作。我正在使用quarkus。undertow作为我的servlet容器。 到目前为止,我已经克服了几个障碍。我现在遇到的问题是如何使用我的数据源。 目前,我们的数据源在Tomcat的server.xmlGlobalNamingResour

  • 我试图在独立环境中使用JBOSS EAP 6.4上的数据源运行一个应用程序。xml文件我的数据源定义良好。当我尝试一个: 我只获得了TransactionManager,而我期望我的数据源也在standalone.xml中命名为JNDI-name = " Java:JBoss/data sources/Oracle ds "。 为什么我的数据源没有在 jndi 环境中定义?我是否缺少某些配置?

  • 问题内容: 我有以下Java代码- 我得到的错误是 如何正确访问注释字段? 问题答案: 默认情况下,注释在运行时不可用。您需要添加到注释定义以使其可用于运行时处理。例如: 在实践中,还应在实际尝试从字段中删除注释之前,检查该字段是否确实具有给定的注释。 另外,指定注释所属的元素类型也是一种好习惯。因此,您的示例将是:

  • 问题内容: 在某些背景下,我尝试使用grpc auth来为我定义的某些服务提供安全性。 让我们看看我是否可以问这是一种有意义的方法。对于我的python代码,实现服务器端代码非常容易。 因此,您可以说,我很容易从“上下文”中获取元数据。对我而言,更难的是在Java中执行相同的操作。 我承认我的问题来自几个方向。 1)我不太精通Java 2)为了调试类并查看可用的方法,我大量使用了python的“

  • 简单地说。我希望有一个oracle jndi数据源可用于带有连接池的webapp。我想maven安装该项目,然后手动将其部署到jetty hightide 7。xx服务器并运行。我在WEB-INF文件夹中放置了一个jetty env文件,如下所示。 这是我的dataSource bean... Maven安装很好,但当我部署到jetty服务器并启动它时,我会遇到以下错误。 我已经在jetty pl