Tag: bad request

POST期间REST Web服务中的HTTP 400错误,FormParam包含自己的对象(例如enities)

对于我的REST服务中的订购流程,我必须从客户端向服务器发送“文章”列表。 这些文章对象是自制的实体类型。 我已经发现发送STRING或INTEGER对象列表确实有效,通过@FormParam发送它。 但是一旦我尝试发送我自己的对象列表(甚至只有一个对象),我总是得到HTTP 400错误“错误请求” 。 我疯狂地尝试了类似下面的代码(只有form.add()的参数和服务器方法的参数被更改)和postet字符串,整数和字符串列表成功。 它只会导致发送自己的对象类型的问题。 记录告诉我没有达到服务器方法。 这个过程在某个地方被打破了。 我还试图通过使用代理(Apache JMeter)来获取请求。 这里它表示参数kunde包含值entities.Kunde%40af8358 。 所以我猜这个对象没有彻底序列化(或根本没有)。 但是在响应中将这种对象从服务器发送到客户端工作正常 – 这里XML序列化没有问题。 可能是什么原因? 是否可能无法通过POST发送自己的类型? (PS:我的示例中的@XmlRootElement类型是可序列化的,并使用@XmlRootElement注释。) 预先感谢您的帮助! 贾纳 注意 :我正在使用SAP Netweaver AS。 但直到现在它的表现与其他所有Java AS一样,所以我认为这不是原因。 每个其他REST操作都可以工作,甚至没有自己的实体的POST。 另外 :我正在使用JERSEY库。 服务器端的我的代码: @Path(“/test”) @POST @Produces(MediaType.TEXT_XML) @Consumes(MediaType.APPLICATION_FORM_URLENCODED) public String test( @FormParam(“kunde”) Kunde kunde) { return “The name of the customer is: ” +kunde.getVorname()+” “+kunde.getNachname(); } […]