28.01. (1) Čitanje i upis u tekst fajl, (2) čitanje XML-a, (3) WEB SERVISI
1. čas: Čitanje iz tekst fajla i upis u tekst fajl ( u web aplikaciji, ASP.NET, Visual Studio )
(deo 1) Čitanje iz tekst fajla
U narednom videu je zadatak koji bi i inače radili na času u školi.
(U videu se radi u Web Developeru, koji i inače ima manje opcija nego full Visual Studio sa kojim mi radimo.)
Razlika u odnosu na video je sledeća:
- Kreirati ASP.NET Web aplikaciju (.NET Framework - > Empty web page)
- desni taster miša na naziv projekta: Add new item - Web page, za dodavanje stranice na kojoj radimo
- i dalje radimo kao na videu
(deo 2) Upis u tekst fajl - nastavak zadatka
Nastavljamo zadatak: Isti predavač je na Youtube postavio snimak u kojem se radi drugi deo zadatka - upis u tekstualni fajl. Pošto je rad u Web developeru, a mi radimo u Visual Studiju, postoje malecke razlike u našem radu, i to je naglašeno u sledećem
tekstu koji je naveden pre samog snimka.
- U našoj web formi radimo našu verziju zadatka.
- Kreirati unutar forme (između tagova <form> i </form>) deo ograničen sa tagovima <div> i </div>.
- U taj deo ćemo smestiti naslov: <h2> Upis učenika </h2> i
- nakon toga dodati html tabelu (to se objašnjava na oko minut od početka video snimka)
- U tabelu uneti oznake: Ime, Prezime, Razred (kao u snimku), kao u textBox-ove, i sve to podesiti na isti način kao u snimku.
- Dodati Button unutar forme posle tabele a pre kraja forme (posle </table> a pre </form>)
- Na dugme postaviti ista podešavanja kao u snimku
- dvoklikom na dugme okruženje vas vodi do dela gde ćete da upišete šta se dešava kada se klikne na njega. Dalje je sve skoro isto kao na snimku:
2. čas: Prikaz podataka iz XML fajla u GridView kontroli
( u web aplikaciji, ASP.NET, Visual Studio ) - na malo drugačiji način nego u prethodnoj lekciji
Kreirajte novu aplikaciju, ali ovaj put da nije prazna, već da ima web forme i pokušajte da uradite zadatak kao u video snimku
Novo gradivo:
3. čas: Web servisi
Šta su web servisi?
Često ćete naići na definiciju da se pod web servisom može podrazumevati bilo koja web aplikacija koja je dostupna preko mreže i koja koristi standardizovani XML sistem poruka za razmenu podataka. Razmena funkcioniše tako da korisnik poziva Web servis
slanjem upita u XML formatu, a server u istom formatu vraća rezultat obrade.
Web servis je aplikacija smeštena na nekom serveru, koja je pored osnovne namene dizajnirana da podrži interakciju između dve mašine preko mreže i omogući razmenu informacija između njih.
Web servisi predstavljaju osnovne gradivne blokove koji su rasploživi na mreži i koji mogu da urade ono što vama u tom trenutku treba. To mogu biti neki resursi koji se adresiraju primenom URL-a koji vraća informaciju korisniku koji želi da je
koristi.
Na primer, ako trebate obaviti neki programski zadatak, a previše ste zauzeti (ili niste poludeli da ponovo izmišljate toplu vodu), možete iskoristiti usluge web servisa, kojem će vaša stranica pristupiti putem interneta. Slanjem zahteva sa parametrima web servisu trebalo bi da dobijete odgovor koji će sadržati rezultat vašeg zahteva.
Web usluge koje koriste programeri softvera obično se odnosi na operaciju koja se izvodi na udaljenom serveru i poziva pomoću XML / SOAP specifikacije.Glavni protokol za transport podataka između web servisa i klijenta je HTTP, iako je moguće je koristiti i druge protokole. Format za prenos podatak je XML ili JSON.
Čak postoji rastući trend kod pragmatičnih programera da koriste Plain Old XML uz još neke protokole (SOAP, REST, ...). Ovaj servis koristi “sirov” XML za prenos podataka, a GET i POST metode za komunikaciju. Kada se kaže da koristi
sirov XML misli se nije obavijen nikakvim drugim omotom (eng envelope) nekog message protokola.
XML Web Service je posebna vrsta web aplikacije koja:
- se nalazi na web serveru;
- objavljuje web metode koje mogu pozvati vanjski klijenti;
- čeka na dolazne HTTP zahteve, koji su naredbe za pozivanje web metoda;
- izvršava web metode i vraća rezultate.
Smatra se da je svaki servis i web servis ako je:
- Dostupan preko interneta ili (interne mreže)
- Koristi stadndardizovan sistem poruka
- Prepoznatiljv je od strane mehanizma za pretragu
- Nije vezan za operativni sistem ili programski jezik
Principi koji stoje iza web usluga su iznenađujuće jednostavni:
- osoba zadužena za web servis određuje format zahteva za svoj web servis i njegove odgovore
- bilo koji računar na mreži šalje zahtev web servisu
- web servis obrađuje zahtev, izvodi neku radnju, a zatim šalje odgovor
Ova radnja može biti, na primer, prikaz cene određenog proizvoda, vremenska prognoza, prevođenje teksta sa jednog jezika na drugi ili provera broja kreditne kartice.
Kako sve to funkcioniše?
Zamislite da treba da isprogramirate neki web sajt i klijent vas zamoli da dodate na web sajt novu funkciju: potrebno je dodati validaciju poštanskog broja u formular za registraciju korisnika.
Za ovu proveru, trebalo bi napraviti bazu podataka svih poštanskih brojeva svih 30 zemalja u kojima data kompanija posluje, a zatim proveriti da li odgovara poštanski broj gradu koji je naveden prilikom registracije. A vi nemate te podatke . . .
Umesto da se kupuje baza tih podataka, i da sami pišete gomilu koda, . . . , samo potražite odgovarajući web servis koji bi mogao odraditi traženi posao umesto vas. ... Recimo da pretražujete na www.uddi.org, i nakon pretrage pronađete odgovarajući web servis napravljen od strane XYZ Corp.
Prvo ćete da pažljivo razmotrite definiciju formata web servisa (definicija je napisana na WSDL-u (Web Services Description Language)), pa proverite da li servis radi upravo ono što vam treba. Zatim pitate svoje kolege o reputaciji XYZ Corp. , pa ako saznate da je solidan, onda kontaktirate XYZ sa pitanjem o ceni, pa ako je cena pristupa servisu pristupačna za vaš budžet, napišete jednostavnu JSP stranicu za svoju stranicu koja se na primer zove web servis XYZ Corp, i ... stranica dobija trenutni poštanski poštanski broj.
Drugi Primer: Da bi dobio informacije o trenutnoj temperaturi, klijent (npr. mobilna aplikacija) šalje zahtev serveru sa imenom grada za koji želi da dobije trenutnu temperaturu. Server obrađuje zahtev u skladu sa dobijenim podacima, odnosno preuzima iz baze trenutnu temperaturu za traženi grad i šalje je nazad mobilnoj aplikaciji, koja zatim prikazuje temperaturu
Razlika između web aplikacije i web servisa:
Razlika između tradicionalnih web aplikacija i web servisa je u tome što web servisi pružaju samo podatke i ne zanima ih kako izgleda korisničko okruženje. Na primer, na nekoj web stranici može biti prikazana vremenska prognoza koja je realizovana
kroz web uslugu koja vraća XML dokumente (neki web servis).
Za razliku od tradicionalne web aplikacije, web servis nema korisničko okruženje. Umesto toga, ima programsko okruženje, odnosno web servis pruža funkcije (web metode) koje se mogu pozvati na daljinu (na primer, preko Interneta). Web usluga nije namenjena za pružanje usluga krajnjim korisnicima. Njegov posao je pružanje usluga drugim aplikacijama, bilo da su to web aplikacije, GUI aplikacije ili konzolne aplikacije.
Web usluga može pružiti informacije u stvarnom vremenu o cenama dionica, proveriti kreditne kartice ili dati vremensku prognozu.
Web usluge nisu vlasništvo određene kompanije. To je industrijski standard baziran na otvorenim protokolima (SOAP, HTTP, itd.). Web usluge su raspoređene na različitim platformama (uključujući servere koji su na Windows-u ili UNIX-u). Web servisi se mogu razviti korištenjem mnogih razvojnih alata (od tekst editore pa sve do Microsoft Visual Studija).
Većina metoda web usluga se pozivaju HTTP zahtjevima koji sadrže SOAP poruke. SOAP je XML vokabular za pozivanje udaljenih procedura preko HTTP-a i drugih protokola ( SOAP pogledajte ako želite na sledećoj stranici http://www.w3.org/TR/SOAP).
Reference: