项目已经写成功好几个模块,结果今天突然报这种错误

ManbaBryant 2019-07-10 11:12:33
报错信息如下

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [G:\javaWeb-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\wtpwebapps\SSM-PMS\WEB-INF\classes\mapper\ProductMapper.xml]'; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.cc.pms.bean.Product'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:736)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:434)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4643)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5109)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1429)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
at java.util.concurrent.FutureTask.run(Unknown Source)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:944)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:839)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1429)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
at java.util.concurrent.FutureTask.run(Unknown Source)
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:944)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:261)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:770)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start(Catalina.java:682)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)
Caused by: org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [G:\javaWeb-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\wtpwebapps\SSM-PMS\WEB-INF\classes\mapper\ProductMapper.xml]'; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.cc.pms.bean.Product'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:523)
at org.mybatis.spring.SqlSessionFactoryBean.afterPropertiesSet(SqlSessionFactoryBean.java:380)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1633)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
... 42 more
Caused by: org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.cc.pms.bean.Product'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:120)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.parse(XMLMapperBuilder.java:92)
at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:521)
... 45 more
Caused by: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.cc.pms.bean.Product'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:118)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:265)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:252)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElements(XMLMapperBuilder.java:244)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:116)
... 47 more
Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.cc.pms.bean.Product'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:120)
at org.apache.ibatis.builder.BaseBuilder.resolveAlias(BaseBuilder.java:149)
at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:116)
... 51 more
Caused by: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:200)
at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:89)
at org.apache.ibatis.io.Resources.classForName(Resources.java:261)
at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:116)
... 53 more

...全文
2484 27 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangsufu77 2019-07-14
  • 打赏
  • 举报
回复
Mario王煜淋 2019-07-12
  • 打赏
  • 举报
回复
引用 2 楼 getdate的回复:
Cannot find class: com.cc.pms.bean.Product
product__cb7
雨夜星辰03 2019-07-12
  • 打赏
  • 举报
回复
com.cc.pms.bean.Product找不到类,ProductMapper.xml这个配置文件里面配置的对应bean找不到
HHY-Fly 2019-07-12
  • 打赏
  • 举报
回复
file [G:\javaWeb-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\wtpwebapps\SSM-PMS\WEB-INF\classes\mapper\ProductMapper.xml]这不是吗?
软件老王 2019-07-11
  • 打赏
  • 举报
回复
首先看下target 下面编译后class ,有没有,二看下打包的地方是不起有问题
usecf 2019-07-11
  • 打赏
  • 举报
回复
也有可能是你发布的代码中没有这个文件 你清理下发布的server tomcat 重新发布下
Monday_@@ 2019-07-11
  • 打赏
  • 举报
回复
引用 4 楼 usecf 的回复:
Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.cc.pms.bean.Product'. Cause: java.lang.ClassNotFoundException: Cannot find class: com.cc.pms.bean.Product
没有这个类啊。。。。如果你确定有的话,就clean一下重新编译应就好了
江湖一点雨 2019-07-11
  • 打赏
  • 举报
回复
用eclipse经常见这种问题,因为改动了代码,导致原先转的class类没有更新,你clear一下项目,在运行一次就会更新出来了。
usecf 2019-07-11
  • 打赏
  • 举报
回复
应该是你发布的那个路径和你工程路径文件不同步,发布的没有及时更新 所以找不到你那个类
qq_44815533 2019-07-11
  • 打赏
  • 举报
回复
引用 9 楼 usecf 的回复:
你有这个bean文件没 在哪个路径放着
再就是一般mybaits配置的话这个名字和数据库中的表名好像也要一致 不然找不到对应的表,之前我好像遇见过这种

跟了这么多帖子,也没人加我呢?想开发一款智能扫描分类箱,有没有懂的啊,加我3198499690 谢谢
ManbaBryant 2019-07-11
  • 打赏
  • 举报
回复
引用 13 楼 freekaiQaQ 的回复:
ProductMapper.xml 这个映射文件中 namespace 对应的 com.cc.pms.bean.Product 类存在么? clean下项目重新部署看看

最后新建了worksapce 然后重新发布项目 不报错了 别的方法都不顶用 我也不知道是啥原因。。

引用 14 楼 star19860411 的回复:
放大招删了eclipse下tomcat,重新配置一个,清理tomcat目录下work文件夹


我是最后新建了worksapce 然后重新发布项目 不报错了 别的方法都不顶用 我也不知道是啥原因。。
ManbaBryant 2019-07-11
  • 打赏
  • 举报
回复
引用 13 楼 freekaiQaQ 的回复:
ProductMapper.xml 这个映射文件中 namespace 对应的 com.cc.pms.bean.Product 类存在么? clean下项目重新部署看看

最后新建了worksapce 然后重新发布项目 不报错了 别的方法都不顶用 我也不知道是啥原因。。

引用 14 楼 star19860411 的回复:
放大招删了eclipse下tomcat,重新配置一个,清理tomcat目录下work文件夹


我是最后新建了worksapce 然后重新发布项目 不报错了 别的方法都不顶用 我也不知道是啥原因。。
ManbaBryant 2019-07-11
  • 打赏
  • 举报
回复
引用 13 楼 freekaiQaQ 的回复:
ProductMapper.xml 这个映射文件中 namespace 对应的 com.cc.pms.bean.Product 类存在么? clean下项目重新部署看看

最后新建了worksapce 然后重新发布项目 不报错了 别的方法都不顶用 我也不知道是啥原因。。
ManbaBryant 2019-07-10
  • 打赏
  • 举报
回复
application.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:jee="http://www.springframework.org/schema/jee"
	xsi:schemaLocation="
		http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.1.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.1.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd">

	<!-- ============================================== -->
	<!-- ==== 此文件为Spring的配置文件,这里主要配置和业务逻辑有关的 ===== -->
	<!-- ============================================== -->


	<!-- spring容器扫描业务逻辑组件,不包括控制器,springmvc只扫描控制器 -->
	<context:component-scan base-package="com.cc" >
		<context:exclude-filter type="annotation"
			expression="org.springframework.stereotype.Controller" />
	</context:component-scan>



	<!-- ============================================== -->
	<!-- ================== 数据源 ==================== -->
	<!-- ============================================== -->
	<bean id="pooledDataSource"
		class="com.alibaba.druid.pool.DruidDataSource">
		<property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=db_mansystem"/>
		<property name="username" value="sa"/>
		<property name="password" value="0824"/>
	</bean>



	<!-- ============================================== -->
	<!-- == 配置和MyBatis的整合,mybatisconfig.xml内容可以放在下面,不单独拿出去 === -->
	<!-- ============================================== -->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<!-- 指定mybatis全局配置文件的位置 -->
		<property name="configLocation" value="classpath:mybatis-config.xml"></property>
		<!-- 指定数据源 -->
		<property name="dataSource" ref="pooledDataSource"></property>
		<!-- 指定mybatis,mapper文件的位置 -->
		<property name="mapperLocations" value="classpath:mapper/*.xml"></property>
	</bean>
		

	<!-- 配置扫描器,将mybatis接口的实现加入到ioc容器中 -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<!--扫描所有dao接口的实现,加入到ioc容器中 -->
		<property name="basePackage" value="com.cc.pms.dao"></property>
	</bean>

	<!-- 配置一个可以执行批量的sqlSession -->
	<bean id="sqlSession"
		class="org.mybatis.spring.SqlSessionTemplate">
		<constructor-arg name="sqlSessionFactory"
			ref="sqlSessionFactory"></constructor-arg>
		<constructor-arg name="executorType" value="BATCH"></constructor-arg>
	</bean>


	<!-- ============================================== -->
	<!-- ===============事务控制的配置 ================ -->
	<!-- 配置事务管理器,切入点表达式,切入事物后该怎么办:事务增强 -->
	<!-- 事务增强默认值为transactionManager -->
	<!-- 如果事务管理器id变化,需要在事务增强里修改相关值 -->
	<!-- ============================================== -->
	<!-- 事务管理器 对数据进行操作 -->
	<bean id="transactionManager"
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<!--控制住数据源 -->
		<property name="dataSource" ref="pooledDataSource"></property>
	</bean>
	<!--开启基于注解的事务,使用xml配置形式的事务(必要主要的都是使用配置式) -->
	<aop:config>
		<!-- 切入点表达式 “..”表示目录下还有子目录也行 -->
		<aop:pointcut
			expression="execution(* com.cc.pms.service.*.*(..))" id="txPoint" />
		<!-- 配置事务增强 -->
		<aop:advisor advice-ref="txAdvice" pointcut-ref="txPoint" />
	</aop:config>


	<!--配置事务增强,事务如何切入 -->
	<tx:advice id="txAdvice" transaction-manager="transactionManager">
		<tx:attributes>
			<!-- 所有方法都是事务方法 -->
			<tx:method name="*" read-only="true" propagation="REQUIRED"/>
			<!-- 设置为只读(查询)的事务方法 -->
			<tx:method name="get*" propagation="REQUIRED" read-only="true" />
			<tx:method name="query*" propagation="REQUIRED" read-only="true" />
			<!-- 设置为增删改的事务方法 -->
            <tx:method name="insert*" propagation="REQUIRED"/> 
            <tx:method name="add*" propagation="REQUIRED"/>
            <tx:method name="update*" propagation="REQUIRED"/>  
            <tx:method name="delete*" propagation="REQUIRED"/>  
		</tx:attributes>
	</tx:advice>

	
</beans>

star19860411 2019-07-10
  • 打赏
  • 举报
回复
放大招删了eclipse下tomcat,重新配置一个,清理tomcat目录下work文件夹
freekaiQaQ 2019-07-10
  • 打赏
  • 举报
回复
ProductMapper.xml 这个映射文件中 namespace 对应的 com.cc.pms.bean.Product 类存在么? clean下项目重新部署看看
ManbaBryant 2019-07-10
  • 打赏
  • 举报
回复
引用 10 楼 miffyfly 的回复:
<select id="getAllProduct" resultMap="ProductMap"> select * from tb_product </select> <select id="getSelectProduct" resultType="ProductMap"> select * from tb_product <where> product_id=#{productId} </where> </select> 第34行的resultType改为resultMap
谢谢 这个问题我看到了 改了 也clean update过了 还是报错。。。
ManbaBryant 2019-07-10
  • 打赏
  • 举报
回复
引用 9 楼 usecf 的回复:
你有这个bean文件没 在哪个路径放着 再就是一般mybaits配置的话这个名字和数据库中的表名好像也要一致 不然找不到对应的表,之前我好像遇见过这种
不是啊 这个模块写了一半 前面的功能都测试好了 然后面maven update一下就开始报错了。。。。
miffyfly 2019-07-10
  • 打赏
  • 举报
回复
<select id="getAllProduct" resultMap="ProductMap"> select * from tb_product </select> <select id="getSelectProduct" resultType="ProductMap"> select * from tb_product <where> product_id=#{productId} </where> </select> 第34行的resultType改为resultMap
usecf 2019-07-10
  • 打赏
  • 举报
回复
你有这个bean文件没 在哪个路径放着 再就是一般mybaits配置的话这个名字和数据库中的表名好像也要一致 不然找不到对应的表,之前我好像遇见过这种
加载更多回复(7)

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧