SWAZoo AIDA A Smalltalk Web Application Server Janko
SWAZoo - AIDA A Smalltalk Web Application Server Janko Mivsek Eranova d. o. o. Ljubljana, Slovenia On the sunny side of the Alps
Contents z. SWAZoo ygoals yarchitecture z. AIDA/Web ydemo yarchitecture
Internet related CS projects z. Internet Client/Server framework z. Smalltalk Web Application Server z. SOAP z. XML
SWAZoo z. Smalltalk Web Application ZOO : -)) za Camp. Smalltalk project z. Merging all Web related work together y. Commanche, Hydrogen, Byte. Smiths toolkit, AIDA/Web y. Visual. Wave, Visual. Age SST
SWAZoo z. HTTP 1. 1 server z. Virtual servers z. Resource hierarchy z. URL resolution z. HTTPRequest parsing
Swazoo Architecture HTTP Server Web Site
Plugable Resources Site File. Resource AIDA Wiki
Security z. SSL (Secure Socket Layer) z. SSLSocket. Accessor z. Integration in Swazoo (comming)
Swazoo live zwww. signalground. com zwww. reasonability. net
Swazoo ports z. Visual. Works 30, 5 i z. Dolphin z. Visual. Age (in progress) z. Smalltalk. X (in progress) z. Squeak (coming soon) z. Visual Smalltalk (coming soon) z. Gemstone (coming soon)
Swazoo info zwww. sourceforge. net ylatest distributions ymailing list zswazoo. org (coming soon)
AIDA/Web z. A Web server z. Framework for dynamic web applications
Where is usefull? z. Internet yweb sites, portals, e-shops, e-commerce, newspapers, discussion forums, … z. Intranet, Extranet y. Web based business apps y. B 2 B y. CRM, Document systems, Unified messaging y. . .
AIDA/Web demo
Download it and try! zhttp: //www. eranova. si/aida ycomplete source ysmall demo z. Open source
Architecture z. Original design ideas z. MVC for the Web z. Web. Elements z. Session management z. Security z. Persistent everything z. Smalltalk Server Pages
Original design ideas z. Web of objects y… connected by object references z. Web ob pages y… connected by URLl links
Original design ideas z. Every object should be able to represent itself as a web page z. Object references should be mapped to URL references and vice-versa (automatically!)
MVC on Web domain a Web. App object observee domain object
MVC on Web z. Multiple Views of the same object ydiscussions - hierarchical/cronological z. Registration of web print methods for different views
MVC on Web z. Web forms y. Input fields connected to domain object attributes with a pluggable adapter y. Submit button y. Action methods
Web. Elements z. Smalltalk objects representing the elements of a web page ytext, url links, images, tables, input fields, … z. Composite objects ynesting of web elements yreusable web components
Complete path of a Web. Request
Session management z. Sessions used to separate users from each other z. Web is stateless z. Session identification ycookies yparameter in an URL z. Sessions are permanent and persistent
Security z. Access rights ywho is allowed to view or update my object? y. Access rights for each view yseparate right for update (form submit) z. URL links to the prohibited objects are inactive z. Authentication
Persistent Everything z. Almost all objects of AIDA/Web are persistent yrequests, sessions, security, … z. Gemstone or Versant ODB used z. Lightweight Transaction. Monitor z. Caching on a AIDA/Web side z 35. 000 hits/h
Smalltalk Server Pages z. Calls to Smalltalk from HTML static pages z. Like ASP, JSP, … z<AIDA Web. Statistics print. Counter>
Discussion Smalltalk in e-commerce world?
- Slides: 28