Weblogic 12c数据库连接错误

时间:2018-01-17 05:16:03

标签: java jdbc oracle12c weblogic12c

我刚刚完成了全新的Oracle融合中间件12c安装。这个附带了新版本的Weblogic 12.2.1.3.0。每当我尝试创建新的JDBC连接时,我都会收到以下错误。

<BEA-240003> <Administration Console encountered the following error: java.sql.SQLException: Could not establish a connection because of java.lang.IllegalArgumentException: ONS configuration failed
            at weblogic.jdbc.common.internal.DataSourceUtil.testConnection0(DataSourceUtil.java:423)
            at weblogic.jdbc.common.internal.DataSourceUtil.access$000(DataSourceUtil.java:24)
            at weblogic.jdbc.common.internal.DataSourceUtil$1.run(DataSourceUtil.java:285)
            at java.security.AccessController.doPrivileged(Native Method)
            at weblogic.jdbc.common.internal.DataSourceUtil.testConnection(DataSourceUtil.java:282)
            at com.bea.console.utils.jdbc.JDBCUtils.testConnection(JDBCUtils.java:937)
            at com.bea.console.actions.jdbc.datasources.creategridlinkdatasource.CreateGridLinkDataSource.testJDBCConnection(CreateGridLinkDataSource.java:615)
            at com.bea.console.actions.jdbc.datasources.creategridlinkdatasource.CreateGridLinkDataSource.testRACConnectionConfiguration(CreateGridLinkDataSource.java:437)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:870)
            at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:809)
            at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:478)
            at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:306)
            at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:336)
            at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:52)
            at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
            at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:97)
            at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2044)
            at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:64)
            at org.apache.beehive.netui.pageflow.interceptor.action.ActionInterceptor.wrapAction(ActionInterceptor.java:184)
            at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.invoke(ActionInterceptors.java:50)
            at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:58)
            at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:87)
            at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2116)
            at com.bea.console.internal.ConsolePageFlowRequestProcessor.processActionPerform(ConsolePageFlowRequestProcessor.java:265)
            at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
            at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:556)
            at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:853)
            at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:631)
            at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:158)
            at com.bea.console.internal.ConsoleActionServlet.process(ConsoleActionServlet.java:262)
            at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
            at com.bea.console.internal.ConsoleActionServlet.doGet(ConsoleActionServlet.java:134)
            at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1199)
            at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1129)
            at com.bea.portlet.adapter.scopedcontent.framework.internal.PageFlowUtilsBeehiveDelegate.strutsLookupInternal(PageFlowUtilsBeehiveDelegate.java:43)
            at com.bea.portlet.adapter.scopedcontent.framework.PageFlowUtils.strutsLookup(PageFlowUtils.java:108)
            at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:707)
            at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:141)
            at com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:108)
            at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:111)
            at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:181)
            at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:167)
            at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:225)
            at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:180)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:324)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
            at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:130)
            at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:399)
            at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361)
            at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352)
            at com.bea.netuix.nf.Lifecycle.runInbound(Lifecycle.java:184)
            at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:159)
            at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java:465)
            at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:291)
            at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:219)
            at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:275)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
            at com.bea.console.utils.MBeanUtilsInitSingleFileServlet.service(MBeanUtilsInitSingleFileServlet.java:64)
            at weblogic.servlet.AsyncInitServlet.service(AsyncInitServlet.java:125)
            at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:286)
            at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:260)
            at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:137)
            at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:350)
            at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
            at com.bea.console.internal.ParamFilter.doFilter(ParamFilter.java:38)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
            at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:32)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
            at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3701)
            at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3667)
            at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:326)
            at weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197)
            at weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203)
            at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71)
            at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2443)
            at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2291)
            at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2269)
            at weblogic.servlet.internal.ServletRequestImpl.runInternal(ServletRequestImpl.java:1703)
            at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1663)
            at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:272)
            at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352)
            at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337)
            at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)
            at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
            at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:644)
            at weblogic.work.ExecuteThread.execute(ExecuteThread.java:415)
            at weblogic.work.ExecuteThread.run(ExecuteThread.java:355)

我现在已经把它撞到了一段时间,谷歌没有多大帮助。任何帮助都将非常感激。

由于

3 个答案:

答案 0 :(得分:5)

我做了一些挖掘并找到了解决方案。问题的原因是由于某种原因,在服务器配置中隐式启用了FAN服务。我通过将以下行添加到 setDomainEnv.sh 文件中的 JAVA_OPTIONS 来实现了目的。

-Doracle.jdbc.fanEnabled=false

现在一切都像魅力一样。

答案 1 :(得分:1)

该错误表示无法设置设置Oracle Notification Service(ONS)订阅。 如果您明确指定了ONS配置,请检查语法是否正确。它记录在案 https://docs.oracle.com/middleware/12213/wls/JDBCA/gridlink_datasources.htm#JDBCA461 或者,您可以将ONS字符串留空,自动ONS将接管。

答案 2 :(得分:1)

正如有人指出的那样,我们需要在setDomainEnv文件中添加-Doracle.jdbc.fanEnabled=false(对于UNIX是.sh,对于Windows是.cmd)。

对于Windows,将位于路径“ YOUR_USER \ AppData \ Roaming \ JDeveloper \ system12.2.1.3 \ DefaultDomain \ bin <的setDomainEnv.cmd文件中的set JAVA_OPTIONS=%JAVA_OPTIONS%替换为最后set JAVA_OPTIONS=%JAVA_OPTIONS% -Doracle.jdbc.fanEnabled=false。 / p>