Bonjour à tous et à toute,

J'utilise CXF 3.0.4 avec la dependance cxf-rt-rs-service-description pour l'auto génération du wadl au runtime, afin de générer le wadl à partir de mon service web exposé via les annotations JAX-RS, j'arrive à générer le wadl mais celui-ci n'est pas complet c'est à dire qu'il ne décrit pas tout mon service.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
@Path("/")
public class SimpleResource {
*
****static SimpleObject simpleObject;
****static final String DEFAULT_PREFIX = "prefix";
*
****static {
********simpleObject = makeSimpleObject(DEFAULT_PREFIX);
****}
*
****@GET
****@Path("/")
****@Produces({ MediaType.APPLICATION_JSON })
****public SimpleObject getSimpleObject() {
********return simpleObject;
****}
*
****@POST
****@Produces({ MediaType.APPLICATION_JSON })
****@Consumes({ MediaType.APPLICATION_JSON })
****@Path("/")
****public Response createSimpleObject(SimpleObject simpleObject) {
********return Response.ok(simpleObject, MediaType.APPLICATION_JSON).build();
****}
*
****private static SimpleObject makeSimpleObject(String prefix) {
********if (simpleObject == null) {
************simpleObject = new SimpleObject();
************simpleObject.setLongProperty1(1L);
************simpleObject.setSimpleStringProperty1("simpleStringProperty1");
************simpleObject.setDoubleProperty1(0D);
*
************for (int i = 0; i < 100; i++) {
****************simpleObject.addMessage("message_" + prefix);
************}
********}
********return simpleObject;
****}
}
Avec ce service, j'obtiens le wadl ci-dessous dans lequel les paramètres de requêtes ainsi que le type de réponse ne sont pas bien renseignés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
<application xmlns="http://wadl.dev.java.net/2009/02"
****xmlns:xs="http://www.w3.org/2001/XMLSchema">
****<grammars>
********<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
************attributeFormDefault="unqualified" elementFormDefault="unqualified">
************<xs:element name="simpleObject" type="simpleObject" />
************<xs:complexType name="simpleObject">
****************<xs:sequence>
********************<xs:element minOccurs="0" name="doubleProperty1" type="xs:double" />
********************<xs:element minOccurs="0" name="longProperty1" type="xs:long" />
********************<xs:element maxOccurs="unbounded" minOccurs="0" name="messages"
************************nillable="true" type="xs:string" />
********************<xs:element minOccurs="0" name="simpleStringProperty1"
************************type="xs:string" />
****************</xs:sequence>
************</xs:complexType>
********</xs:schema>
****</grammars>
****<resources base="http://localhost:8086/cxf/simpleObject">
********<resource path="/"
************id="com.itnsa.cxf.ws.resource.SimpleObjectResource">
************<method name="GET" id="getSimpleObject">
****************<response>
********************<representation mediaType="application/json" />
****************</response>
************</method>
************<method name="POST" id="createSimpleObject">
****************<request>
********************<representation mediaType="application/json" />
****************</request>
****************<response>
********************<representation mediaType="application/json" />
****************</response>
************</method>
********</resource>
****</resources>
</application>
Je vous remercie par avance.