`
elvis4139
  • 浏览: 148292 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

问题1:WebLogic下Mybatis Error building SqlSession

阅读更多
工程在Tomcat下正常运行,放到weblogic下启动失败。后来发现是weblogic下jar与项目/lib下jar冲突。于是在WEB-INF/下添加weblogic.xml文件,优先使用WEB-INF/lib下jar包。文件内容如下:
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"
	xmlns:j2ee="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">
	<container-descriptor>
		<prefer-web-inf-classes>true</prefer-web-inf-classes>
	</container-descriptor>
</weblogic-web-app>


但添加后,原本可以正常使用的mybatis初始化不了SqlSession。把上面的文件删除就可以启动,加上就报错。异常如下:

<BEA-101162> <User defined listener com.lhd.framework.core.web.listener.StartupListner failed: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRoleBiz': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'testSysUserService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'testSysUserDao' defined in URL [zip:D:/oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_user/FlexPlatform/g6k8k4/war/WEB-INF/lib/_wl_cls_gen.jar!/com/lhd/demo/dao/user/TestSysUserDao.class]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [conf/spring-application.xml]: Invocation of init method failed; nested exception is org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession.
### The error may exist in SQL Mapper Configuration
### Cause: org.apache.ibatis.builder.BuilderException: Error evaluating XPath.  Cause: javax.xml.xpath.XPathExpressionException.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRoleBiz': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'testSysUserService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'testSysUserDao' defined in URL [zip:D:/oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_user/FlexPlatform/g6k8k4/war/WEB-INF/lib/_wl_cls_gen.jar!/com/lhd/demo/dao/user/TestSysUserDao.class]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [conf/spring-application.xml]: Invocation of init method failed; nested exception is org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession.
### The error may exist in SQL Mapper Configuration
### Cause: org.apache.ibatis.builder.BuilderException: Error evaluating XPath.  Cause: javax.xml.xpath.XPathExpressionException
	at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:300)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1064)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
	at com.lhd.framework.core.web.listener.StartupListner.contextInitialized(StartupListner.java:36)
	at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
	at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
	at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
	at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
	at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1868)
	at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3154)
	at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1518)
	at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:484)
	at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
	at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
	at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
	at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
	at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
	at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
	at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
	at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
	at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
	at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:671)
	at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
	at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
	at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:44)
	at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
	at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
	at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
	at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
	at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
	at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:149)
	at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
	at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
	at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
	at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
	at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
	at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
	at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
	at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
	at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
	at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
	at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)


调试源码最后发现XPathPaser类下DocumentBuilderFactory.newInstance在FactoryFinder.find时候返回类型为:org.apache.xerces.jaxp.DocumentBuilderFactory类。而在Weblogic下正常运行项目返回:weblogic.xml.jaxp.RegistryDocumentBuilderFactory类,
删除工程下xercesImpl-2.9.1-1.0.0.jar、xercesImpl-2.9.1-1.0.jar、xml-apis-1.0.b2-1.0.0.jar 三个jar。再启动项目问题解决。

分享到:
评论

相关推荐

    weblogic weblogic weblogic

    1. **Java虚拟机(JVM)**:WebLogic内嵌了JVM,使得Java应用程序能够在其上运行。它支持多线程,内存管理和垃圾回收,为应用提供运行环境。 2. **应用服务器核心服务**:WebLogic提供了诸如HTTP服务器、EJB容器、...

    weblogic守护进程:监控weblogic进程,当发现进程停止时调用重启脚本重启

    1.获得IP地址 2.获取时间字符串 3.按时间和脚本文件名产生带日期的日志 4.根据关键字获取进程号 5.根据关键字获取进程数量 6.当进程数量是0的时候调用重启脚本重启进程 7.写数据库函数发短信 8.输出监控结果 调用...

    weblogic 实用手册+Weblogic

    1. 应用服务器:WebLogic Server作为一个应用服务器,负责运行Java EE应用程序,包括Web应用程序、企业JavaBean(EJB)以及Java服务。 2. 部署:WebLogic支持各种部署方式,如WAR、EAR和JAR文件,可以在线或离线...

    weblogic英文官方文档.rar

    1. **Java Enterprise Edition (Java EE) 支持**:WebLogic 10g基于Java EE 5标准,这包括了Servlet、JSP、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JTA(Java Transaction API)等组件。...

    WebLogic技术全面详解

    1. **J2EE支持**:WebLogic Server是符合J2EE规范的服务器,支持EJB(Enterprise JavaBeans)、Servlet、JSP(JavaServer Pages)、JMS(Java Message Service)等组件,为企业应用提供了标准的开发框架。...

    Oracle Weblogic Server 11gR1 PS2: Administration Essentials

    1. **WebLogic Server安装与配置**: - 安装过程:包括下载、解压、配置环境变量和执行安装脚本。 - 创建域:定义WebLogic Server实例的管理和运行时环境,包括服务器、集群、安全配置等。 - 配置网络监听器:...

    weblogic 学习文档

    1. **应用部署**:WebLogic支持各种Java EE应用程序的部署,如JSP、Servlet、EJB、Web服务等。开发者可以将打包好的WAR、EAR或JAR文件上传到WebLogic服务器进行部署。 2. **集群**:WebLogic支持集群环境,能够提供...

    BEA WebLogic Server_WebLogic Server_app.zip_weblogic

    【标题】"BEA WebLogic Server_WebLogic Server_app.zip_weblogic" 提示我们讨论的主题是 BEA WebLogic Server,这是一款由BEA Systems(后被Oracle公司收购)开发的企业级Java应用程序服务器,主要用于部署和管理...

    Linux RedHat 安装weblogic10.3.5.0

    1. Linux 用户管理:在安装 weblogic 之前,需要创建 weblogic 用户组和用户,使用 useradd 和 groupadd 命令来实现。 知识点:Linux 用户管理、用户组管理、权限管理 2. 目录管理:创建安装目录 /home/weblogic/...

    weblogic的问题处理

    1. **WebLogic Server安装介质与License问题** - 安装介质:可以从BEA官方网站下载,分为带JDK的完整安装包和不带JDK的独立安装包。前者适用于快速部署,后者则需要预先安装对应平台的JDK。 - 支持平台:在安装前...

    weblogic12c 安装包 fmw_12.2.1.2.0_wls_Disk1_1of1.zip

    本安装包`fmw_12.2.1.2.0_wls_Disk1_1of1.zip`包含了WebLogic Server的基础组件和相关工具。 首先,让我们深入了解WebLogic Server的核心概念和特点: 1. **Java EE支持**:WebLogic Server是Java EE(Enterprise ...

    WebLogic简介(一)

    **标题解析:** "WebLogic简介(一)" 这个标题表明了本文将要介绍的是Oracle公司的WebLogic Server的基础知识。WebLogic是企业级Java应用程序服务器,它用于部署和管理基于Java EE(Enterprise Edition)的应用程序...

    weblogic 服务器

    1. **WebLogic Server基础** - **架构**:WebLogic Server基于服务导向架构(SOA),支持多层分布式应用,并提供容器来管理和运行Java EE组件,如Servlet、JSP、EJB等。 - **集群**:WebLogic支持集群功能,能够...

    IT运维宝典之weblogic实战

    1. **WebLogic基础**:WebLogic Server是基于Java的中间件,它提供了运行企业级Java应用程序所需的环境。它支持JMS(Java Message Service)、JDBC(Java Database Connectivity)、JNDI(Java Naming and Directory...

    weblogic密码修改

    (1)停止目标domain服务; (2)将解压附件后文件夹拷贝到目标domain文件夹下,例如:目标domain地址为C:\bea\user_projects\domains\base_domain,那么就拷贝到该文件夹下 (3)更改UPDATE_PWD中的url路径 具体为更改...

    weblogic管理

    1. **安装与配置**:WebLogic Server的安装过程包括下载安装包,运行安装向导,选择合适的安装类型(如开发模式或生产模式)。配置时,需设置域(Domain),这是WebLogic管理的基本单元,包含服务器实例、集群、应用...

    Weblogic 管理

    第1章: WEBLOGIC服务器管理概述 第2章: 启动与终止WEBLOGIC服务器 第3章: 配置WEBLOGIC服务器与集群 第4章: 监控WEBLOGIC域 第5章: 用日志消息管理WEBLOGIC服务器 第6章: 分发应用 第7章: 配置WEBLOGIC服务器...

    腾讯蓝军安全通告:WebLogic远程代码执行漏洞(CVE-2020-14645).pdf

    WebLogic远程代码执行漏洞(CVE-2020-14645)是Oracle WebLogic Server中发现的一个严重的安全漏洞。该漏洞允许攻击者通过T3协议利用漏洞进行远程代码执行,从而控制服务器。这一漏洞被评为CVSS(通用漏洞评分系统)...

    weblogic 8.1pojiebao.zip

    1. **J2EE 1.3支持**:WebLogic 8.1是基于J2EE 1.3标准的,这意味着它支持EJB(Enterprise JavaBeans)、Servlet、JSP(JavaServer Pages)、JMS(Java Message Service)等技术。开发者可以利用这些技术构建可扩展...

    Weblogic资料

    1. **WebLogic Server基本概念** - **J2EE(Java 2 Platform, Enterprise Edition)**:WebLogic是基于J2EE平台的,它提供了运行Java EE应用程序所需的全套服务,如Servlet、JSP、EJB等。 - **应用服务器**:...

Global site tag (gtag.js) - Google Analytics