A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement
description
Transcript of A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement
![Page 1: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/1.jpg)
Moving Beyond Boundaries
A Natural Extension:Using the Com-plete HTTP
Server for Web-EnablementDavid Wimberly
Project/Program Director, University of Arkansas [email protected]
![Page 2: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/2.jpg)
Moving Beyond Boundaries
Presentation Overview
The Com-plete HTTP serverA Natural tool for web enablement
Web-Enablement at the University of ArkansasEnhancing existing applications with web
technologies Implementation considerations
Tips and techniquesExamples
![Page 3: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/3.jpg)
Moving Beyond Boundaries
The Com-plete HTTP Server
A Natural tool for web-enablementCom-plete 6.1 architectureNatural and the HTTP serverNatural programmer’s viewSystem viewAdvantages of this native MVS web and application
server
![Page 4: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/4.jpg)
Moving Beyond Boundaries
Com-plete 6.1 Architecture
VTAMInter-face
Utilities
Spool Telnet
HTTP
CGIapplications
Product X
![Page 5: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/5.jpg)
Moving Beyond Boundaries
Natural and the HTTP Server
HTTP
CGIapplications
![Page 6: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/6.jpg)
Moving Beyond Boundaries
Natural Programmer’s View
** Read user input from the webCALL ‘HAANUPR’ #CGI-STATUS /* Return code and reason code #CGI-ACTION /* GET-DATA or PUT-DATA #FIELD-NAME /* HTML form field name #FIELD-VALUE /* User input value #FIELD-LENGTH /* Length anticipated/returnedSEPARATE…FIND EMPLOYEE WITH…
Simple CALL interface
![Page 7: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/7.jpg)
Moving Beyond Boundaries
System View
Natural programs:Run in the buffer poolAccess ADABAS and other resourcesCall external module HAANUPR
To read HTML form inputs and controls (GET or POST)To send dynamically generated HTML to the browser
Configuration parameters for default user ID, library, buffer sizes, etc.
Automatic EBCDIC/ASCII translations and url encoding/decoding
![Page 8: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/8.jpg)
Moving Beyond Boundaries
Native MVS Web and Application Server
NaturalCGI interface(HAANUPR)
HTTP
![Page 9: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/9.jpg)
Moving Beyond Boundaries
Web-Enablement with the Com-plete HTTP Server
Enhancing existing applications with web technologiesObjectivesBackgroundWeb session examples
![Page 10: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/10.jpg)
Moving Beyond Boundaries
U of A’s Objectives
To enhance and extend our mainframe applicationsReach new audiences
Employees and vendorsEnhance the presentation of information
Consolidate information and dress it upSimplify access for infrequent users
Not to replace all or even most 3270 functions Not to literally move a 3270 application to the web
![Page 11: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/11.jpg)
Moving Beyond Boundaries
U of A Background
Natural and ADABAS mainframe shop since 1986 BASIS: Business & Administrative Strategic
Information SystemsCustom inhouse developed applicationsEverything but student systems
Separate groups doing Java web development and screen scraping web deploymentPreference for Natural application code
Timing was right for the Com-plete HTTP Server
![Page 12: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/12.jpg)
Moving Beyond Boundaries
Logon
![Page 13: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/13.jpg)
Moving Beyond Boundaries
Menu
![Page 14: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/14.jpg)
Moving Beyond Boundaries
Browse PO selection screen
![Page 15: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/15.jpg)
Moving Beyond Boundaries
Help for Date-Close-Anticipated
![Page 16: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/16.jpg)
Moving Beyond Boundaries
Help for PO status, selection
![Page 17: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/17.jpg)
Moving Beyond Boundaries
Help for PO status, window
![Page 18: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/18.jpg)
Moving Beyond Boundaries
PO status returned
![Page 19: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/19.jpg)
Moving Beyond Boundaries
Budgetary Unit help
![Page 20: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/20.jpg)
Moving Beyond Boundaries
BU help search
![Page 21: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/21.jpg)
Moving Beyond Boundaries
Browse PO for Status and BU by Date
![Page 22: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/22.jpg)
Moving Beyond Boundaries
Browse result and PO selection
![Page 23: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/23.jpg)
Moving Beyond Boundaries
View of PO, top
![Page 24: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/24.jpg)
Moving Beyond Boundaries
View of PO, bottom
![Page 25: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/25.jpg)
Moving Beyond Boundaries
Select a PO to Browse Invoices for PO
![Page 26: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/26.jpg)
Moving Beyond Boundaries
Browse Invoices for PO
![Page 27: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/27.jpg)
Moving Beyond Boundaries
View Invoice
![Page 28: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/28.jpg)
Moving Beyond Boundaries
Select a PO to e-mail
![Page 29: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/29.jpg)
Moving Beyond Boundaries
E-mail the PO
![Page 30: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/30.jpg)
Moving Beyond Boundaries
PO list, vendor help
![Page 31: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/31.jpg)
Moving Beyond Boundaries
Vendor name search
![Page 32: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/32.jpg)
Moving Beyond Boundaries
Select vendor
![Page 33: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/33.jpg)
Moving Beyond Boundaries
PO search by vendor and date, initiated
![Page 34: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/34.jpg)
Moving Beyond Boundaries
PO search by vendor and date, results
![Page 35: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/35.jpg)
Moving Beyond Boundaries
Main menu, select pay activity
![Page 36: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/36.jpg)
Moving Beyond Boundaries
Browse pay activity
![Page 37: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/37.jpg)
Moving Beyond Boundaries
View earnings statement
![Page 38: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/38.jpg)
Moving Beyond Boundaries
Main menu, select addresses
![Page 39: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/39.jpg)
Moving Beyond Boundaries
3270 Addresses, etc. equivalent
![Page 40: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/40.jpg)
Moving Beyond Boundaries
Addresses, etc
![Page 41: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/41.jpg)
Moving Beyond Boundaries
Enter changes, view errors and previous values
![Page 42: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/42.jpg)
Moving Beyond Boundaries
Correct errors and update
![Page 43: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/43.jpg)
Moving Beyond Boundaries
Update confirmation screen
![Page 44: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/44.jpg)
Moving Beyond Boundaries
Logoff screen
![Page 45: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/45.jpg)
Moving Beyond Boundaries
Implementation Considerations
How to maintain state Back button Back button vs Return Data security Configuration Essential JavaScript Techniques for generating HTML Coding tips, debugging tips, and more Example HTML and Natural code
![Page 46: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/46.jpg)
Moving Beyond Boundaries
How to Maintain State
The web is statelessEach interaction (submission) is self containedNo provision for a continuous user session
To maintain stateUse conversational mode, orCreate a session ID (*TIMESTMP)
Place it on the form as a hidden fieldSave and restore user session information using ADABAS
![Page 47: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/47.jpg)
Moving Beyond Boundaries
Back Button
Can subvert your state informationUser reappears not from where you left him
We consideredDisabling itRunning in a window without the toolbar or menubar Issuing errors if they used it
Limit the state information you maintainNot the active position within a READ loop Instead, hide the first and last ISN on a page
Have one entry point -- a dispatcher program action=“uwowdis”
![Page 48: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/48.jpg)
Moving Beyond Boundaries
Back Button vs Return
As1 - 10
Bs1 - 10
Bs11 - 20
Bs21 - 30
Cs1 - 10
Cs11 - 20
Object selection or Paging
Back button
Return
Browse A objects at level 1
Browse B objects at level 2
Browse C objects at level 3
![Page 49: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/49.jpg)
Moving Beyond Boundaries
How to Return
Save program hierarchy information in hidden fields Our browse functions stack for each level:
Program IDSearch type in effect ISN and MU/PE occurrence of first record on the
screenWhether page back was valid
A Return Pops one of these from the stackExecutes the program and re-initiates the browse
![Page 50: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/50.jpg)
Moving Beyond Boundaries
Data Security
Sensitive data requires encryptionCom-plete HTTP server does not do SSLProxy server introduced to do all encryption and
decryption To avoid mixing document types and client side
warningsStyle sheets and graphics are delivered from a
separate web server using HTTPS
![Page 51: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/51.jpg)
Moving Beyond Boundaries
U of A’s Environment
HTTPS HTTP
Client with SSL enabled Web Browser
Proxy Server for SSL encryption
Web Server for *.gif and *.css files
IBM OS/390 running ADABAS, Natural, and Com-plete 6.1
![Page 52: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/52.jpg)
Moving Beyond Boundaries
Com-plete HTTP Server Configuration
HAANCONFSERVPOOL=YES
Uses a shared logon or sessionNATLIB=default library
Natural CGI programs in other libraries require an implicit logon
HTTPUSER=default user ID URL processing user exit
Restrict access to specific hosts or domains
![Page 53: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/53.jpg)
Moving Beyond Boundaries
Essential JavaScript
Cursor placement Selection processing and linking to different
servicesSet hidden form element to selected valueSubmit form
Window managementOpen and Close windowsPass and return values
![Page 54: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/54.jpg)
Moving Beyond Boundaries
Techniques for Generating HTML
Output your HTML to the Source Work Area Use Natural ISPF macros
But macros cannot be invoked directly as a Natural CGI program Use Natural
DEFINE PRINTER (1) OUTPUT 'SOURCE'FORMAT (1) PS=0 LS=133 EJECT OFF (1) SET CONTROL 'Z‘WRITE (1) NOTITLE …
Send the generated HTML to the browser HNANCGIP is provided, but limited to 72 character lines Create your own using longer lines via the USR1035N interface
![Page 55: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/55.jpg)
Moving Beyond Boundaries
Coding Tips
Develop an architecture and generate your Natural CGI programs using Natural ISPF macrosFast delivery of new functionsConsistentEasy to implement changes -- REGEN
To simplify making changes in page appearanceUse copy code, subprograms, constants defined in
an LDA, and an external style sheet HTML form fields can have dashes, but javascript
cannot reference themTranslate them to under-scores
![Page 56: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/56.jpg)
Moving Beyond Boundaries
HAANUPR Tips
Field namesMust end with a blank character
Field valuesAre not blank filled, reset them before your CALL
Field lengthPassed in: the largest value you will receiveReturned: the actual size of the field entered
CALL ‘HAANUPR’ #CGI-STATUS /* Return and reason code #CGI-ACTION /* GET-DATA or PUT-DATA #FIELD-NAME /* HTML form field name #FIELD-VALUE /* User input value #FIELD-LENGTH /* Length anticipated/returned
![Page 57: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/57.jpg)
Moving Beyond Boundaries
Debugging Tips
You can’t sprinkle WRITEs into your code You can’t run the Natural debugger Trap and log errors on a data base file
Note: *ERROR-TA always starts as HNANERR and can only be changed by an assignment statement
Output your debugging information with your web page using HTMLThis may mean holding information until you reach
the page <body>
![Page 58: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/58.jpg)
Moving Beyond Boundaries
Code Reuse
Develop a Natural subprogram to output the core HTML document for an object (Purchase Order, Earnings Statement, etc.)Call from your Com-plete web application (Natural
CGI program)Call from online 3270 session to generate an HTML
e-mail attachmentRead the source work area and send to SMTP using ESS’ PROCESS WRITE-SPOOL
Call from batch to generate an HTML e-mail attachment
![Page 59: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/59.jpg)
Moving Beyond Boundaries
HTML for UWOMENU, part 1
![Page 60: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/60.jpg)
Moving Beyond Boundaries
HTML for UWOMENU, part 2
![Page 61: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/61.jpg)
Moving Beyond Boundaries
Natural code, UWCSBH
![Page 62: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/62.jpg)
Moving Beyond Boundaries
Natural code, output Action
![Page 63: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/63.jpg)
Moving Beyond Boundaries
Natural code, output table of Services
![Page 64: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/64.jpg)
Moving Beyond Boundaries
Natural code, read HTML form fields
![Page 65: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/65.jpg)
Moving Beyond Boundaries
Enhancement Proposal 958
Efficient browsing of ADABAS data (no wasted I/O)Forward or backward (descending)Possible due to STARTING WITH ISNRegular descriptorsMU type descriptorsUnique PE type descriptors
It is not possible with non-unique PE type descriptors!
Vote for FIND DESCENDING, enhancement proposal 958
![Page 66: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/66.jpg)
Moving Beyond Boundaries
Presentation Review
The Com-plete HTTP serverA great run time environment for Natural, and now
an enabler for Natural based web applications Web-Enablement at the University of Arkansas
Examples of what can be done with the Com-plete HTTP server
Implementation considerationsTips and examples from the University of Arkansas
![Page 67: A Natural Extension: Using the Com-plete HTTP Server for Web-Enablement](https://reader035.fdocuments.us/reader035/viewer/2022062521/568167d9550346895ddd3338/html5/thumbnails/67.jpg)
Moving Beyond Boundaries
Thank You!