Java ibatis配置问题导致Myeclipse启动web项目失败

简介:     最近,调试一web项目,由于人员流动或时间问题出现web项目开发中Java ibatis配置问题导致Myeclipse启动web项目失败。     Myeclipse中使用其自带的tomcat进行run指定的web工程报错,报错信息如下(出于保密及问题说明,...
    最近,调试一web项目,由于人员流动或时间问题出现web项目开发中Java ibatis配置问题导致Myeclipse启动web项目失败。
    Myeclipse中使用其自带的tomcat进行run指定的web工程报错,报错信息如下(出于保密及问题说明,报错信息我做了调整):
2016-12-17 12:09:06,915 [main] DEBUG [org.mybatis.spring.SqlSessionFactoryBean]-Parsed mapper file:
'file [C:\Users\Administrator\Workspaces\MyEclipse 8.5\.metadata\.me_tcat\webapps\******\WEB-INF\classes\mapper\AdminLogMapper.xml]'
2016-12-17 12:09:06,941 [main] DEBUG [org.mybatis.spring.SqlSessionFactoryBean]-Parsed mapper file:
'file [C:\Users\Administrator\Workspaces\MyEclipse 8.5\.metadata\.me_tcat\webapps\******\WEB-INF\classes\mapper\AdminMenuMapper.xml]'
2016-12-17 12:09:06,994 [main] INFO  [org.springframework.beans.factory.support.DefaultListableBeanFactory]-Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@5ff916: defining beans [accountServiceImpl,
......
t_SettleDao]; root of factory hierarchy
2016-12-17 12:09:06,996 [main] ERROR [org.springframework.web.context.ContextLoader]- Context initialization failed
org.springframework.beans.factory. BeanCreationException
Error creating bean with name ' accountServiceImpl ': Injection of resource dependencies failed; 
nested exception is org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'accountDao' defined in file
[C:\Users\Administrator\Workspaces\MyEclipse 8.5\.metadata\.me_tcat\webapps\******\WEB-INF\classes\com\******\dao\ AccountDao.class]:
Cannot resolve reference to bean 'sqlSessionFactory' while setting bean property 'sqlSessionFactory';
nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'sqlSessionFactory' defined in class path resource [spring-mybatis.xml]: 
Invocation of init method failed; nested exception is org.springframework.core.NestedIOException: 
Failed to parse mapping resource:
'file[C:\Users\Administrator\Workspaces\MyEclipse 8.5\.metadata\.me_tcat\webapps\******\WEB-INF\classes\mapper\ AdminParaMapper.xml]'; 
nested exception is org.apache.ibatis.builder.BuilderException: 
Error parsing Mapper XML. Cause:  org.apache.ibatis.builder.BuilderException: 
Parsing error was found in mapping #{}.   Check syntax #{property|(expression), var1=value1, var2=value2, ...} 
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:306)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1122)
......
at org.apache.ibatis.builder.SqlSourceBuilder$ParameterMappingTokenHandler.parseParameterMapping(SqlSourceBuilder.java:127)
... 76 more
2016-12-17 12:09:07 org.apache.catalina.core.StandardContext start
严重: Error listenerStart
2016-12-17 12:09:07 org.apache.catalina.core.StandardContext start
严重: Context [/******] startup failed due to previous errors
2016-12-17 12:09:07 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext
2016-12-17 12:09:07 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2016-12-17 12:09:07 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2016-12-17 12:09:07 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/49  config=null
2016-12-17 12:09:07 org.apache.catalina.startup.Catalina start
信息: Server startup in 11672 ms
     通过以上报错信息,分析得出项目配置文件 spring-mybatis.xml 中定义的bean名字为 accountServiceImpl 所依赖的bean名字为 accountDao 的xml配置文件 AdminParaMapper.xml
中有语法错误: Parsing error was found in mapping #{}.   Check syntax #{property|(expression), var1=value1, var2=value2, ...}  ,导致accountDao的bean无法创建,
引起 accountServiceImpl  Injection资源accountDao的过程中失败,从而导致 sqlSessionFactory创建失败,web项目加载失败。
    排查AdminParaMapper.xml文件,发下以下配置有问题(红色部分是源代码,我已经注释,绿色代码是改正后的代码):
<update id="updateReleaseByM_flag" parameterType="string">
   <!-- update adminpara set paravalue=#{} -->
   update adminpara set paravalue=#{paraValue}

    按照如上分析结果改正配置后,项目启动过程中不再报错得以成功加载。


目录
相关文章
|
2月前
|
安全 Java API
Java Web 在线商城项目最新技术实操指南帮助开发者高效完成商城项目开发
本项目基于Spring Boot 3.2与Vue 3构建现代化在线商城,涵盖技术选型、核心功能实现、安全控制与容器化部署,助开发者掌握最新Java Web全栈开发实践。
370 1
|
3月前
|
JavaScript Java 微服务
现代化 Java Web 在线商城项目技术方案与实战开发流程及核心功能实现详解
本项目基于Spring Boot 3与Vue 3构建现代化在线商城系统,采用微服务架构,整合Spring Cloud、Redis、MySQL等技术,涵盖用户认证、商品管理、购物车功能,并支持Docker容器化部署与Kubernetes编排。提供完整CI/CD流程,助力高效开发与扩展。
487 64
|
4月前
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
334 0
|
6月前
|
人工智能 安全 程序员
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
|
缓存 JSON 监控
如何在项目中保证 Web 组件化的性能
保证 Web 组件化的性能需要从多个方面入手,综合运用各种优化方法和策略。通过持续的优化和改进,能够提高组件化的整体性能,为用户提供更好的体验,同时也有助于提高项目的开发效率和质量。
267 64
|
9月前
|
网络协议 Java Shell
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
628 7
|
9月前
|
安全 Linux 开发工具
零基础构建开源项目OpenIM桌面应用和pc web- Electron篇
OpenIM 为开发者提供开源即时通讯 SDK,作为 Twilio、Sendbird 等云服务的替代方案。借助 OpenIM,开发者可以构建安全可靠的即时通讯应用,如 WeChat、Zoom、Slack 等。 本仓库基于开源版 OpenIM SDK 开发,提供了一款基于 Electron 的即时通讯应用。您可以使用此应用程序作为 OpenIM SDK 的参考实现。本项目同时引用了 @openim/electron-client-sdk 和 @openim/wasm-client-sdk,分别为 Electron 版本和 Web 版本的 SDK,可以同时构建 PC Web 程序和桌面应用(Wi
699 2
|
Java Docker 微服务
微服务架构已成为Java Web开发的新趋势,它通过将应用分解为独立、可部署的服务单元,提升了系统的灵活性与可维护性。
微服务架构已成为Java Web开发的新趋势,它通过将应用分解为独立、可部署的服务单元,提升了系统的灵活性与可维护性。每个服务负责特定功能,通过轻量通信机制协作。利用Spring Boot与Spring Cloud等框架可简化开发流程,支持模块化设计、独立部署、技术多样性和容错性,适应快速迭代的需求。
206 1
|
Java Spring 开发者
Java Web开发新潮流:Vaadin与Spring Boot强强联手,打造高效便捷的应用体验!
【8月更文挑战第31天】《Vaadin与Spring Boot集成:最佳实践指南》介绍了如何结合Vaadin和Spring Boot的优势进行高效Java Web开发。文章首先概述了集成的基本步骤,包括引入依赖和配置自动功能,然后通过示例展示了如何创建和使用Vaadin组件。相较于传统框架,这种集成方式简化了配置、提升了开发效率并便于部署。尽管可能存在性能和学习曲线方面的挑战,但合理的框架组合能显著提升应用开发的质量和速度。
428 0
|
前端开发 Java 数据库
Java Web开发全攻略:构建高性能Web应用
【4月更文挑战第2天】Java Web开发围绕Servlet和JSP展开,结合Spring/Spring Boot、Struts2、Hibernate等框架构建高性能应用。数据库选择和优化、前端技术如Angular/React/Vue.js以及CI/CD实践是关键。从电子商务到企业系统,Java Web技术为企业与用户互动提供强大平台。持续学习和适应新技术,以应对Web开发挑战。
549 1
Java Web开发全攻略:构建高性能Web应用