Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    6

    generazione automatica della strutture della classi

    Ciao,
    sono agli inizi con java, spero siate comprensivi
    Mi devo interfacciare con un web services e ho creato il client con CXF. Il problema è che questo ws accetta in ingresso una marea di parametri organizzati in tipi complessi con nidificazioni molto profonde. tipo richiesta = cliente + servizio + prodotto; cliente = nome + indirizzo + contatti; nome = nome(stringa) + cognome(stringa). ecc ecc

    Ora i metodi dello stub, in ingresso accettano il tipo complesso generico richiesta tipo creaRichiesta(richiesta)
    Quindi se non ho capito male una volta recuperati i dati dal db con una query dovrei costruirmi la classe( richiesta con tutte le sue sottoclassi: cliente, servizio prodotto ecc) popolandone le proprietà con i valori della quesry.

    Ora siccome i metodi del ws sono molti e i tipi complessi in totale saranno un centinaio, mi chiedevo se ci fosse un metodo automatizzato che ti creasse da solo la strutture delle classi partendo dagli xsd inclusi nel wsdl del ws.

    Scusate se vi ho tediato con questa domanda forse banale...

    Becam

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707

    Re: generazione automatica della strutture della classi

    Originariamente inviato da Becam
    mi chiedevo se ci fosse un metodo automatizzato che ti creasse da solo la strutture delle classi partendo dagli xsd inclusi nel wsdl del ws.
    Certamente, guarda per esempio qui:
    http://docs.oracle.com/cd/E17802_01/...lassfish6.html
    http://docs.oracle.com/cd/E17802_01/....html#wp104950
    http://www.eclipse.org/webtools/comm..._from_WSDL.pdf

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    6

    Re: Re: generazione automatica della strutture della classi

    Grazie della risposta! Ma questi doc li ho tutti letti e a meno che non mi sia sfuggito qualcosa, ti spiegano tutti come generare uno stub per il ws. Resta però a tuo carico il problema della modellazione dei dati da utilizzare per alimentare le invocazioni dei metodi del ws.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Ti crea anche le classi da utilizzare come parametri o valori di ritorno delle chiamate.

    - scarico questo wsdl: http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL
    - lo importo in un progetto di Eclipse
    - tasto destro sul wsdl->Web Services->Generate Client

    Mi vengono generate tutte le classi necessarie.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    6
    Originariamente inviato da c0der

    Mi vengono generate tutte le classi necessarie.

    se hai un ws che richiede in ingresso solo tipi semplici si, altrimenti no!

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Non ho provato, pensavo ti riferissi al fatto che i vari argomenti passati e ritornati non venivano raggruppati in classi.
    Se hai un esempio di wsdl online (tipo su http://www.service-repository.com/) e non hai possibilità di provare, magari
    lo hai già fatto invece, passa pure il link.

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    6
    Originariamente inviato da c0der

    lo hai già fatto invece, passa pure il link.
    http://predic8.com/material/ArticleService?wsdl

    per esempio il metodo create richiede in ingresso il tipo complesso article che ha dentro il tipo complesso price.
    <ns:create>
    <article>
    <name>?</name>
    <description>?</description>
    <price>
    <amount>?</amount>
    <currency>?</currency>
    </price>
    <id>?</id>
    </article>
    </ns:create>



    lo stub mi espone un metodo generico create che accetta in ingresso un oggetto di tipo article. Ma la generazione di article con tutti i suoi valori popolati è a mio carico... o no?!!?

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Quando vado per fare Generate Client mi dà:
    IWAB0399E Error in generating Java from WSDL: javax.wsdl.WSDLException: WSDLException (at /definitions/types/xsd:schema): faultCode=OTHER_ERROR: An error occurred trying to resolve schema referenced at './ArticleService?xsd=1', relative to 'file:/home/demo/workspace/test/src/ArticleService.wsdl'.: java.io.FileNotFoundException: This file was not found: file:/home/demo/workspace/test/src/ArticleService?xsd=1

    [EDIT]
    Devo solo scaricarmi gli xsd, pensavo lo facesse da solo.

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Mi ha creato le classi:

    CurrencyType.java
    MoneyType.java
    ArticleType.java (con i campi String name, description, id e il MoneyType price)

    e poi:
    ArticleService.java
    ArticleServiceLocator.java
    ArticleServicePT.java
    ArticleServicePTBindingStub.java
    ArticleServicePTProxy.java

  10. #10
    Ciao sinceramente non mi faccio mai generare il client da eclipse uso direttamente wsconsume (jboss) per farmelo generare. qui trovi il client generato ed ad occhio dovrebbe esserci tutto.

    [EDIT]
    Ho appena provato a generalo da eclipse e mi ha generato esattamente tutte le classe necessarie compresa ArticleType che viene usata come parametro
    [EDIT]

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.