GVKun编程网logo

(HttpMessageNotWritableException ) No converter found for return value of type xxxx

16

在本文中,我们将给您介绍关于(HttpMessageNotWritableException)Noconverterfoundforreturnvalueoftypexxxx的详细内容,此外,我们还将

在本文中,我们将给您介绍关于(HttpMessageNotWritableException ) No converter found for return value of type xxxx的详细内容,此外,我们还将为您提供关于BeanNotOfRequiredTypeException:Bean named ''XXXX'' is expected to be of type ''XXX'' ...、Could not determine type for: java.util.List, at table: xxxxx, for columns: [org.hibernate.mapping、Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布。运行时ClassNotFoundExceptions可能会导致、Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布运行时ClassNotFoundExceptions可能会导致的知识。

本文目录一览:

(HttpMessageNotWritableException ) No converter found for return value of type xxxx

(HttpMessageNotWritableException ) No converter found for return value of type xxxx

最近在家没事儿,写写代码玩,用了 Maven 构建 SSM 项目,结果提示如下信息

org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type: class com.lcy.pojo.User
【原因】找不到返回值类型的转换器,找了好久发现controller返回的是json格式数据

【方案】在mavenpox.xml中只引入Json的依赖时,只引入了“jackson-core”;没有引入 “jackson-databind”,添加了依赖后问题解决了。
【提示】当controller标记@ResponseBody后,会用解析器去解析Controller的返回值,解析器会去寻找SpringMvc中注册的HttpMeesageConverter接口的实现类,结果因为没有添加对应的依赖,所以
就找不到Json类型的转换器了,添加依赖后就正常了。



【正确的依赖】
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
        <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.9.8</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.9.8</version>
        </dependency>

 






BeanNotOfRequiredTypeException:Bean named ''XXXX'' is expected to be of type ''XXX'' ...

BeanNotOfRequiredTypeException:Bean named ''XXXX'' is expected to be of type ''XXX'' ...

    直接说结论,前提是在服务实现层启用了 @Transactional(rollbackFor = Exception.class) 注解,然后 controller 层注入的服务应该是接口,但是不知道哪个傻吊注入了实现。详细看后面。

    今天测试项目的时候一直报错,找这个错误花费了两三个小时,错误来源于粗心大意,注入的接口弄错了,但不是我弄错了,是公司的其他同事,协作开发。

  由于昨天开发、测试一切正常,但是我新写的代码,启动就报错,最开始我百度,基本都是告诉我注入 bean 错误,name 有问题,重名等等,但是我仔细核查都没问题。

  后来我一点点的添加自己的代码,测试,发现当我的服务层 Server 方法加上 @Transactional(rollbackFor = Exception.class) 注解,启动就报 RT 错误,这我纳闷了,然后慢慢看注入 bean 的 name 看是否重名,没有,编译也不报错,但我看到这个的时候,简直爆炸。如下图。

  

  

  当时就想骂人了,谁这么注解的,浪费我时间,难怪会报错,至于深层原因,技术水平时间有限,我也不知道 Orz。

  如果有类似错误,但是不是 bean 的 name 等错误,可以看看是不是这个原因。

  附完整错误代码:

六月 23, 2019 6:55:08 下午 org.apache.catalina.core.ApplicationContext log
严重: StandardWrapper.Throwable
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ''noticeController'': Unsatisfied dependency expressed through field ''nts''; nested exception is org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named ''noticeService'' is expected to be of type ''service.NoticeService'' but was actually of type ''com.sun.proxy.$Proxy211''
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:588)
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:366)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1264)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)
	at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:668)
	at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:634)
	at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:682)
	at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:553)
	at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:494)
	at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:171)
	at javax.servlet.GenericServlet.init(GenericServlet.java:158)
	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1231)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1031)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4901)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5188)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1399)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	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.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named ''noticeService'' is expected to be of type ''service.NoticeService'' but was actually of type ''com.sun.proxy.$Proxy211''
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.checkBeanNotOfRequiredType(DefaultListableBeanFactory.java:1510)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.checkBeanNotOfRequiredType(DefaultListableBeanFactory.java:1517)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1489)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1104)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:585)
	... 31 more

六月 23, 2019 6:55:09 下午 org.apache.catalina.core.StandardContext loadOnStartup
严重: Servlet [spring] in web application [/mainWeb] threw load() exception
org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named ''noticeService'' is expected to be of type ''.service.NoticeService'' but was actually of type ''com.sun.proxy.$Proxy211''
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.checkBeanNotOfRequiredType(DefaultListableBeanFactory.java:1510)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.checkBeanNotOfRequiredType(DefaultListableBeanFactory.java:1517)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1489)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1104)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:585)
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:366)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1264)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)
	at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:668)
	at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:634)
	at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:682)
	at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:553)
	at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:494)
	at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:171)
	at javax.servlet.GenericServlet.init(GenericServlet.java:158)
	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1231)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1031)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4901)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5188)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1399)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	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)

  

 

Could not determine type for: java.util.List, at table: xxxxx, for columns: [org.hibernate.mapping

Could not determine type for: java.util.List, at table: xxxxx, for columns: [org.hibernate.mapping

错误:

Could not determine type for: java.util.List, at table: zk_zjk_wbyjy, 
for columns: [org.hibernate.mapping.Column(zk_zjk_prnd_list)]

在这里插入图片描述

原因是在实体类加了list子表列表
在这里插入图片描述

解决方法:
加上以下注解便不会报错

 @ElementCollection(targetClass=ZkZjkWbyjyKt.class)

在这里插入图片描述

Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布。运行时ClassNotFoundExceptions可能会导致

Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布。运行时ClassNotFoundExceptions可能会导致

将所需的文件放在Eclipse的构建路径中后,仍然出现以下错误。我正在研究Spring MVC Hello World应用程序,并为Java
EE开发人员使用Eclipse Helios:

Jan 16,2012 1:25:42 PM org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /SpringMVCTutorial threw load() exception
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1062)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1010)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4957)
    at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5284)
    at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5279)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

我尝试右键单击服务器,然后单击“清理”。我右键单击该应用程序,在“配置路径”上单击“构建路径”,然后将正确的JAR文件放入库中;但是,它仍然不承认它们为依赖项。我想念什么?

我已经尝试过这里提出的建议:

  1. 右键单击您的Web项目
  2. 点击“属性”
  3. 选择“ Java EE模块依赖项”
  4. 点击“网络库”标签
  5. 添加外部JAR(如果JAR在您的项目之外)。将在Jar / Module下添加一个条目,确保您单击复选框(已选中)。

问题是,当我选择“单击属性”时,我没有选择单击Java EE模块依赖项的选项,因为它没有出现。我下载了所有其他Java EE工具,但仍然找不到。

Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布运行时ClassNotFoundExceptions可能会导致

Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布运行时ClassNotFoundExceptions可能会导致

将所需的文件放在Eclipse的构建路径中后,仍然出现以下错误。我正在研究Spring MVC Hello World应用程序,并为Java
EE开发人员使用Eclipse Helios:

Jan 16,2012 1:25:42 PM org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /SpringMVCTutorial threw load() exception
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1062)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1010)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4957)
    at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5284)
    at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5279)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

我尝试右键单击服务器,然后单击“清理”。我右键单击该应用程序,在“配置路径”上单击“构建路径”,然后将正确的JAR文件放入库中;但是,它仍然不承认它们为依赖项。我想念什么?

我已经尝试过这里提出的建议:

  1. 右键单击您的Web项目
  2. 点击“属性”
  3. 选择“ Java EE模块依赖项”
  4. 点击“网络库”标签
  5. 添加外部JAR(如果JAR在您的项目之外)。将在Jar / Module下添加一个条目,确保您单击复选框(已选中)。

问题是,当我选择“单击属性”时,我没有选择单击Java EE模块依赖项的选项,因为它没有出现。我下载了所有其他Java EE工具,但仍然找不到。

今天关于(HttpMessageNotWritableException ) No converter found for return value of type xxxx的介绍到此结束,谢谢您的阅读,有关BeanNotOfRequiredTypeException:Bean named ''XXXX'' is expected to be of type ''XXX'' ...、Could not determine type for: java.util.List, at table: xxxxx, for columns: [org.hibernate.mapping、Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布。运行时ClassNotFoundExceptions可能会导致、Eclipse警告:XXXXXXXXXXX.jar将不会导出或发布运行时ClassNotFoundExceptions可能会导致等更多相关知识的信息可以在本站进行查询。

本文标签: