与Tomcat不同,weblogic创建多个服务器(通常是一台AdminServer,再加上至少一台)。必须为每个服务器分配数据源。在集群环境中,您需要将数据源应用于集群服务器。
登录到Weblogic控制台,并检查数据源JNDI名称(不要将其与数据源名称混淆,这纯粹是为了使控制台列表看起来很漂亮)。JNDI名称应类似于jdbc / MyDB检查数据源的“ 选项卡,并确保将其应用到要将Web应用程序部署到的服务器/群集。重新启动Weblogic。我发现数据源有时有时需要在应用程序代码可见之前使用它。将您的Web应用程序部署到正确的服务器/群集。您应该正常连接到数据源。我总是使用Spring JNDI bean,因此我无法提供确切的语法。@Maas的建议看起来不错。
解决方法从Tomcat迁移到Weblogic 12.1.3时,遇到了此异常,javax.naming.namenotfoundexception whiletrying to look up 然后尝试了以下操作: NameNotFoundException:仅当从EclipseKepler发布而不是Indigo 以及如何访问 Weblogic10.3中定义的JNDI数据源时,才尝试查找“ jdbc”。6
我现在得到标题错误
我的查询代码
ds = (DataSource) initContext.lookup('MyDB');
在weblogic JNDI名称中
MyDB
有什么帮助吗?