Title: Transition Strategy:
1Transition Strategy
Developing Web Apps with HTML Templates and Java
Servlets
Russ Tokuyama ltruss_at_hawaii.edugt
2Web Apps HTML Templates
- Motivation
- Overview
- Web Basics
- Framework
- Process
3Web Apps HTML Templates
- Motivation
- Lack of skilled developers
- Why not JSP?
- How are templates faster?
4Web Apps HTML Templates
- Overview
- Simple, easy to understand
- Separate content from presentation
- Provides a structure
- Emphasize different skills
5Web Apps HTML Templates
- Web Basics
- HTTP - request-response
- HTML - presentation
- CGI - server-side processing
6Web Apps HTML Templates
- Web Basics
- HTTP - request-response
request
response
7Web Apps HTML Templates
- Web Basics
- HTML - presentation
lthtmlgtltheadgtlttitlegtMy HomePagelt/titlegtlt/headgtltb
odygtThis is my home page.lt/bodygtlt/htmlgt
8Web Apps HTML Templates
- Web Basics
- HTML - presentation
9Web Apps HTML Templates
- Web Basics
- CGI - server-side processing
request
CGI
response
10Web Apps HTML Templates
- Web Basics
- CGI - server-side processing
request
CGI
response
11Web Apps HTML Templates
- Framework
- Users goals and interaction
- Data and processing
- Clear and focused
12Web Apps HTML Templates
- Process (1-4)
- Mock up site in HTML
- User feedback
- Site map
- Transitions between pages
13Web Apps HTML Templates
- Process (1-4)
- Mock up site in HTML
nextPage.html
firstPage.html
link
lta hrefnextPage.htmlgtnextlt/agt
anotherPage.html
14Web Apps HTML Templates
- Process (1-4)
- User feedback
- Content (data)
- Look and Feel
- Processing
15Web Apps HTML Templates
16Web Apps HTML Templates
Page Action Next PageMain Login Menu Menu Create
Requisition Vendor Search Work w/
Requisition Requisition Search Logout Login Vendo
r Search Select Vendor New Requisition Search
for Vendor Search Results Logout Main
17Web Apps HTML Templates
- Process (1-4)
- Transitions between pages
18Web Apps HTML Templates
- Process (5-8)
- Assign variables to data
- Identify processing
- Add special tags
- Change links to URLs
19Web Apps HTML Templates
- Process (5-8)
- Assign variables to data
ltinput type"text name"vendorName"gt ltinput
type"text name"vendorID"gtltselect
namenumRecords"gt ltoption value"10 gt 10
recordslt/optiongt lt/selectgt
20Web Apps HTML Templates
- Process (5-8)
- Assign variables to data
Form CGI/Servlet TablevendorName vendorName
vendorName vendorID vendorID vendorID numRecord
s numRecords n/a
21Web Apps HTML Templates
- Process (5-8)
- Identify processing
- What does the user want to do?
- Actions possible on a page
- Processing required to return next page for
action selected
22Web Apps HTML Templates
- Process (5-8)
- Add special tags
- HTML comment
- Replaced by data value
- Depends on type of field
23Web Apps HTML Templates
- Process (5-8)
- Add special tags
- text input field
ltINPUT TYPETEXT NAMENamegt Name
24Web Apps HTML Templates
- Process (5-8)
- Add special tags
- text input field
lt!-- TEXTname --gt
ltINPUT TYPETEXT NAMEName VALUElt!--
TEXTname--gt gt Name
25Web Apps HTML Templates
- Process (5-8)
- Add special tags
- text input field
JA-SIG
nameJA-SIG
ltINPUT TYPETEXT NAMEName
VALUEJA-SIG gt Name
26Web Apps HTML Templates
- Process (5-8)
- Add special tags
- Replaced by data value
nameJA-SIG
VALUEJA-SIG
lt!-- TEXTname --gt
27Web Apps HTML Templates
- Process (5-8)
- Add special tags
- Depends on type of field
ltINPUT NAMEpc TYPECHECKBOX gt PC ltBRgt ltINPUT
NAMEmac TYPECHECKBOX CHECKEDgt Mac
28Web Apps HTML Templates
- Process (5-8)
- Change links to URLs
From
ltA HREFnextPage.htmlgtCreate new
requisitionlt/Agt ltA HREFhttp//server/servlet/pu
rchase?cmdnewReqgt Create new
requisitionlt/Agt
To
29Web Apps HTML Templates
- Process (9-11)
- Program processing
- Test processing from command line
- Install templates and programs
30Web Apps HTML Templates
- Process (9-11)
- Program processing
command
31Web Apps HTML Templates
- Process (9-11)
- Program processing
if command equals New Requisition do New
Requisition processelse if command equals Work
With Existing Requisition do Existing
Requisition processelse if command equals
do process
32Web Apps HTML Templates
- Process (9-11)
- Program processing
doGet(HttpServletRequest req, HttpServletResponse
res) throws ServletException, IOException
if ( cmd.equals(newReq) ) do
processNewReq() else if (
cmd.equals(oldReq) ) do
processOldReq() else if ( cmd.equals( )
) do process...
33Web Apps HTML Templates
- Process (9-11)
- Test processing from command line
gt java TestProcessNewReq
34Web Apps HTML Templates
- Process (9-11)
- Install templates and programs
35Web Apps HTML Templates
- Process (12-14)
- Test site with templates and programs
- Test site with users
- Go live!
36Web Apps HTML Templates
- Conclusion
- Flexible and easy to use
- Basic Web skills
- Use with your favorite CGI language