导入辅助材料自带的源代码,运行报错及编译栏乱码,如何解决这两个问题?

导入辅助材料自带的源代码,运行报错及编译栏乱码,如何解决这两个问题?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

6回答
好帮手慕小脸 2020-05-25 09:48:47

同学你好,上述错误是org.apache.ibatis.type.InstantTypeHandler不能转换为org.apache.ibatis.type.TypeHandler,

http://img1.sycdn.imooc.com//climg/5ecb23e609810d2d06810107.jpg这里可以去报错信息提示的几个位置进行查看,如下所示:

http://img1.sycdn.imooc.com//climg/5ecb21cb09e7f7fb06710219.jpg

祝学习愉快~

提问者 csm032 2020-05-24 17:48:23
错误信息如下——
24-May-2020 14:10:42.520 涓ラ噸 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart 閰嶇疆搴旂敤绋嬪簭鐩戝惉鍣╗com.imooc.icake.global.CatalogTreeListener]閿欒
	org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession.
### Cause: org.apache.ibatis.type.TypeException: Unable to find a usable constructor for class org.apache.ibatis.type.InstantTypeHandler
		at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
		at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:52)
		at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:36)
		at com.imooc.icake.global.DaoFactory.<init>(DaoFactory.java:16)
		at com.imooc.icake.global.DaoFactory.getInstence(DaoFactory.java:24)
		at com.imooc.icake.biz.impl.CatalogBizImpl.<init>(CatalogBizImpl.java:12)
		at com.imooc.icake.global.CatalogTreeListener.<init>(CatalogTreeListener.java:11)
		at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
		at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
		at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
		at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
		at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:151)
		at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4621)
		at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5165)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:743)
		at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:719)
		at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
		at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1720)
		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.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:287)
		at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
		at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
		at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:479)
		at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:428)
		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.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:287)
		at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
		at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
		at com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468)
		at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)
		at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
		at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)
		at java.security.AccessController.doPrivileged(Native Method)
		at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1408)
		at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)
		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 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:324)
		at sun.rmi.transport.Transport$1.run(Transport.java:200)
		at sun.rmi.transport.Transport$1.run(Transport.java:197)
		at java.security.AccessController.doPrivileged(Native Method)
		at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
		at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
		at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
		at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
		at java.security.AccessController.doPrivileged(Native Method)
		at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
		at java.lang.Thread.run(Thread.java:745)
	Caused by: org.apache.ibatis.type.TypeException: Unable to find a usable constructor for class org.apache.ibatis.type.InstantTypeHandler
		at org.apache.ibatis.type.TypeHandlerRegistry.getInstance(TypeHandlerRegistry.java:412)
		at org.apache.ibatis.type.TypeHandlerRegistry.register(TypeHandlerRegistry.java:385)
		at org.apache.ibatis.type.TypeHandlerRegistry.register(TypeHandlerRegistry.java:381)
		at org.apache.ibatis.type.TypeHandlerRegistry.<init>(TypeHandlerRegistry.java:135)
		at org.apache.ibatis.session.Configuration.<init>(Configuration.java:143)
		at org.apache.ibatis.builder.xml.XMLConfigBuilder.<init>(XMLConfigBuilder.java:85)
		at org.apache.ibatis.builder.xml.XMLConfigBuilder.<init>(XMLConfigBuilder.java:69)
		at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:49)
		... 57 more
	Caused by: java.lang.ClassCastException: org.apache.ibatis.type.InstantTypeHandler cannot be cast to org.apache.ibatis.type.TypeHandler
		at org.apache.ibatis.type.TypeHandlerRegistry.getInstance(TypeHandlerRegistry.java:410)
		... 64 more
24-May-2020 14:10:42.520 涓ラ噸 [RMI TCP Connection(5)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart 鐢变簬浠ュ墠鐨勯敊璇紝宸茶烦杩囧畨瑁呭簲鐢ㄧ▼搴忎睛鍚櫒


  • 同学你好,上述错误是类型转换异常,同学可以查看一下是哪里的转换出错了 祝学习愉快~
    2020-05-24 19:01:22
  • 提问者 csm032 回复 好帮手慕小脸 #2
    怎样查看是哪里类型转换错误呢?零基础学员请老师解答稍微详细点,谢谢
    2020-05-24 19:26:22
好帮手慕小脸 2020-05-24 17:38:40

同学你好,

1、同学更换为GBK后是否还乱码呢?如果还乱码,这个可能是tomcat版本与eclipse版本或环境造成的,目前老师这边没有复现这个问题,因此没有找到很好的办法来解决这个问题。这个日志信息的编码问题不会影响项目的运行,同学可以暂时忽略这个问题。

2、建议同学将错误信息贴完整,方便老师解决问题。可以复制不用截图

祝学习愉快~

  • 提问者 csm032 #1
    完整错误信息已贴出,请老师看看
    2020-05-24 17:50:30
  • 提问者 csm032 #2
    用eclipe运行项目没有乱码,用idea运行出现乱码,不知道原因在哪里
    2020-05-24 18:16:12
提问者 csm032 2020-05-24 16:14:41

logging.properties编码为UTF-8,还是乱码http://img1.sycdn.imooc.com//climg/5eca2cc509ca918a00000000.jpg

提问者 csm032 2020-05-24 16:04:44

错误信息如下——

http://img1.sycdn.imooc.com//climg/5eca2a7d09ea2fa014920634.jpg

好帮手慕小脸 2020-05-24 15:30:00

同学你好!

1、同学说的“运行报错”是提示什么报错信息呢?建议同学贴出,方便老师解决问题

2、你这个是tomcat乱码,建议你修改一下tomcat的配置文件试一下:

在Tomcat安装目录下conf文件夹下的logging.properties文件中有如下配置,可以修改如下三个位置的编码为UTF-8,如果不可以,改为GBK测试一下

http://img1.sycdn.imooc.com//climg/5eca21e8098fc27f09020608.jpg

修改完保存后,重启tomcat测试一下。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~


  • 提问者 csm032 #1
    错误信息已贴出,请老师看看
    2020-05-24 16:05:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师