Anche se questo potrebbe apparire come un duplicato di Java Web Services, mi piacerebbe sapere dove iniziare e continuare. In passato, ho investito molto tempo per trovare da dove iniziare ma Non ero in grado di Ci sono così tanti gerghi e caos (almeno per me!) Mentre leggo le pagine sui servizi web. Ci sono così tanti termini - come JAX-RPC, JAX-WS, Axis, Rest, Servlet as WebService, EJB's
come servizio Web e altri termini che non conosco. Questo gruppo di utenti può essere consolidato e fornire una panoramica dei servizi Web Java di elevata qualità che è facile da comprendere e seguire? Apprezzo la tua gentilezza e grazie per il tuo aiuto.Come scrivere servizi web efficaci in java
risposta
Questo è davvero un po 'una giungla per capire i servizi web. La pagina wikipedia è decente, ma manca ancora alcuni elementi.
Ho contrassegnato questa risposta come wiki della comunità, quindi sentitevi liberi di aggiornarlo o correggerlo. È solo una base.
Un termine gonfio:
In primo luogo, il termine servizio web viene utilizzato per riferirsi a molte cose. Mentre molte persone lo usano per riferirsi al servizio web basato su SOAP, il termine può essere usato per indicare qualsiasi servizio fornito attraverso un'interfaccia web; questa è una fonte di confusione.
Attuazione e design di stile:
- basati su SOAP - SOAP è ancora lo standard de-facto per i servizi web. SOAP è un protocollo su HTTP che descrive lo scambio di messaggi ed eccezioni. SOAP è cresciuto da qualcosa di semplice a qualcosa di molto complicato con tutti gli WS-* standards che sono stati aggiunti in seguito. I più importanti sono: WS-Policy, WS-Security, WS-Addressing, WS-Transaction. Un'altra importante caratteristica è MTOM per i messaggi di grandi dimensioni.
- RESTful - Il termine RESTful si riferisce al fatto che il servizio è stateless e tutte le informazioni rilevanti vengono passate come parametro. Inoltre, anziché utilizzare un protocollo come SOAP, vengono utilizzati i semplici verbi HTTP , ad es.
Get
,Put
,Delete
,Update
. - Stateless - I WS sono in genere senza stato. I business elaborati a volte si affidano ai cosiddetti identificatori di correlazione (con WS-Addressing) che vengono utilizzati per abbinare le richieste e le risposte insieme; questa è la stessa idea di come memorizzare un identificativo di sessione in un cookie perché HTTP è senza stato.
- Stateful - Ci sono alcune proposte per avere WS WS, ma non ne so molto.
attuazione e tecnologia stack:
- Servlet - Il modo di livello più basso per implementare un WS: è fondamentalmente analizzare la richiesta e sputare la risposta HTTP tutto da solo.
- EJB - Dal momento che EJB3, EJB può essere esposto come servizio Web molto facilmente. Ha bisogno di un contenitore EJB, ovviamente.
- Apache Axis - Utilizzato per essere uno stack tecnologico popolare in declino.
- Apache CXF - Un'altra scelta popolare.
- JBossWS - Ancora un'altra scelta del popluar.
- JAX-WS - Lo stack del servizio Web ufficiale da Sun, molto buono. Finora lo so, questo JAX-RPC replaces che è stato semplicemente rinominato JAX-WS.
Concetti correlati e gergo:
- WSDL - Definisce il contratto/interfaccia del servizio web, in caso di WS basato su SOAP.
- Contratto prima - Si riferisce al fatto che una tecnologia è in grado di supportare qualsiasi WSDL fornito in anticipo. Al contrario di una tecnologia di implementazione che genererà il WSDL basato sull'implementazione del servizio Web, nel qual caso il WSDL non può sempre essere personalizzato come necessario
- Profilo - Per semplificare questo pasticcio, hanno introdotto profili che sono gruppi di specifiche/capacità correlate che devono essere supportati per l'interoperabilità. Il principale è il profilo di base WS-I.
- UDDI e discovery - Sembra che alcune persone abbiano pensato che il servizio Web sarebbe stato pubblicato in un registro pubblico in modo da essere individuabile dal potenziale consumatore. Non penso che questa visione abbia acquisito molto slancio.
La migliore spiegazione che conosco per i servizi Web "primo contratto" è Spring web service module.
- 1. Come implementare i servizi Web in java
- 2. Java: RMI vs servizi Web
- 3. Confronta servizi Java RPC vs Web
- 4. Modi per ottenere efficaci tratti Java?
- 5. Alternative ai servizi Web Java/Spring
- 6. Servizi Web Java: l'asse è necessario?
- 7. servizi web, applicazione web
- 8. Come creare servizi web in Zend Framework?
- 9. Servizi Web SOAP in erlang
- 10. Come limitare le chiamate a servizi Web in un'applicazione Web Java
- 11. Versioning API servizi Web
- 12. Retrocompatibilità e servizi Web
- 13. Autenticazione reciproca con servizi Web
- 14. Consumare servizi web SOAP Play framework 2.1.2
- 15. Servizi web RESTful
- 16. Utilizzo e test dei servizi Web in Eclipse
- 17. Servizi Web SOAP pubblici
- 18. SSL bidirezionale per servizi Web su GAE (java)
- 19. Come scrivere un proxy Web in Python
- 20. libreria Java per i servizi web di test
- 21. Office365 Sharepoint Accesso ai servizi Web tramite Java - Axis2
- 22. PHP Come implementare più servizi Web simultaneamente?
- 23. Come funzionano i servizi web di Amazon?
- 24. download di file in servizi Web restful
- 25. Come proteggere i servizi Web RESTful?
- 26. Come si controllano i servizi Web?
- 27. Consumo di servizi Web SOAP in ASP.NET
- 28. Java: come scrivere file binari?
- 29. Bandiere con i servizi web
- 30. Perché i metodi statici non sono utilizzabili come operazioni di servizi Web nei servizi Web ASMX?
+1 Dettagliato ancora al punto panoramica. – CoolBeans
+1 Post molto bello - qualcosa di cui avevo disperatamente bisogno oggi, abbastanza convenientemente. – aperkins
Qualcuno può condividere le procedure di installazione, con eclissi, asse2, tomcat –