Direkte web -fjernkontroll - Direct Web Remoting
| Originale forfatter (e) | Joe Walker |
|---|---|
| Utvikler (er) | David Marginian / Dojo Foundation |
| Første utgivelse | 29. august 2005 |
| Stabil utgivelse | 3.0.2 / 11. desember 2016
|
| Oppbevaringssted |
|
| Skrevet inn | Java og JavaScript |
| Operativsystem | Kryssplattform |
| Størrelse | 1,08 MB (arkivert) |
| Type | Ajax teknologi |
| Tillatelse | Apache 2.0 -lisens |
| Nettsted |
directwebremoting |
Direct Web Remoting , eller DWR , er et Java open source- bibliotek som hjelper utviklere med å skrive nettsteder som inkluderer Ajax- teknologi. Det tillater kode i en nettleser å bruke Java -funksjoner som kjører på en webserver som om disse funksjonene var i nettleseren. DWR -prosjektet ble startet av Joe Walker i 2004, 1.0 utgitt 29. august 2005.
applikasjon
- Kode for å tillate JavaScript å hente data fra en servlet -basert webserver ved hjelp av Ajax -prinsipper.
- Et JavaScript -bibliotek som gjør det enklere for nettstedutvikleren å dynamisk oppdatere nettsiden med de hentede dataene.
DWR tar en ny tilnærming til Ajax ved dynamisk å generere JavaScript -kode basert på Java -klasser. Dermed kan webutvikleren bruke Java -kode fra JavaScript som om den var lokal for nettleseren; mens Java -koden i virkeligheten kjører på webserveren og har full tilgang til webserverressurser. Av sikkerhetshensyn må webutvikleren konfigurere nøyaktig hvilke Java -klasser som er trygge å eksportere (som ofte kalles web.xml eller dwr.xml ).
Denne metoden for fjerning av funksjoner fra Java til JavaScript gir DWR-brukere en følelse som konvensjonelle RPC- mekanismer som RMI eller SOAP , med fordelen at den kjører over nettet uten at det krever plugin-moduler for nettlesere.
DWR anser ikke nettleseren / webserverprotokollen som viktig, og foretrekker å sikre at programmererens grensesnitt er naturlig. Den største utfordringen med dette er å gifte seg med den asynkrone naturen til Ajax med den synkrone naturen til vanlige Java -metodesamtaler.
I den asynkrone modellen er resultatdata bare tilgjengelig en stund etter at den første samtalen er foretatt. DWR løser dette problemet ved å la webutvikleren angi en funksjon som skal kalles når dataene returneres ved hjelp av en ekstra metodeparameter. Denne ekstra metoden kalles CallBack Method . Verdien som returneres fra java -funksjonen blir overført til tilbakeringingsmetoden.
Her er et eksempel på tilbakeringing:
MJavaClassOnJs.getListProducts(selectedCategory,{
callback:function(returnedList){
dwr.util.addOptions(myComboId,returnedList,"productId","productName")
}
})
Tilbakekallingen er den funksjonen inne i JSON -objektet som ble sendt som en tilleggsparameter til den eksterne funksjonen.
Med versjon 2.0 støtter DWR Comet (også kalt "Reverse Ajax) hvor Java -kode som kjører på serveren bevisst kan sende dedikert JavaScript til en nettleser.
Referanser
- ^ Carneiro Jr., Nellik (20. juni 2005). "AJAX gjort enkelt med DWR" . JavaWorld . Hentet 2020-08-06 .
- ^ a b Oversikt over DWR , hentet 2008-06-24
Bibliografi
- Zammetti, Frank (25. januar 2008), Practical DWR 2 Projects (1. utg.), Apress , s. 540, doi : 10.1007/978-1-4302-0556-2 , ISBN 978-1-59059-941-9