简体   繁体   English

球衣发布400:不良要求简单注册

[英]jersey post 400: Bad Request simple register


i have passed a lot of time to solve a simple problem using rest, but i don't way i can't post data when i test in postman or advanced rest, this is my rest resource 我已经花了很多时间来解决一个使用休息的简单问题,但是当我在邮递员或高级休息中进行测试时,我不愿意发布数据,这是我的休息资源

@Path("/auth")
@Stateless
public class RestWs {

    @EJB 
    private UserService userService;

    @POST
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON)
    public void registerRest(Users u){
        Users users = new Users();
        users.setUsername(u.getUsername());
        users.setEmail(u.getEmail());
        users.setPassword(u.getUsername());
        userService.registerService(u);
    }

}

and this is my jpa 这是我的jpa

@Override
    public Users register(Users users) {
        em.persist(users);
        return users;
    }

and this is my entity 这是我的实体

@Entity
public class Users implements Serializable{

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)

    private Long id;
    private String username;
    private String email;
    private String password;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "Users{" + "id=" + id + ", username=" + username + ", email=" + email + ", password=" + password + '}';
    }


}

i don't why i can't post data for register user , i need something else like parsing or ...., please help me, and thanks 我不为什么我不能为注册用户发布数据,我需要其他诸如解析或....之类的东西,请帮助我,谢谢

just i need to add cross filter and all work great 只是我需要添加交叉过滤器,并且一切正常

@Provider
public class CORSFilter implements ContainerResponseFilter{

    @Override
    public void filter(ContainerRequestContext requestContext, ContainerResponseContext response) throws IOException {
        response.getHeaders().add("Access-Control-Allow-Origin", "*");
        response.getHeaders().add("Access-Control-Allow-Headers",
                      "origin, content-type, accept, authorization");
        response.getHeaders().add("Access-Control-Allow-Credentials", "true");
        response.getHeaders().add("Access-Control-Allow-Methods",
                      "GET, POST, PUT, DELETE, OPTIONS, HEAD");
    }

}

and in web.xml 并在web.xml中

<init-param>
          <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name>
          <param-value>com.ress.CORSFilter</param-value>
        </init-param>

that's all 就这样

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM