无法获取初始上下文或DataSource:javax.naming.NameNotFoundException

问题描述 投票:0回答:1

我试图创建Web逻辑自定义身份验证提供程序。我创建了它并且运行良好。而当自定义身份验证正在初始化时,它将显示此异常。但在那之后它运作得很好。根据我的观点,weblogic首先尝试在服务器启动时以weblogic用户身份登录。那时发生了这个错误。下次,它不会显示任何错误。

这是尝试以weblogic用户身份登录时的错误

userName    = weblogic
Data set name is = xxxDataSource
eeeeeeeeeeeeeeeeeeeeeee javax.naming.InitialContext@1ac745d4
Data set name is ######### = xxxDataSource
<Mar 6, 2018 6:27:47 AM CET> <Error> <Security.Authentication> <BEA-
000000> <Failed to get initial context or DataSource: 
javax.naming.NameNotFoundException: Unable to resolve' xxxDataSource'. Resolved ''; remaining name 'xxxDataSource'

这是在服务器启动时尝试登录的用户

enter image description here

你的帮助将非常感激。

java weblogic12c custom-authentication
1个回答
0
投票

如果未找到DataSource名称,那么这意味着它未在您的server.xmlweb.xml中声明。你应该有这样的东西:

<Context>
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
           maxTotal="100" maxIdle="30" maxWaitMillis="10000"
           username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
           url="jdbc:mysql://localhost:3306/javatest"/>

</Context>

和/或

<web-app>
<resource-ref>
  <description>DB Connection</description>
  <res-ref-name>jdbc/TestDB</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
</resource-ref>
</web-app>

检查您的身份验证提供程序文档,了解要放入server.xml和/或web.xml的内容。

© www.soinside.com 2019 - 2024. All rights reserved.