13.07.2015 Views

Software Engineering for Internet Applications - Student Community

Software Engineering for Internet Applications - Student Community

Software Engineering for Internet Applications - Student Community

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

You need a Web programming environment powerful enough thatyou can build something that we'll call a request processor. Thisprogram looks at an incoming abstract URL, e.g., "one-topic", andfollows the following logic:• is there a .jsp file in the file system; if so, execute it• look <strong>for</strong> headers requesting XHTML Mobile Profile <strong>for</strong> a cellphone browser; if so and there is a .mobile file in the filesystem, serve it, if not, continue• look <strong>for</strong> a .html file• look <strong>for</strong> a .jpg• look <strong>for</strong> a .gif(You'll want to customize the preference order <strong>for</strong> your server.)centralized logging of RDBMS queriesThe main job of your Web scripts will be to <strong>for</strong>mulate SQL queriesand transactions. If things go wrong the most valuable in<strong>for</strong>mationthat you can get is "what did my Web scripts tell the RDBMS to doand in what order". The best Web/application server programs have asingle error log file into which they will optionally write all the queriesthat are sent to the RDBMS.2.9 ExercisesAfter solving these problems you will know• How to log into your development server• Rudiments of whatever programming language you'vechosen• How to create, execute, test, and debug a dynamic Webpage• How to write a Web page that queries a <strong>for</strong>eign server• Rudiments of SQL• How to query an RDBMS from the shell• How to write a Web page that queries an RDBMS• How to personalize Web applications by issuing and readingcookies• How to read and write data in XML• How to load a flat-file of data into an RDBMS tableHTMLHTTPIISJavaJPEGHyper Text Markup Language. Developed by Tim Berners-Lee, this specifies a <strong>for</strong>mat <strong>for</strong> the most popular kind ofdocument distributed over the Web (via HTTP).Documented sketchily in this book, documented badly athttp://www.w3.org, and documented well in HTML: TheDefinitive Guide (Musciano and Kennedy 2002; O'Reilly).Hyper Text Transfer Protocol. Developed by Tim Berners-Lee, this specifies how a Web browser asks <strong>for</strong> a documentfrom a Web server. Question such as "how does a servertell the browser that a document has moved?" or "how doesa browser ask the time that a document was last modified?"may be answered by reference to this protocol, which isdocumented badly at http://www.w3.org and documentedwell in various books such as HTTP: The Definitive Guide(David Gourley, Brian Totty; O'Reilly 2002).<strong>Internet</strong> In<strong>for</strong>mation Server. A threaded Web server programthat is included by Microsoft when you purchase theWindows operating system.Java is first a programming language, developed by SunMicrosystems around 1992, intended <strong>for</strong> use on the tinycomputers inside cell phones and similar devices. Java issecond an interpreter, the Java virtual machine, <strong>for</strong>merlycompiled into popular Web browsers (back when NetscapeNavigator was popular and be<strong>for</strong>e Sun sued Microsoft).Java is third a security system that purports to guaranteethat a program downloaded from an untrusted source on the<strong>Internet</strong> can run safely inside the interpreter. Java is the onlyrealistic way <strong>for</strong> a Web publisher to take advantage of thecomputing power available on a user's desktop. Java isgenerally a cumbersome language <strong>for</strong> server-side softwaredevelopment. For more background on the language, seethe Java chapter from Database Backed Web Sites athttp://philip.greenspun.com/wtr/dead-trees/53008.htm.Joint Photographic Experts Group. A bunch of people whosat down and designed a standard <strong>for</strong> image compression,conveniently titled "IS 10918-1 (ITU-T T.81)". This standardworks particularly well <strong>for</strong> 24-bit color photographs. C-CubeMicrosystems came up with the JFIF standard <strong>for</strong> encodingcolor images in a file. Such a file is what people commonlyrefer to as "a JPEG" and typically ends in ".jpg" or ".jpeg".The main problem with JFIF files is that they only record 830319

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!