ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. «Τεχνολογία Web Services»



Σχετικά έγγραφα
ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services

Περιεχόμενα. Πρόλογος... xiii

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture)

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 9: Web Services. Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

ΥΠΗΡΕΣΙΑ «TAXISNET» - ΗΛΕΚΤΡΟΝΙΚΗ ΥΠΟΒΟΛΗ ΤΩΝ ΦΟΡΟΛΟΓΙΚΩΝ ΔΗΛΩΣΕΩΝ ΓΙΑ ΤΟ ΤΜΗΜΑ ΕΣΩΤΕΡΙΚΩΝ ΠΡΟΣΟΔΩΝ ΚΑΙ ΤΗΝ ΥΠΗΡΕΣΙΑ ΦΟΡΟΥ ΠΡΟΣΤΙΘΕΜΕΝΗΣ ΑΞΙΑΣ ΤΟΥ

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Σχεδίαση και Ανάπτυξη Ιστότοπων

Τεχνολογίες Παγκόσμιου Ιστού. 1η διάλεξη

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

To λεξικό του Internet

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών. (και το Διαδίκτυο)

SGML (Standard Generalized Markup Language) HTML (HyperText Markup Language) XML (extensible Markup Language)

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

Βασικές Έννοιες Web Εφαρμογών

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies)

Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html. Χρ. Ηλιούδης

Πλοήγηση www / Με τον Internet Explorer

ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΙΣΤΟΤΟΠΩΝ

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών

<address>αδριανείου 2, Νέο Ψυχικό, 11525, Αθήνα</adderss> <address>

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

6.2 Υπηρεσίες Διαδικτύου

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών.

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Ανάπτυξη Υπηρεσίας Τηλεκπαίδευσης σε ΙP Δίκτυα. Υλοποίηση Σύγχρονης Τηλεκπαίδευσης

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο

7.11 Πρωτόκολλα εφαρµογής

της πληροφορίας Λίνα Μπουντούρη Εθνικό Κέντρο Τεκμηρίωσης 13ο ΠανελλήνιοΣυνέδριοΑκαδημαϊκών Βιβλιοθηκών - Κέρκυρα 2004

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I

Ενότητα 8. Εισαγωγή στην Πληροφορική. Internet: Τότε και Τώρα. Κεφάλαιο 8Α. Τρόπος Λειτουργίας Internet. Χειµερινό Εξάµηνο

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

ΝΤUA. Τεχνολογία Πολυμέσων

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δίκτυα Υπολογιστών

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7]

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

Περιεχόμενα. Γαβαλάς Δαμιανός Τρέχον status της HTML

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Κεφάλαιο 6ο ΕΠΙΠΕΔΟ ΕΦΑΡΜΟΓΗΣ. Εισαγωγή

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

Ανάπτυξη Υπηρεσίας Καταλόγου LDAP με τα στοιχεία του προσωπικού του TEI Πειραιά. Νίκος Πασσαράς. Εισηγητής: Πρεζεράκος Γεώργιος

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Μεταπτυχιακή Διατριβή

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

ΜΑΘΗΜΑ 4 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7

Κεφάλαιο 9: Διαδίκτυο, Web 2.0 και Web X.0. Εφαρμογές Πληροφορικής Κεφ. 9 Καραμαούνας Πολύκαρπος 1

Προγραμματισμός ΙI (Θ)

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

(Blended Executive Learning)

Κατανεμημένα Συστήματα με Java. Ενότητα # 18: Υπηρεσίες Ιστού Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΚΕΦΑΛΑΙΟ 17: Web Services Εισαγωγή

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head>

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP

Επαναληπτικές Ασκήσεις Μαθήματος

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. Internet -

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ

Network Address Translation (NAT)

Πρωτόκολλα Διαδικτύου

Περί δικτύων. Δρ. Ματθαίος Πατρινόπουλος

Δημιουργία. Ιστολογίου (blog) 7/5/2015. Χρυσάνθη Γιομέλου ΚΔΒΜ ΝΙΚΑΙΑΣ

Ανάπτυξηλογισμικού υλοποίησης του ανοικτού πρότυπου EPCALEv1.1 για εφαρμογές RFID

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Κάντε κλικ για έναρξη

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Στρατηγική ανάπτυξη δικτυακού κόμβου

Εισαγωγή στην πληροφορική

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Σημασιολογικός Ιστός (Semantic Web) - XML

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Κεφάλαιο 7.3. Πρωτόκολλο TCP

Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client

Transcript:

ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ (ΤΕΙ) ΜΕΣΟΛΟΓΓΙΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «Τεχνολογία Web Services» Σπουδαστές : Κυριακούλιας Κωνσταντίνος Ντελής Επαμεινώνδας Επιβλέπων : Συρμακέσης Σπύρος, Επίκουρος Καθηγητής Μεσολόγγι, Σεπτέμβριος 2006

Περιεχόμενα 1. Εισαγωγή στο Internet...Error! Bookmark not defined. 1.1 Η Ανάπτυξη του Internet...Error! Bookmark not defined. 1.2 Εισαγωγή στην HTML...Error! Bookmark not defined. 1.3 Μια μικρή αναφορά στο World Wide Web (WWW)...Error! Bookmark not defined. 2. Τι είναι τα Web Services...Error! Bookmark not defined. 2.1 Πλεονεκτήματα των Web Services...Error! Bookmark not defined. 2.2 Δημιουργία των Web Services...Error! Bookmark not defined. 2.3 Υπηρεσιοκεντρική Αρχιτεκτονικη...Error! Bookmark not defined. 3. Τεχνολογίες των Web Services...Error! Bookmark not defined. 3.1 Λιγα λόγια για το HTTP...Error! Bookmark not defined. 3.2 Η γλώσσα σήμανσης (XML)...Error! Bookmark not defined. 3.2.1 DTD...Error! Bookmark not defined. 3.2.2 Schemas...Error! Bookmark not defined. 3.2.2.1 XML(XML Parsers)...Error! Bookmark not defined. 3.2.3 XSLT / XSLFO...Error! Bookmark not defined. 3.2.4 DOM / SAX...Error! Bookmark not defined. 3.3 Πρωτόκολλο SOAP...Error! Bookmark not defined. 3.4 Γλώσσα περιγραφής διαδικτυακών υπηρεσιών (WSDL)...Error! Bookmark not defined. 3.5 Πρωτόκολλο UDDI...Error! Bookmark not defined. 4. Ασφάλεια των διαδικτυακών υπηρεσιών...error! Bookmark not defined. 4.1 Εργαλεία για υλοποίηση των Web Services...Error! Bookmark not defined. 4.1.1 Apache Axis...σελ 76Error! Bookmark not defined. 4.1.2 IBM Web Services Toolokit...Error! Bookmark not defined. 4.1.3 Microsoft SOAP Toolokit 2...Error! Bookmark not defined. 4.2 Οι Web Services στο περιβάλλον του NET...Error! Bookmark not defined. 4.3 Παράδειγμα μιας Web Services...Error! Bookmark not defined. 5. Rss - Feed...Error! Bookmark not defined. 5.1 Το μέλλον των Web Services...Error! Bookmark not defined. 6. Παραδείγματα υλοποιημένων Web Services...Error! Bookmark not defined. Βιβλιογραφία...Error! Bookmark not defined. 2

1. Εισαγωγή στο Internet Σε αντίθεση με τα καλά ορισμένα και αμετάβλητα σύνορα μιας χώρας, τα σύνορα του Internet είναι σε μια συνεχή κατάσταση ροής και ανανέωσης. Το Internet, σαν εικονικό κομμάτι software, computing και networking, είναι απείρως ανανεώσιμο και ευπροσάρμοστο, με αποτέλεσμα να μεγαλώνει και να αλλάζει κάθε μέρα. Ο ευμετάβλητος χαρακτήρας του Internet και η διείσδυση του σε κάθε γωνιά της υφηλίου, έχουν δημιουργήσει ένα πλούσιο και συχνά απρόβλεπτο περιβάλλον στο οποίο τα κοινά ενδιαφέροντα και η εμπειρία είναι μερικές φορές περισσότερο σημαντικά από τα γεωπολιτικά και κοινωνικά σύνορα που διαχωρίζουν τους χρήστες του. Αυτή η μίξη έχει δημιουργήσει μια συλλογή από παγκόσμια χωριά με την ασυνήθιστη ιδιότητα ότι πολλοί άνθρωποι στο Internet μένουν σε περισσότερα από ένα παγκόσμια χωριά κάθε χρονική στιγμή. Η εμβέλεια, η πολυπλοκότητα και η μεγαλοπρέπεια του συστήματος που έχουμε σήμερα δεν είχε ποτέ προβλεφθεί. Κοιτάζοντας το Internet του σήμερα, ακόμα με τα μάτια της δεκαετίας του 90, θα μπορούσε κανείς μόνο να αναρωτηθεί για αυτή του την εξέλιξη. Και εξέλιξη είναι ο σωστός όρος. Όπως και η σύνθετη ζωή σχηματίζεται από άλλες απλούστερες, μέσα από γενετικά πειράματα, έτσι και το Internet είναι ένα αναπτυσσόμενο και συστηματοποιημένο εικονικό περιβάλλον. Αλλά, με τη ματιά του σήμερα, αποτελεί επίσης και μία επανάσταση γιατί μεταμορφώνει την κουλτούρα μας. Η ελευθερία της έκφρασης και πρόσβασης σε πληροφορίες στο Internet είναι επαναστατική. Κατά κάποιο τρόπο, το Internet έχει κάνει κάθε δημιουργό, εκδότη δίνοντας ένα νέο νόημα στη φράση «desktop publishing». Οι κοινωνικές και επιχειρηματικές μας ενέργειες επηρεάζονται ορατά. Το εκπαιδευτικό μας σύστημα μπορεί να υποβληθεί σε αλλαγές καθώς εργαλεία για παραγωγή και διαμοίραση γνώσης αναμειγνύονται με νέους τρόπους σφυρηλάτησης μαθητών σε μαθησιακές εμπειρίες. 3

Ήδη οι νομοθέτες αναρωτιούνται για το τι μπορεί να προκύψει από ένα online σώμα εκλεκτόρων. Υπάρχουν βέβαια μειονεκτήματα όσον αφορά τη ροή της πληροφορίας στο Internet. Το πιο προφανές είναι η δυσκολία της εύρεσης απλών αντικειμένων στις απέραντες θάλασσες του διαθέσιμου υλικού. Οι δέκτες της πληροφορίας έπρεπε να γίνουν πραγματικά επιλεκτικοί και σκεπτόμενοι ταξιδιώτες, να ταξινομούν και να αποτιμούν την πληροφορία που τους είναι διαθέσιμη ασταμάτητα, καθώς πλέουν στους ηλεκτρονικούς ωκεανούς και ψάχνουν για πολύτιμο περιεχόμενο. Πράγματι, σαν χρυσός στον ωκεανό, το πολύτιμο περιεχόμενο του Internet είναι τεράστιο σε ποσότητα αλλά δύσκολο να βρεθεί και ακόμη περισσότερο γιατί αυτό αναπαράγεται καθημερινά. Το browsing δίνει νέα ώθηση σε προσπάθειες για εύρεση και τοποθέτηση νέων επιχειρηματικών ευκαιριών στον κατάλογο της ανθισμένης θάλασσας πληροφορίας. Ήδη ξέρουμε ότι υπάρχουν κάποια ανεπιθύμητα μειονεκτήματα, και πολλοί φαίνονται να προβληματίζονται από την ελευθερία της έκφρασης που το Internet προκαλεί και υποστηρίζει. Έχουν υπάρξει προσπάθειες για κάποιου είδους λογοκρισία ή τουλάχιστον για κάποιο έλεγχο εισόδου για τους ηλικιακά μικρότερους που έχουν πρόσβαση στο Internet. Άλλοι κατηγορούν τη χρήση του δικτύου σαν σημείο συσπείρωσης ομάδων των οποίων οι απόψεις και οι συμπεριφορές, θεωρούνται αντικοινωνικές, καταστροφικές ή ακόμη και προδοτικές. Το τεχνικό και νόμιμο framework της λειτουργίας του Internet θα πρέπει να αντιμετωπίσει την αναταραχή της αστραπιαίας ανάπτυξης μέσα από τη δικιά του διαδικασία εξέλιξης. Αλλά πολλά από αυτά που οι χρήστες μπορούν να βρουν, τα οποία προσφέρονται σαν αποτέλεσμα εργασίας, αγάπης και μοιρασιάς, είναι αμφίβολης ποιότητας και αξίας. Μπορούμε χωρίς αμφιβολία να περιμένουμε για επεκτάσεις του Internet που θα οδηγήσουν σε πλουσιότερα, περισσότερο εκφραστικά μοντέλα επικοινωνίας, συμπεριλαμβανομένου βελτιωμένου ήχου και γραφικών, όπως επίσης ελπίζουμε ότι οι χρήστες θα ωφεληθούν από αυτά τα εργαλεία για ανθρωπιστικούς και έξυπνους σκοπούς. Ο WWW εκτοξεύθηκε στο Internet μέσα από μια διαδοχική έκρηξη νέων εφαρμογών, μειώνοντας την φαινομενική πολυπλοκότητα της εύρεσης και της χρήσης πληροφοριών αυξάνοντας συγχρόνως την μεγαλοπρέπεια της βασικής του δομής. Το 4

Internet έχει εξελιχθεί με τη βοήθεια του WWW ο οποίος θα συνεχίσει σχεδόν σίγουρα να αναπτύσσεται προς σημαντικότερες δυνατότητες. Η πρόσφατη επίδειξη ανταλλαγής dynamic software από server σε client ή το αντίθετο σηματοδοτεί μια νέα περίοδο με περισσότερη ευελιξία. Αυτά τα ηλεκτρονικά και computer-based εργαλεία καλούνται «οι τεχνολογίες της ελευθερίας». Φυσικά αυτό έχει το μειονέκτημά του. Σε αυτή τη φράση είναι κρυμμένη η καλή και η μη καλή πλευρά της ανθρώπινης φύσης. Η φιλανθρωπία και η συντροφικότητα διασταυρώνονται με την αγένεια και την απληστία, αλλά αυτό είναι το τίμημα που πληρώνουμε για την ελευθερία της πληροφορίας. Μακροχρόνιοι κάτοικοι του δικτύου παλεύουν με τα μειονεκτήματα που προέκυψαν από τη μετατροπή της μικρής αυτής πόλης, με τη φιλική ατμόσφαιρα των παλαιότερων χρόνων, σε μια μεγαλούπολη που η φασαρία της φαίνεται να μην έχει όρια. Καθώς οι επιχειρηματικές δραστηριότητες μέσω Internet ωριμάζουν, αρχίζει να δίνεται περισσότερη προσοχή στην ασφάλεια, στην προστασία των προσωπικών δεδομένων και στην εξουσιοδότηση των συναλλαγών που λαμβάνουν χώρα στο περιβάλλον του Internet. Το Internet φαίνεται να πάλλεται από την ενέργεια και τις ιδέες εκατομμυρίων προβλημάτων και καταναλωτών. Ας σκεφτούμε ένα σημαντικό πλεονέκτημα του Internet : την αυξανόμενη χρήση των αγγλικών. Και όχι μόνο. Πολλές άλλες γλώσσες χρησιμοποιούνται στο Internet και για το λόγο αυτό έγινε η πρόσφατη εργασία για να βελτιωθούν τα τεχνικά standard που χρησιμοποιούνται στα e-mail και σε άλλα επικοινωνιακά πρωτόκολλα για να εξυπηρετηθεί όχι μόνο η χρήση του ASCII (σύνολο χαρακτήρων βασισμένο στην αγγλική γλώσσα). Πράγματι, κυρίως δύο φαινόμενα παρατηρούνται. Τα αγγλικά υποστηρίζονται ευρέως, αλλά παράλληλα και άλλες γλώσσες γίνονται κοινές με ολοένα αυξανόμενο τρόπο. Πολλές εκφράσεις που βρίσκονται στο Internet είναι πολύγλωσσες.(«πατήστε το κουμπί για αγγλικά, αυτό είναι για γαλλικά, και αυτό για ιαπωνικά»). Με αυτόν τον τρόπο, θα διατηρηθεί και επίσης θα παραταθεί η εκτίμηση και η χρήση των άλλων γλωσσών. Το Internet θα διατηρήσει και θα παρατείνει την μεγαλοπρέπεια της παγκόσμιας, πολιτιστικής κληρονομιάς. 5

Δεν μπορεί να υπάρξει τυπωμένος κατάλογος που να περιέχει όλο το Internet. Και αυτό γιατί απλώς το Internet αλλάζει τόσο γρήγορα, με τόσες νέες βάσεις δεδομένων, υπηρεσίες, διευθύνσεις και projects τα οποία δεν μπορούν να ενθυλακωθούν καθαρά σε κάποιο σύνολο εντολών ή σταθερών. Όσο χρησιμοποιεί κανείς το Internet, τόσο συνειδητοποιεί ότι κάθε μέρα αποτελεί μια ολοένα αυξανόμενη διαδικασία εκμάθησης. To Internet (λέξη που προκύπτει από την λέξη Internetwork) αποτελεί το μεγαλύτερο δίκτυο υπολογιστών σε παγκόσμια κλίμακα. Είναι η συνάθροιση χιλιάδων δικτύων υπολογιστών που βρίσκονται διασκορπισμένα και εξαπλωμένα παντού σε όλον τον κόσμο. Το Internet είναι ένα δίκτυο δικτύων υπολογιστών. Δίκτυο Α Δίκτυο Γ Δίκτυο Β Για να επικοινωνήσουν μεταξύ τους δύο υπολογιστές, το Internet χρησιμοποιεί συχνά δύο πρωτόκολλα, το TCP και το IP. Tα πρωτόκολλα αυτά ρυθμίζουν τα πάντα για την επικοινωνία και τη ροή της πληροφορίας μεταξύ των υπολογιστών 6

1.1 Η Ανάπτυξη του Internet Το Internet είναι ένα απέραντο, διευρυμένο δίκτυο το οποίο φτάνει σε computer sites σε όλο τον κόσμο. Κάποιες πηγές αναφέρουν την διείσδυση του Internet σε περισσότερες από 100 χώρες, με χρήση περισσότερων από 80 εκατομμύρια host computers. Μια πρόσφατη έρευνα προσπάθησε να εντοπίσει ακριβώς την ανάπτυξη του Internet εξετάζοντας domains σε όλο το Internet. Βρέθηκε ότι υπάρχουν περίπου 812 εκατομμύρια ενεργοί χρήστες του Internet, συμπεριλαμβανομένου παροχέων υπηρεσιών αλλά και αυτών που χρησιμοποιούν εργαλεία όπως το Telnet και το FTP για πρόσβαση. Όλα αυτά βέβαια έχουν υπολογιστεί με την ελαστική φύση των υπολογισμών. Είναι εύκολο να μπερδευτεί κάποιος, όταν οι υπολογισμοί σχετικά με την ανάπτυξη του Internet πολλαπλασιάζονται τόσο γρήγορα όσο και οι νέοι host computers που συνδέονται στο ίδιο το δίκτυο. Αλλά αν και δεν ξέρουμε με ακρίβεια πόσοι άνθρωποι χρησιμοποιούν το Internet, μπορούμε τουλάχιστον να στοχεύσουμε με ακρίβεια στην ιστορία του. Από το 1985, περίπου 100 δίκτυα σχηματίστηκαν στο Internet. Από το 1989, αυτός ο αριθμός αυξήθηκε σε 500. Βρέθηκε ότι 2.218 δίκτυα συνδέθηκαν μέχρι τον Ιανουάριο του 1990. Από τον Ιούνιο του 1991, αυτά αυξήθηκαν σε 4.000, και όπως έχουμε δει οι συνδέσεις το 1995 αυξήθηκαν 10 φορές αυτό το ποσό. Το 1995, οι χρήστες του Internet έφτασαν τα 40 εκατομμύρια και ξεπέρασαν τα 100 εκατομμύρια μέχρι το τέλος του 1998. Συνδυάζοντας αυτή την πληροφορία με ένα τεράστιο υπολογιζόμενο αριθμό προσωπικών υπολογιστών σε χρήση παγκοσμίως, αντιλαμβανόμαστε ότι πρόκειται για μια κατάσταση με δραματικές προοπτικές. Λίγοι από τους προσωπικούς υπολογιστές σε ένα μέσο σπίτι, για παράδειγμα, είναι συνδεδεμένοι σε δίκτυο. Αλλά πολλοί χρήστες σε σπίτια και επιχειρήσεις θα ήθελαν να προσπελάσουν τις πλούσιες πηγές του Internet. Η λύση: ένα modem και ένας λογαριασμός dial-up. Μέχρι πριν λίγα χρόνια ήταν δύσκολο να προσπελαστεί το Internet με βάση το dial-up, αλλά η αύξηση του παροχέων υπηρεσιών Internet έχει βελτιώσει αυτή την 7

κατάσταση. Τον Απρίλιο του 1995, η CompuServe παρείχε πρόσβαση σε όλους τους κόμβους της μέσω του Point-to-Point πρωτοκόλλου, κάτι που σήμαινε ότι θα μπορούσε κάποιος να καλέσει έναν CompuServe αριθμό κλήσης για να πετύχει μια άμεση σύνδεση στο Internet. Παλαιότερα, η CompuServe είχε κάνει διαθέσιμες βασικές υπηρεσίες Internet, όπως το File Transfer Protocol (για «κατέβασμα» αρχείων) και τα USEnet newsgroups (παγκόσμιες συζητήσεις πάνω σε σχεδόν κάθε θέμα) μέσα από ένα σύστημα gateway. Η America Online έλαβε μέρος στη διαμάχη με προκλητική ενέργεια. Παρέχοντας ήδη ηλεκτρονικό ταχυδρομείο (electronic mail) και πρόσβαση USEnet, η υπηρεσία προχώρησε γρήγορα προς την υποστήριξη του World Wide Web, όπως είχε κάνει η Prodigy παρουσιάζοντας τον δικό της Web browser το 1995. Ο World Wide Web, ο οποίος επιτρέπει την επιλογή link για προσπέλαση δεδομένων, ανεξάρτητα από το που βρίσκονται αυτά ανά την υφήλιο, είναι προφανώς ένας μεγάλος οδηγός για πολλούς από τους νέους χρήστες του Internet. Πράγματι, η χρήση του World Wide Web μεγαλώνει γρηγορότερα από ότι το ίδιο το Internet. Σύμφωνα με έγκυρους αναλυτές : Η χρήση του Internet κατά μέσο όρο διπλασιάζεται σταθερά κάθε χρόνο από το 1981. Από το 1981 ως το 1995, ο αριθμός των κόμβων (στους οποίους οι χρήστες συνδέονται για να επικοινωνήσουν με το δίκτυο) αυξήθηκε από περίπου 500 χιλιάδες σε 6,5 εκατομμύρια. Ο τρέχων αριθμός αύξησης είναι 500 χιλιάδες νέοι κόμβοι ανά μήνα. Οι χρήστες, από τους οποίους το 70% βρίσκεται στις ΗΠΑ, καλύπτουν 30 χιλιάδες δίκτυα σε 72 χώρες. Οι στατιστικές για το ποιοι χρησιμοποιούν το Internet περισσότερο δείχνουν: Η συντριπτική πλειοψηφία αυτών που χρησιμοποιούν το Internet είναι άντρες με υψηλό εισόδημα. Στην Ευρώπη το 88% των χρηστών είναι άντρες ηλικίας 22-36 ετών και χρησιμοποιούν το δίκτυο 6-10 ώρες την εβδομάδα, κυρίως μέσω των ιστοσελίδων Web. 8

Στις ΗΠΑ, το 44% των κόμβων ανήκουν σε ιδιωτικές επιχειρήσεις (που παρέχουν πρόσβαση σε συνδρομητές), ενώ το 36% ανήκουν σε εκπαιδευτικά ινστιτούτα. Το 60% των 500 πλουσιότερων επιχειρήσεων των ΗΠΑ έχουν παρουσία στο Internet και το μεγαλύτερο μέρος της τρέχουσας ανάπτυξης οφείλεται στον τομέα του εμπορίου. 1.2 Εισαγωγή στην HTML Ορισμός H HTML (HyperText Markup Language) είναι μία περιγραφική markup γλώσσα η οποία χρησιμοποιείται για την κατασκευή documents τα οποία είναι ανεξάρτητα από την πλατφόρμα πάνω στην οποία μπορούν να προβληθούν. O όρος markup σημαίνει ότι σε αυτή τη γλώσσα χρησιμοποιούνται κάποια αναγνωριστικά που λέγονται tags για να μαρκάρουν το κείμενο χωρίζοντάς το σε λογικά μέρη όπως παραγράφους, πίνακες κ.τ.λ. Χαρακτηριστικά Χρησιμοποιείται για την κατασκευή Web σελίδων. Δεν είναι μια γλώσσα προγραμματισμού αλλά έχει κάποιους κανόνες (μια σύνταξη) οι οποίοι πρέπει να ακολουθηθούν προκειμένου να κατασκευαστεί ένα HTML document. Για το σχεδιασμό της επίσημης σύνταξής της, δηλαδή της HTML DTD (Document Type Definition), έχει χρησιμοποιηθεί σαν πρότυπο η SGML. Μάλιστα η HTML DTD έχει περιγραφεί με όρους της SGML. Η SGML είναι μια μεταγλώσσα (metalanguage), μία γλώσσα δηλαδή που χρησιμοποιείται για την επίσημη περιγραφή markup γλωσσών. Παρέχει ένα σύστημα τυποποίησης κειμένων (document formatting system) το οποίο οι σχεδιαστές των Web σελίδων χρησιμοποιούν για να περιγράψουν τη δομή και οργάνωση των σελίδων που κατασκευάζουν. Με τη βοήθεια των tags σε κάποια HTML σελίδα δίνεται μια δομή και πληροφορίες για την παρουσίαση του κειμένου από τον browser. Επίσης καθορίζονται κάποιες περιοχές-κλειδιά του κειμένου τα οποία χρησιμοποιούνται από τους web clients. 9

Βασικά HTML tags Το <HTML> tag εμφανίζεται κοντά στην αρχή του κειμένου και πληροφορεί τον client ότι πρόκειται για μια HTML σελίδα. Κλείνει με το </HTML> στο τέλος του κειμένου. Το <HEAD> tag που επίσης εμφανίζεται κοντά στην αρχή του κειμένου μαζί με τη βοήθεια του </HEAD> καθορίζουν ένα μέρος του κειμένου που μπορούν να γραφούν πληροφορίες για το κείμενο π.χ. για το περιεχόμενό του. Το <TITLE> tag εμφανίζεται μέσα στα HEAD tags και καθορίζει τον τίτλο του HTML κειμένου. Το <BODY> tag καθορίζει το κύριο μέρος του κειμένου. Εδώ περιέχονται και τα υπόλοιπα tags που καθορίζουν τις γραμματοσειρές, παραγράφους, λίστες. Δομή του HTML κειμένου <HTML> <HEAD> <TITLE> Pages' Title </Title> </HEAD> <BODY> This is the body of this HTML document </BODY> </HTML> 1.3 World Wide Web (WWW) ή Web O παγκοσμίως ευρύς ιστός είναι η υπηρεσία του Internet που φιλοξενεί και διακινεί τις μεγαλύτερες ποσότητες πληροφοριών από όλες τις άλλες υπηρεσίες του Internet. Το Web είναι ένα τεράστιο σύμπλεγμα, ένα αχανές νοητό δίκτυο από δεδομένα υπερμέσων (hypermedia data) που κατοικούν στους υπολογιστές του Internet και 10

δεικτοδοτούνται μεταξύ τους μέσω των διευθύνσεων των υπολογιστών στους οποίους περιέχονται συν των σχετικών τους εσωτερικών διευθύνσεων εντός των υπολογιστών αυτών. Τα δεδομένα υπερμέσων ονομάζονται και Web documents και αποτελούν το είδος της πληροφορίας που ρέει στο Web. Mερικά παραδείγματα δεδομένων υπερμέσων είναι το κείμενο (text), γραφικά (graphics), φωνή (audio) και κινούμενη εικόνα (video). Καθημερινά διακινούνται τεράστιες ποσότητες τέτοιων hypermedia data (της τάξης των εκατοντάδων Terabytes) με συνεχώς αυξανόμενες τάσεις. To Web φιλοξενείται στο Internet με την έννοια ότι το Internet (με τα πρωτόκολλα, τους μηχανισμούς του και με όλη την τεχνολογία του) είναι ο δίαυλος, ο φορέας πάνω στον οποίο διακινούνται τα δεδομένα του Web. Το Web είναι η συνάθροιση του πρωτoκόλλου HTTP και της γλώσσας HTML. Το HTTP (HyperText Transaction Protocol) είναι το πρωτόκολλο που απαιτεί η υπηρεσία του Web για την επιτυχή επικοινωνία δύο υπολογιστών του Internet. Πιο συγκεκριμένα είναι το πρωτόκολλο με το οποίο γίνεται η ανεύρεση, η ανάκτηση και η αποστολή των Web documents (ή αλλιώς hypermedia data) εντός του Ιnternet. Η ανεύρεση των hypermedia data εντός του Web γίνεται με τον μηχανισμό τoυ URL (Uniform Resource Locator) που καθορίζεται από το πρωτόκολλο HTTP. Το URL είναι η διεύθυνση ενός Web document (μιας Web σελίδας) μέσα στο Web. Η HTML είναι η γλώσσα με την οποία σχεδιάζονται (κατασκευάζονται) τα hypermedia data (Web documents). Aποτελείται από tags τα οποία καθορίζουν τα διάφορα συστατικά μιας Web σελίδας (Web document). Το Web περιέχει τις παρακάτω υπηρεσίες : http, mailto, ftp, telnet, wais, news, gopher, κ.ά. Όπως και στις άλλες υπηρεσίες του Internet έτσι και στο Web δύο υπολογιστές επικοινωνούν μεταξύ τους με το μοντέλο client-server. Στο Web o client ονομάζεται Web browser. Ένας browser περιέχει parser για την μετάφραση των Web documents που στέλνει σ αυτόν ο server από την HTML μορφή και την προβολή αυτών στην οθόνη του υπολογιστή. Οι servers του Web (όπως όλοι οι servers) εξυπηρετούν ο καθένας ένα σύνολο από συγκεκριμένες υπηρεσίες του Web. Έτσι υπάρχουν oι εξής Web servers : Http Servers, Ftp Servers, κ.ά. 11

Πως λειτουργεί το WWW Το WWW είναι ακόμη ένα παράδειγμα του μοντέλου πελάτη/εξυπηρετητή, στο οποίο δικτυωμένοι υπολογιστές μοιράζονται τη δουλειά που απαιτεί μια διαδικασία. Στο WWW, η επικοινωνία μεταξύ του πελάτη και του εξυπηρετητή γίνεται σύμφωνα με το πρωτόκολλο HTTP (Hyper Text Transfer Protocol). Εμείς εκτελούμε στον υπολογιστή μας ένα πρόγραμμα πελάτη, πιθανότατα το Netscape Communicator ή το Internet Explorer. Όπως έχουμε πει, οι πελάτες για την υπηρεσία WWW ονομάζονται αναζητητές (browsers). Μέσω του browser συνδεόμαστε με έναν απομακρυσμένο υπολογιστή που περιέχει τη σελίδα που θέλουμε να δούμε και στον οποίον εκτελείται ένα άλλο πρόγραμμα που ονομάζεται εξυπηρετητής Web (Web server). Ο Web server είναι υπεύθυνος για τη διαβίβαση της σελίδας και ο browser για την παρουσίασή της στην οθόνη του υπολογιστή μας. Ο browser υποβάλλει την αίτησή του στον Web server και περιμένει μέχρις ότου έρθει η απάντηση, οπότε παραλαμβάνει τη σελίδα που ζητήθηκε, που πλέον "φορτώνεται" στη μνήμη του τοπικού μας μηχανήματος, και την εμφανίζει στην οθόνη μας. Κατόπιν η σύνδεση κλείνει. Μόλις ζητήσουμε μια άλλη σελίδα, π.χ. κάνοντας κλικ πάνω σε έναν σύνδεσμο, η ίδια διαδικασία αρχίζει ξανά. Αυτό επαναλαμβάνεται πολλές φορές, σε αντίθεση π.χ. με το FTP που διατηρεί ανοικτή γραμμή καθ όλη τη διάρκεια της σύνδεσης. Αυτός ακριβώς ο τρόπος επικοινωνίας εξηγεί και τα πολλαπλά μηνύματα που πιθανόν να βλέπουμε στην τελευταία γραμμή της οθόνης του browser όταν προσπαθεί να εμφανίσει μία Web σελίδα ("Contacting Host ", κλπ.) Η κατανομή της εργασίας μεταξύ του browser και του Web server επιταχύνει τη διαδικασία με πολλούς τρόπους, αλλά σημαίνει επίσης ότι οι δημιουργοί Web σελίδων δεν μπορούν να ελέγξουν την τελική τους εμφάνιση, η οποία εξαρτάται από το πώς είναι διαμορφωμένος ο browser. Για παράδειγμα, ο δικός μας browser μπορεί να χρησιμοποιεί τη γραμματοσειρά Times-Roman για την παρουσίαση του κειμένου, ενώ ο browser ενός άλλου χρήστη μπορεί να χρησιμοποιεί τη γραμματοσειρά Helvetica. Καθώς "σερφάρουμε" στο Internet χρησιμοποιώντας τον browser μας, προβάλλουμε στην οθόνη του υπολογιστή μας σελίδες που μπορεί να προέρχονται από πολλούς διαφορετικούς Web servers. Από την ίδια Web σελίδα μπορεί να ξεκινούν σύνδεσμοι 12

προς άλλες σελίδες που βρίσκονται διασκορπισμένες σε διάφορους Web servers ανά τον κόσμο. Έτσι καθώς επιλέγουμε συνδέσμους, ταξιδεύουμε από υπολογιστή σε υπολογιστή μέσα στον Κυβερνοχώρο του Internet. 2. Τι είναι τα Web Services Έτοιμες υπηρεσίες στο Internet οι οποίες μπορούν να χρησιμοποιηθούν από τις MME. Τα web services είναι μια καινοτομική αρχιτεκτονική με την οποία παρέχεται η δυνατότητα δημιουργίας και χρήσης ηλεκτρονικών υπηρεσιών στο διαδίκτυο με απλό και οικονομικό τρόπο. Μέχρι πρόσφατα η δημιουργία και η παροχή υπηρεσιών από επιχειρήσεις στο Internet γίνονταν με ακαθόριστο τρόπο ο οποίος διέφερε από επιχείρηση σε επιχείρηση. Έτσι, ενώ υπήρχε ένα αρκετά μεγάλο σύνολο από παρεχόμενες υπηρεσίες στο Internet, για να μπορούσε κάποιος να τις χρησιμοποιήσει θα έπρεπε για κάθε μία υπηρεσία να μελετήσει τον τρόπο με τον οποίο θα την καλέσει, να ελέγξει αν χρησιμοποιούν το ίδιο πρωτόκολλο επικοινωνίας (TCP/IP, Http, κλπ) και γενικά να προσαρμόσει όλο το σύστημά του έτσι ώστε να γίνει συμβατό με αυτό του παροχέα της υπηρεσίας. Για παράδειγμα ας υποθέσουμε ότι κάποια επιχείρηση ενδιαφερόταν να χρησιμοποιήσει μία υποτιθέμενη υπηρεσία που παρείχε το Εθνικό Κέντρο Βιβλίου και η οποία παρουσίαζε όλες τις συνοδευτικές πληροφορίες (τίτλο, εκδοτικό οίκο, τιμή κλπ) για κάποιο βιβλίο δοθέντος του κωδικού του (ISBN). Σε αυτή την περίπτωση ο προγραμματιστής της επιχείρησης θα έπρεπε στην ουσία να δημιουργήσει ένα σύστημα συμβατό με αυτό του Εθνικού Κέντρου Βιβλίου και ως προς το πρωτόκολλο επικοινωνίας αλλά και ως προς τον τρόπο κλήσης των ερωτημάτων και κατόπιν να το προσαρμόσει στις ανάγκες του συστήματος της επιχείρησης. Πολλές φορές αυτό ήταν πολύ δύσκολο αν όχι ακατόρθωτο και ακόμα περισσότερες φορές οι επιχειρήσεις σχεδίαζαν τα συστήματά τους έτσι ώστε να αποφεύγουν τέτοιου είδους συνεργασίες με ξένες πηγές για λόγους πολυπλοκότητας και γενικότερα για λόγους κόστους. Τα πράγματα όμως τα τελευταία τρία χρόνια φαίνεται να παίρνουν διαφορετική 13

τροπή αφού πλέον σχεδόν όλες οι επιχειρήσεις που δημιουργούν υπηρεσίες στο Internet βασίζονται σε μία κοινή αρχιτεκτονική ανάπτυξης, δημοσίευσης και εκμετάλλευσης των υπηρεσιών τους, όπως αυτή καθορίζεται από το W3C και που ορίζεται ως η αρχιτεκτονική των web services. Μια διαδικτυακή υπηρεσία αποτελείται από πολλές συσχετιζόμενες τεχνολογίες που τοποθετούνται σε διαφορετικό επίπεδο. Ξεκινώντας από κάτω προς τα πάνω, αναφέρουμε τα πρότυπα που χρησιμοποιούνται και τα αναλύουμε εκτενέστερα μαζί με τα θέματα ασφάλειας και διαχείρισης στις επόμενες ενότητες. Αρχικά, απαιτείται ένα πρωτόκολλο για μεταφορά πληροφοριών μέσω δικτύου, όπως το http (HyperText Transfer Protocol), το SMTP (Simple Mail Transport Protocol) ή το FTP (File Transfer Protocol). Κάθε κλήση και απόκριση της υπηρεσίας θα πρέπει να «συσκευαστεί» σε ένα μήνυμα SOAP (Simple Object Access Protocol), το οποίο μπορεί να υφίσταται επεξεργασία από κάποιες επεκτάσεις SOAP (SOAP Extensions) πριν αποσταλεί από τον αιτούντα υπηρεσία (request agent) και παραδοθεί στον πάροχο υπηρεσίας (provider agent) και αντίστροφα. Τα μηνύματα που ανταλλάσσονται και ο τρόπος που γίνεται η ανταλλαγή περιγράφονται λεπτομερώς στο αρχείο WSDL (Web Services Description Language). Επόμενο βήμα είναι η ανακάλυψη των υπηρεσιών, για την οποία υπάρχουν τρεις προσεγγίσεις : η ύπαρξη ενός καταλόγου καταγραφής και δημοσίευσης των υπηρεσιών με τη μορφή υπηρεσίας καταγραφής (registry), όπως το UDDI (Universal Description, Definition and Integration) και το DISCO (Microsoft Discovery), που αποτελεί την πιο διαδεδομένη λύση, η ύπαρξη ιστοσελίδων παραπομπής σε υπηρεσίες, τύπου http://www.amazon.com και πρότυπα SOAP, WSDL, UDDI και DISCO έχουν γραφεί σε γλώσσα επισήμανσης XML (extensible Markup Language) και ενδεχομένως υπακούουν σε κάποιο έγγραφο DTD (Document Type Definition) ή XML Schema. 14

Σχήμα : Δομή των Web Services Η τεχνολογία των Web Services αποτελεί την πιο εξελίξιμη και νεωτεριστική Σχήμα : Αρχιτεκτονική των Web Services 15

τεχνολογία του μέλλοντος, παγκοσμίως. Ο προσδιορισμός της αποτελεί προϊόν συνεργασίας κολοσσών της πληροφορικής, όπως η Microsoft, η Sun Microsystems και η IBM και αποτελεί την ιδανική λύση για διεπιχειρησιακές εφαρμογές και συνεργασίες (Business-to-Business, B2B). Τα Web Services στηρίζονται σε ευρέως διαδεδομένα πρότυπα της βιομηχανίας της πληροφορικής και δυνητικά συνιστούν τον βέλτιστο τρόπο για την διασύνδεση των επιχειρησιακών εφαρμογών τόσο μέσα στο εταιρικό δίκτυο (ενδοδίκτυο), αλλά και στο διαδίκτυο. Με τα Web Services μπορούν να διασυνδεθούν και να επικοινωνήσουν εσωτερικές εφαρμογές όπως π.χ. το Λογιστικό πακέτο με το πακέτο Διαχείρισης Πελατειακών Σχέσεων μέσω του ενδοδικτύου. Επίσης, μπορούν να χρησιμοποιηθούν για την διασύνδεση, την συνεργασία και την ανταλλαγή πληροφοριών μεταξύ ενδοεπιχειρησιακών εφαρμογών και εφαρμογών τρίτων, όπως π.χ. των συνεργατών και προμηθευτών σας μέσω του διαδικτύου. Στηρίζονται στην XML και άλλες καινοτόμες τεχνολογίες και προσφέρουν ένα απλούστερο τρόπο για την επίτευξη κατανεμημένων εφαρμογών (distributed computing), διευκολύνοντας τα διασυνδεδεμένα συστήματα να ανταλλάξουν πληροφορίες και να συνδιαλλαγούν μεταξύ τους. Η Forward e-business αξιοποιώντας την εφαρμοσμένη εμπειρία της σε Java και XML εισέρχεται δυναμικά στον χώρο των Web Services, προσφέροντάς οικονομικές, ποιοτικές και ευέλικτες λύσεις, που θα οδηγήσουν οποιαδήποτε επιχείρηση στον δρόμο των παγκόσμιων εξελίξεων. 2.1 Πλεονεκτήματα των web services Η αρχιτεκτονική των web services παρέχει αρκετά πλεονεκτήματα μερικά από τα οποία αναφέρονται παρακάτω: Διαλειτουργικότητα: Ένα web service παρέχει ανεξαρτησία τόσο από λειτουργικό σύστημα όσο και από το hardware. Οποιοδήποτε πρόγραμμα που συμβαδίζει με αυτή τη τεχνολογία μπορεί πολύ εύκολα να προσπελάσει μία τέτοια υπηρεσία. Ενσωμάτωση: 16

Σε ένα υπάρχον λογισμικό σύστημα που λειτουργεί μέσα στο Internet η δημιουργία ενός web service δεν απαιτεί αλλαγές στον μηχανισμό του συστήματος. Διαθεσιμότητα και δημοσίευση: Οι πληροφορίες για τα web services δημοσιεύονται οπότε η εύρεση και η χρήση τους μπορεί να είναι ταχύτατες. Επέκταση: Ένα έτοιμο web service είναι δυνατό να ανανεωθεί με εύκολο τρόπο παρέχοντας έτσι επιπρόσθετες υπηρεσίες στους χρήστες του. Μικρό κόστος δημιουργίας και χρήσης: Εφόσον σε ένα λογισμικό σύστημα υπάρχει ήδη κάποια διαδικασία που χρειάζεται να επεκταθεί σε on-line υπηρεσία, η δημιουργία του web service κοστίζει ελάχιστα. Επίσης το κόστος ενσωμάτωσης ενός web service σε κάποιο website ή σε δικτυακή εφαρμογή είναι πάρα πολύ μικρό. Ακόμα και στις περιπτώσεις που η χρήση κάποιου web service γίνεται με ενοικίαση σίγουρα το συνολικό κόστος της χρήσης είναι αρκετά πιο μικρό από το κόστος δημιουργίας της υπηρεσίας αυτής. Χρήση λογισμικών συστημάτων: Όλα τα λογισμικά συστήματα και ειδικότερα τα websites που χρησιμοποιούν έτοιμες υπηρεσίες γίνονται πιο λειτουργικά και πιο φιλικά αφού παρέχουν περισσότερες υπηρεσίες στους χρήστες. 2.2 Δημιουργία των Web Services Υπάρχουν αρκετές διαφορετικές πλατφόρμες στις οποίες μπορεί να βασιστεί κανείς για τη δημιουργία ενός web service. Από τη μεριά της Microsoft, οι έτοιμες λύσεις 17

που δίνει το περιβάλλον Visual Studio.net έχουν προσελκύσει πολλούς προγραμματιστές για να δημιουργούν τέτοιες υπηρεσίες. Επίσης άλλες μεγάλες εταιρίες όπως η IBM και η ORACLE χρησιμοποιούν τα δικά τους προγραμματιστικά εργαλεία. Τέλος ακόμα και οι περισσότερες γλώσσες προγραμματισμού έχουν ενσωματώσει στις δυνατότητές τους την αυτόματη δημιουργία SOAP servers και την υποστήριξη των web services. Μία δωρεάν λύση προσφέρεται και στους προγραμματιστές δυναμικών ιστοσελίδων που χρησιμοποιούν την γλώσσα PHP. Υπάρχουν έτοιμες βιβλιοθήκες (π.χ. nusoap) που μπορούν να χρησιμοποιηθούν από οποιοδήποτε για να δημιουργήσει απλά προσθέτοντας μόνο 5 γραμμές εντολών ένα web service. Ας πάρουμε λοιπόν την γλώσσα PHP για να ξεκινήσουμε ένα απλό παράδειγμα. (Για περισσότερες και αναλυτικότερες λεπτομέρειες μπορεί κανείς να απευθυνθεί σε on -line βοηθήματα στο Internet όπως το «http://developer.apple.com/internet/webservices/soapphp.html» κ.α.). Ας υποθέσουμε πως η εκκλησία της Ελλάδος επιθυμεί να υλοποιήσει ένα web service το οποίο θα παρέχει υπηρεσίες εορτολογίου. Δηλαδή για κάθε ημερομηνία που θα δέχεται θα επιστρέφει τα ονόματα των Αγίων που γιορτάζουν εκείνη την ημέρα Έχοντας δημιουργήσει μία απλή βάση δεδομένων με τις ημερομηνίες και τις αντίστοιχες εορτές το υπόλοιπο κομμάτι της υλοποίησης περιγράφεται παρακάτω: 1. Δημιουργούμε τη διαδικασία ερώτησης στην βάση και επιστροφής αποτελεσμάτων. Αυτό γίνεται με μία συνάρτηση σε PHP π.χ. evresi_eortis(date) 2. Δημιουργούμε τον SOAP server. Χρησιμοποιώντας την έτοιμη βιβλιοθήκη nusoap με 5 εντολές δημιουργούμε τον server μας σε ένα αρχείο π.χ. eortes.php 3. Ορίζουμε στον server τη λειτουργία που επιθυμούμε να κάνει. Π.χ. Ορίζουμε τη λειτουργία vres_giorti η οποία αντιστοιχεί στη συνάρτηση evresi_eortis. 4. Δημιουργούμε το wsdl αρχείο με τις πληροφορίες για τον server μας την λειτουργία τους και τα δεδομένα που δέχεται και επιστρέφει. Σε αυτό το σημείο έχουμε δημιουργήσει ένα web service το οποίο εκτελεί μόνο μία λειτουργία και μπορεί κανείς να το προσπελάσει στη διεύθυνση που έχουμε αποθηκεύσει το αρχείο eortes.php. 18

Tο αρχείο eortes.php <?php // evresi eortis function evresi_eortis($date) { $query = "select onomata from imerologio where hmerominia = ". $Date; } if (mysql_connect("localhost", "username", "passwd")) else { $error = "Database connection error"; return $error; } if (mysql_select_db("imerologio")) else { $error = "Database not found"; return $error; } if ($result = mysql_query($query)) else { $error = "mysql_error()"; return $error; } $onomata = mysql_result($result, 0, 0); return $onomata; // SOAP SERVER require_once('nusoap.php'); $server = new soap_server; $server->register('evresi_eortis'); 19

$server->service($http_raw_post_data);?> 2.3 Υπηρεσιοκεντρική Αρχιτεκτονική (Service Oriented Architecture SOA) Το μοντέλο που χρησιμοποιείται στις μέρες μας για την περιγραφή των «Υπηρεσιών Διαδικτύου» βασίζεται κυρίως στο κλασικό επιχειρησιακό μοντέλο, το οποίο έχουν υιοθετήσει οι διάφοροι ιδιωτικοί οργανισμοί και απεικονίζεται στο Σχήμα 1. Σχήμα 1. Αρχιτεκτονική γύρω από την υπηρεσία Από το παραπάνω σχήμα μπορούμε να διακρίνουμε τις οντότητες που απαρτίζουν την τρέχουσα αρχιτεκτονική των υπηρεσιών διαδικτύου. Αυτές είναι η οντότητα που ζητάει την υπηρεσία (Service Requestor), η οντότητα που παρέχει την υπηρεσία (Service Provider) και τέλος η οντότητα του καταλόγου υπηρεσιών (Service Registry). Με περισσότερη λεπτομέρεια, κάθε μία οντότητα έχει τους ακόλουθους ρόλους: 20