2013-06-05 10 views
5

Ho un semplice servizio RESTful in IntelliJ IDEA 12.1.3 Ultimate.Come posso generare WADL dal codice Java RESTful in IntelliJ IDEA?

L'ho provato. Funziona. Ora voglio creare un client Java per questo servizio e ho bisogno di un WADL.

Per le istruzioni su http://wiki.jetbrains.net/intellij/RESTful_WebService, ho fatto clic con il pulsante destro del mouse sulla classe e sono andato su "Servizi Web -> Servizi Web RESTful" solo per trovare disabilitato il menu "Genera WADL da codice Java".

Cosa ho fatto di sbagliato?

Ecco il codice:

package com.mybiz; 

import javax.ws.rs.GET; 
import javax.ws.rs.Path; 
import javax.ws.rs.Produces; 

@Path("/greeting") 
public class Greeter { 
    @GET 
    @Produces("text/plain") 
    public String hello() { 
     return "Hi!"; 
    } 
} 

Aggiornamento

Sembra che l'utilizzo TomEE come server applicazioni disabilita questa funzione. Sto indovinando che il server delle applicazioni è dove viene generato il WADL e non sto utilizzando il server delle applicazioni che IntelliJ comprende.

ho ragione? Se avessi cambiato i server delle applicazioni, funzionerebbe? Quale server applicativo dovrei usare?

+0

ho appena fatto su uno dei my Restful services, ma è un 'interface' con un'implementazione' class' (che IntelliJ ha opportunamente trovato cablato tramite Spring) e restituisco 'Response' invece di tipi arbitrari. Sembra che non _non_ colpisca il server, piuttosto avvia un nuovo server usando la mia cartella di produzione, e poi esegue una scansione locale "remota". – pickypg

+0

Grazie pickypg. Quale server di applicazioni stai usando? – Jason

+0

Sto usando Glassfish, ma ironicamente sto preparando il passaggio a TomEE. – pickypg

risposta

1

Puoi provare a generare i fagioli manualmente. V'è un buon esempio su come farlo qui:

http://cxf.apache.org/docs/jaxrs-services-description.html

leggere la parte strumento da riga di comando wadl2java.

Se il progetto client è un progetto maven, è anche possibile aggiungere il plug-in maven che è possibile trovare nella stessa pagina.

Spero che questo aiuti

Problemi correlati