简体   繁体   中英

Java spring REST controller: incomplete request body

I have a problem with my REST Controller. If I sent a request with a RequestBody (json) some attributes doesn't arrive the controller, although they was sent and defined at model.

I could find out that it look like an old version of files will be used from the local java web server. As I changed the System.out.println Value at Constructor still the old value was outputed.

public RestController_ApiKey_2_0() {
    System.out.println("RestController_ApiKey_2_0 init");
}

I tried the following things bootless:

  1. deleted java web server and did a new installation
  2. cleaned the project and started server again
  3. clean install of project

Does anyone have an idea?

Please provide more code, how do you declare a controller, and what params it can take. Also show a sample request. Here is an example of a simple controller:

A model

public class CustomRequestBody {
    private String fieldA;
    private String fieldB;

    public String getFieldA() {
        return fieldA;
    }

    public void setFieldA(final String fieldA) {
        this.fieldA = fieldA;
    }

    public String getFieldB() {
        return fieldB;
    }

    public void setFieldB(final String fieldB) {
        this.fieldB = fieldB;
    }
}

Controller:

@Controller
public class MyController {
    @RequestMapping(value = "/some-path", method = RequestMethod.POST)
    @ResponseStatus(HttpStatus.ACCEPTED)
    public ResponseEntity handleSomePath(@RequestBody final CustomRequestBody body, final HttpServletRequest request) {
        // Do the job.
    }  

And request will be:

HTTP POST http://some.server.com/some-path
{
    "fieldA":"first value",
    "fieldB":"second value"
} 

Read more at Spring documentation here

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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