我在我的服务器代码上使用 JAX-RS Jersey 和 JAXB 来实现服务。我将 xml 作为输入发送到资源,并在资源中使用 JAXBContext 将 xml 转换为对象。当 xml 包含一个根元素时,我的资源正在工作。像
<employee>
<id>1</id>
</employee>
但是当我提供多个元素时,我得到了 UnmarshalException。
<employee>
<id>1</id>
</employee>
<employee>
<id>2</id>
</employee>
我的资源看起来像这样。
@POST
@Consumes(MediaType.APPLICATION_XML)
@Produces(MediaType.APPLICATION_XML)
public Response addEmp(@Context HttpServletRequest req)throws JAXBException,IOException{
JAXBContext jaxb = JAXBContext.newInstance(Employee.class);
Employee emps = (Employee)jaxb.createUnmarshaller().unmarshal(req.getInputStream());
emplist.add(emps);
return Response.ok().entity(success).build();