0

我遇到了一个有趣的错误。我在 JDeveloper 中创建了一个 PL/SQL Web 服务。我可以在 JDeveloper 中运行的集成 WebLogic Server 上成功运行/部署它,但无法将 Web 服务部署到实时 WebLogic 服务器。

当我尝试部署到实时 weblogic 服务器时出现以下错误(此 weblogic 服务器安装了 JRF、JRF Webservices 和 JAX-RPC 运行时):

“原因:java.sql.SQLException:查找 java:comp/env/jdbc/local_orcl_hrDS 时出错”。

JDeveloper 中的 JDBC 连接名称是 local_orcl_hr,我什至创建了一个带有错误中指定的完整路径的 JDBC 连接名称和一个名称为“local_orcl_hrDS”的 JDBC 连接。我犯了同样的错误。该错误告诉我它在服务器上找不到数据源,但它存在。在 WebLogic 上,所有更改都已激活,并且数据库连接测试成功。

有没有人有任何想法?

谢谢!

完整跟踪:

java.sql.SQLException:查找错误:在 local_orcl_hr.DeptService1User.(DeptService1User.java:11) 的 local_orcl_hr.DeptService1Base.(DeptService1Base.java:33) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 在 sun.reflect .NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:513) 在 java.lang.Class。 newInstance0(Class.java:355) at java.lang.Class.newInstance(Class.java:308) at weblogic.wsee.component.pojo.JavaClassComponent.createTarget(JavaClassComponent.java:49) at weblogic.wsee.component.pojo .JavaClassComponent.(JavaClassComponent.java:40) 在 weblogic.wsee.ws。WsBuilder.setComponent(WsBuilder.java:1907) 在 weblogic.wsee.ws.WsBuilder.buildService(WsBuilder.java:215) 在 weblogic.wsee.ws.WsFactory.createServerService(WsFactory.java:54) 在 weblogic.wsee.deploy .ServletDeployInfo.createWsService(ServletDeployInfo.java:91) 在 weblogic.wsee.deploy.DeployInfo.createWsPort(DeployInfo.java:372) 在 weblogic.wsee.server.servlet.BaseWSServlet.init(BaseWSServlet.java:83) 在 javax。 servlet.GenericServlet.init(GenericServlet.java:241) 在 weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283) 在 weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)在 weblogic.servlet.internal.StubSecurityHelper 的 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)。createServlet(StubSecurityHelper.java:64) 在 weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58) 在 weblogic.servlet.internal.StubLifecycleHelper.(StubLifecycleHelper.java:48) 在 weblogic.servlet.internal.ServletStubImpl。 prepareServlet(ServletStubImpl.java:539) 在 weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1976) 在 weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1950) 在 weblogic.servlet.internal.WebAppServletContext .preloadResources(WebAppServletContext.java:1869) 在 weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3126) 在 weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1512) 在 weblogic.servlet.internal。WebAppModule.start(WebAppModule.java:486) 在 weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425) 在 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41) 在 weblogic。 application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) 在 weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200) 在 weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker. java:247) 在 weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425) 在 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41) 在 weblogic.application.internal.flow。 Weblogic.application.internal.flow 上的 ModuleStateDriver.start(ModuleStateDriver.java:119)。StartModulesFlow.activate(StartModulesFlow.java:27) 在 weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:1267) 在 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41) 在 weblogic.application。 internal.BaseDeployment.activate(BaseDeployment.java:409) 在 weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:43) 在 weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161) 在 weblogic.deploy .internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79) 在 weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569) 在 weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment (激活操作。java:150) 在 weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116) 在 weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323) 在 weblogic.deploy .internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844) 在 weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253) 在 weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java :440) 在 weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163) 在 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195) 在 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68) 在 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68) 在 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13) .SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:173)SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:173)SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

[02:47:28 PM] 原因:java.sql.SQLException:查找错误:[02:47:28 PM] 有关详细信息,请参阅服务器日志或服务器控制台。

4

1 回答 1

0

两个问题。

  1. 在我的 JDBC 配置中,我需要“jcbc/local_orcl_hr”作为我的 jndi 名称
  2. 完成上述更改后,部署仍然失败。但是部署成功到了服务器,所以我进入了 WebLogic 管理员 > 部署 > 选择了我的部署 > 单击更新。然后我从使用的war文件重新部署,一切正常!
于 2011-01-10T15:00:37.027 回答