SWAZoo - AIDA

632 views
567 views

Published on

SWAZoo - AIDA: A Smalltalk Web Application Server, by Janko Mivsek. (ESUG 2000, Southampton)

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
632
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

SWAZoo - AIDA

  1. 1. SWAZoo - AIDA A Smalltalk Web Application Server Janko Mivsek Eranova d.o.o. Ljubljana, Slovenia On the sunny side of the Alps
  2. 2. Contents   AIDA/Web   demo   architecture   examples   SWAZoo   goals   Discussion
  3. 3. AIDA/Web   A Web server   Framework for dynamic web applications
  4. 4. Where is usefull?   Internet   web sites, portals, e-shops, e-commerce, newspapers, discussion forums, …   Intranet, Extranet   Web based business apps   B2B   CRM, Document systems, Unified messaging   ...
  5. 5. Competition   Java   IBM WebSphere   ...   Microsoft
  6. 6. AIDA/Web demo
  7. 7. Download it and try!   http://www.eranova.si/aida   complete source   small demo   Open source
  8. 8. Architecture   Original design ideas   MVC for the Web   WebElements   Session management   Security   Persistent everything   Smalltalk Server Pages
  9. 9. Original design ideas   Web of objects   … connected by object references   Web ob pages   … connected by URLl links
  10. 10. Original design ideas   Every object should be able to represent itself as a web page   Object references should be mapped to URL references and vice-versa (automatically!)
  11. 11. MVC on Web   Complete separation of presentation from domain model   Observer pattern: domain object are not aware of presentation
  12. 12. MVC on Web domain a WebApp object observee domain object
  13. 13. MVC on Web   Multiple Views of the same object   discussions - hierarchical/cronological   Registration of web print methods for different views
  14. 14. MVC on Web   Web forms   Input fields connected to domain object attributes with a pluggable adapter   Submit button   Action methods
  15. 15. WebElements   Smalltalk objects representing the elements of a web page   text, url links, images, tables, input fields, …   Composite objects   nesting of web elements   reusable web components
  16. 16. Complete path of a WebRequest
  17. 17. Session management   Sessions used to separate users from each other   Web is stateless   Session identification   cookies   parameter in an URL   Sessions are permanent and persistent
  18. 18. Security   Access rights   who is allowed to view or update my object?   Access rights for each view   separate right for update (form submit)   URL links to the prohibited objects are inactive   Authentication
  19. 19. Security   SSL (Secure Socket Layer)   SSLSocketAccessor   Seamless integration in AIDA/Web
  20. 20. Persistent Everything   Almost all objects of AIDA/Web are persistent   requests, sessions, security, …   Gemstone or Versant ODB used   Lightweight TransactionMonitor   Caching on a AIDA/Web side   35.000 hits/h
  21. 21. Smalltalk Server Pages   Calls to Smalltalk from HTML static pages   Like ASP, JSP, …   <AIDA WebStatistics printCounter>
  22. 22. Examples
  23. 23. SWAZoo   Smalltalk Web Application ZOO :-))   a CampSmalltalk project   Merging all Web related work together   Commanche, Hydrogen, ByteSmiths toolkit, AIDA/Web   VisualWave, VisualAge SST
  24. 24. Internet related CS projects   Internet Client/Server framework   Smalltalk Web Application Server   SOAP   XML
  25. 25. SWAZoo   HTTP 1.1 server   Virtual servers   Resource hierarchy   URL resolution   HTTPRequest parsing
  26. 26. Discussion Smalltalk in e-commerce world?

×