viv*_*vek 5 rest xsd cxf jax-rs wadl
我有一个JAX-RS API,我正在为它生成wadl.
<application ....
..
<request>
<representation mediaType="application/xml"/>
</request>
..
</application>
Run Code Online (Sandbox Code Playgroud)
但我想为它添加元素表示.
<application ....
..
<request>
<representation mediaType="application/xml" element="prefix1:thebook"/>
</request>
..
</application>
Run Code Online (Sandbox Code Playgroud)
thebook 应该用语法表达.
我的服务:
@Path("/update/book")
@POST
@Produces({MediaType.APPLICATION_JSON})
@ElementClass(request = Book.class)
@Consumes({MediaType.APPLICATION_XML})
String updateBook(Book book);
Run Code Online (Sandbox Code Playgroud)
Book.java
@XmlRootElement(name = "inventoryBean")
public class Book {
private Long name;
private Long id;
// getters and setters
}
Run Code Online (Sandbox Code Playgroud)
必须在某处声明一个名称空间,无论是
@XmlRootElement本身还是包级注释,请添加它,您应该看到一个到schema元素的正确链接;
在这种情况下@XmlRootElement(name = "inventoryBean", namespace = "bean")应该做的工作.