当前位置: 首页 > 知识库问答 >
问题:

415:Apache Tomee Plumee中不支持的介质类型

通奕
2023-03-14

我在Spring Framework中有一个项目,所有的代码都可以在Glassfish中运行,但是当我将它部署到Apache Tomcat Plumee上时,却出现了这个例外情况。项目有什么问题吗?我的代码是这样的:

import az.Vortex.SpringDevelopers.dto.MailDTO;
import az.Vortex.SpringDevelopers.dto.UserAddResponse;
import az.Vortex.SpringDevelopers.dto.UserDTO;
import az.Vortex.SpringDevelopers.dto.UserLoginResponseObject;
import az.Vortex.SpringDevelopers.model.User;
import az.Vortex.SpringDevelopers.model.UserRole;
import az.Vortex.SpringDevelopers.model.UserSession;
import az.Vortex.SpringDevelopers.response.CustomException;
import az.Vortex.SpringDevelopers.response.ResponseDTO;
import az.Vortex.SpringDevelopers.service.UserService;
import az.Vortex.SpringDevelopers.service.UserSessionService;
import az.Vortex.SpringDevelopers.utils.MailUtil;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.ws.Response;
import org.apache.commons.lang.StringEscapeUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.client.RestTemplate;
import utils.AuthorizationUtil;
import utils.EmailValidator;
import utils.SecurityUtils;

@Controller
@RequestMapping("users")
public class UserController {

@RequestMapping(value = "login", method = RequestMethod.POST,
        consumes = MediaType.APPLICATION_JSON_VALUE,
        produces = MediaType.APPLICATION_JSON_VALUE)
public @ResponseBody
ResponseDTO loginUser(@RequestBody UserDTO userDto) throws Exception {
    System.out.println("login=" + userDto);
    ResponseDTO result = new ResponseDTO();

    String exStr = "";
    if (userDto.getEmail() == null || !EmailValidator.validate(userDto.getEmail())) {
        exStr = "email is not filled right";
    }

    if (userDto.getPassword() == null || userDto.getPassword().length() == 0) {
        exStr += " password is not filled right";
    }

    if (exStr.length() > 0) {
        throw new IllegalArgumentException(exStr);
    }

    User userTemp = new User();
    userTemp.setEmail(userDto.getEmail());

    userTemp = userService.getUser(userTemp);

    if (userTemp == null) {
        throw new CustomException("This email doesn't exist", "Email or password is not right");
    }
    System.out.println(userDto.getPassword());
    userTemp.setPassword(userDto.getPassword());

    userTemp = userService.getUserForLogin(userTemp);
    if (userTemp == null) {
        throw new CustomException("Password is incorrect,owner email:" + userDto.getEmail(), "Email or password is not right");
    }
    result.setResponseObject(addOrUpdateSession(userTemp));
    result.setSuccessMessage("Successfully logged in");
    return result;
}

}

共有1个答案

秦安宁
2023-03-14

我解决了我的问题。我添加了这个依赖项:

  <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-mapper-asl</artifactId>
        <version>1.9.10</version>
    </dependency>
 类似资料:
  • 问题内容: 自数小时以来,我一直在尝试纠正http错误,但它仍显示不支持的页面。我在邮递员中添加标题。 这是我的Java代码 这是我的档案 问题答案: 通过和如何在响应流和请求流之间对对象进行序列化和反序列化。 将会发生的是,将从提供者的注册表中进行搜索,以查找可以处理的媒体类型。如果找不到,则Jersey无法处理该请求,并将发送415不支持的媒体类型。通常,你还应该在服务器端记录一个异常。不知道

  • 我已经创建了一个示例web服务来进行post调用。 我使用的是Jersey JAX-RS和Maven。

  • 问题内容: 我正在尝试使用jQuery 1.6(Jackson 2.1.1 和Spring 3.2.0 )通过JSON通过该方法向数据库中插入和/或更新数据。 JS代码如下。 通过URL映射的Spring控制器内部的方法如下。 服务器按照问题的含义进行响应, 415不支持的媒体类型 标头信息如下所示。 整个文件如下。 当我删除一个方法参数并仅用于接受请求参数时,它可以工作。 问题答案: 浏览器发送

  • 问题内容: 我正在使用Spring 3.2,并尝试使用ajax发布请求来提交json对象数组。如果相关,我转义了所有特殊字符。 我的HTTP状态为415。 我的控制器是: jQuery是: 我发布的数组中的对象之一的示例是以下json: 错误是: 为什么会发生此错误-有人知道吗? 问题答案: 您可以尝试使用。它没有任何问题

  • 我试图使用BlueJeans API来创建一个客户端应用程序,https://github.com/bluejeans/api-rest-meetings/blob/master/libs/python/docs/ApplicationApi.md#create_client_application.我已经获得了一个客户端ID和秘密以及用户ID,并将它们保存在我的Django设置中。我还编写了一个