程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了错误:org.springframework.web.HttpMediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决错误:org.springframework.web.httpR_771_11845@ediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持?

开发过程中遇到错误:org.springframework.web.httpR_771_11845@ediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持的问题如何解决?下面主要结合日常开发的经验,给出你关于错误:org.springframework.web.httpR_771_11845@ediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持的解决方法建议,希望对你解决错误:org.springframework.web.httpR_771_11845@ediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持有所启发或帮助;

根据评论中提到的内容,最简单的解决方案是:

@requestMapPing(method = requestMethod.PUT, consumes = MediaType.APPliCATION_JsON_value)
@ResponseBody
public Collection<BudgetDTO> updateConsumerBudget(@requestbody SomeDto someDto) throws GeneralException, ParseException {

    //whatever

}

class SomeDto {

   private List<whateverBudgerPerDateDTO> budgetPerDate;


  //getters setters
}

该解决方案假定您正在创建的http请求实际上具有

Content-Type:application/Json 代替 text/plain

解决方法

我是Spring
Data的新手。我不断收到错误消息org.springframework.web.httpR_771_11845@ediaTypeNotSupportedException: Content type 'text/plain;charset=UTF-8' not supported
我尝试将@requestMapping注释内部的消费更改为,text/plain但不幸的是它没有帮助。*

有任何想法吗?

谢谢,

我的代码如下所示:

package com.budget.processing.application;


import com.budget.business.service.budget;
import com.budget.business.service.budgetItem;
import com.budget.business.service.budgetservice;
import com.budget.processing.dto.budgetDTO;
import com.budget.processing.dto.budgetPerConsumerDTO;
import com.utils.Constants;
import com.common.utils.config.exception.GeneralException;
import org.apache.log4j.Logger;
import org.joda.time.YearMonth;
import org.springframework.beans.factory.Annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.transaction.Annotation.Propagation;
import org.springframework.transaction.Annotation.transactional;
import org.springframework.web.bind.Annotation.*;

import javax.ws.rs.core.MediaType;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;


@Controller("budgetManager")
@requestMapping(value = "budget",produces  = Constants.RESPONSE_APP_JSON)
@transactional(propagation = Propagation.requIRED)
public class BudgetManager {

private static final Logger logger = Logger.getLogger(BudgetManager.class);


@Autowired
private Budgetservice budgetservice;


@requestMapping(method = requestMethod.GET)
public
@ResponseBody
Collection<BudgetDTO> getBudgetMonthlyAllConsumers() throws GeneralException {

    List<Budget> budgetList = budgetservice.getBudgetForAllConsumers();
    List<BudgetDTO> bugetDtos = new ArrayList<>();
    for (Budget budget : budgetList) {
        BudgetDTO budgetDTO = generateBudgetDto(budget);
        bugetDtos.add(budgetDTO);
    }
    return bugetDtos;
}


@requestMapping(method = requestMethod.PUT,consumes = MediaType.APPLICATION_JSON)
public
@ResponseBody
Collection<BudgetDTO> updateConsumerBudget(@requestParam(value = "budgetPerDate",required = falsE)

                          ArrayList<BudgetPerConsumerDTO> budgetPerDatE) throws GeneralException,ParseException {

    List<BudgetItem> budgetItemList = new ArrayList<>();
    List<Budget> budgets = new ArrayList<>();
    if (budgetPerDate != null) {
        for (BudgetPerConsumerDTO budgetPerConsumerDTO : budgetPerDatE) {
            budgetItemList.add(budgetservice.createBudgetItemForConsumer(budgetPerConsumerDTO.getId(),new YearMonth(budgetPerConsumerDTO.getDate()),budgetPerConsumerDTO.getBudget()));
        }
    }

    budgets = budgetservice.getBudgetForAllConsumers();
    List<BudgetDTO> budgetDTOList = new ArrayList<>();
    for (Budget budget : budgets) {
        BudgetDTO budgetDto = generateBudgetDto(budget);
        budgetDTOList.add(budgetDto);
    }
    return budgetDTOList;

}

}

这是我得到的异常:

ERROR 2014-07-26 18:05:10.737 (GlobalExceptionHandler.eITFMSException: 86) Error execuTing Web service org.springframework.web.httpR_771_11845@ediaTypeNotSupportedException: Content type 'text/plain;charset=UTF-8' not supported
at org.springframework.web.servlet.mvc.method.requestMappingInfoHandlerMapping.handleNoMatch(requestMappingInfoHandlerMapping.java:215)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:289)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:229)
at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:56)
at org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:298)
at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1091)

该请求看起来像这样:我正在使用Simple Rest Template Google Extension。该请求如下所示:

localhost:8080/rest
1 requests ❘ 140 B transferred
HeadersPreviewResponseCookiesTiming
Remote Address:localhost:8080
request URL: localhost:8080/rest/budget
request Method:PUT
Status Code:500 Internal Server Error
request Headersview source
Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8,he;q=0.6
Connection:keep-alive
Content-Length:331
Content-Type:text/plain;charset=UTF-8
Cookie:JSESSIONID=AE87EEB7A73B9F9E81956231C1735814
Host:10.23.204.204:8080
Origin:chrome-extension://fhjcajmcbmldlhcimfajhfbgofnpcjmb
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/35.0.1916.153 Safari/537.36
request Payloadview parsed
{
"budgetPerDate":
[

         {
            "id":942,"date":[
               2014,1,1
            ],"budget": 100
         },{
            "id":942,2,"budget": 150
         }
 ]
}

大佬总结

以上是大佬教程为你收集整理的错误:org.springframework.web.HttpMediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持全部内容,希望文章能够帮你解决错误:org.springframework.web.HttpMediaTypeNotSupportedException:内容类型'text / plain; charset = UTF-8'不支持所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。