Hi, Robert,

I'll play with it some tonight and see.  One thing I noted in my web pub
class the other day was that some students put the word "POST" in
lower-case,
and the data server (web server) acted like it was doing a GET instead of
a POST.  It would not surprise me if the value is case-sensitive (after all,
it is a string).  The rules can vary with these browsers and servers (along
with
everything else).

Anyway, I'll work on it tonight and let you know what I find.

----------------------------------
Richard Conn, ASE and PAL Manager
http://xenadu.home.mindspring.com/

> -----Original Message-----
> From: Robert C. Leif, Ph.D. [mailto:[log in to unmask]]
> Sent: Monday, September 13, 1999 11:08 AM
> To: Richard L. Conn; [log in to unmask]
> Subject: RE: How to provide Ada with the best possible GUI.
>
>
> From: Bob Leif
> To: Richard Conn et al.
>
> Unfortunately,
> <form METHOD= "post" ACTION="file://C|\Ada_Work\html_small_read.exe" >
> did not work. In both cases, the Ada program opens puts its name on the
> screen and sits. Windows Explorer first asks about saving it to disk and
> then about its lack of an internal signature. However, I overrode both and
> it opened.
>
> If we are this close, I would greatly appreciate it if someone would make
> this combination work. I would hope that it would serve as the
> basis of the
> simplest example for the next CD-ROM or its successor. This is actually
> based on David  Wheeler's Ada 95 Binding to CGI. Unfortunately, I could
> never make it work in my client only environment. Therefore, I wrote a
> simple HTML file and Ada test program. Once these work, I and I
> hope others
> will be able to work out the rest. For instance, I plan to transform the
> input to one or more bounded strings prior to further processing.
> -----Original Message-----
> From: Team Ada: Ada Advocacy Issues (83 & 95)
> [mailto:[log in to unmask]]On Behalf Of Richard L. Conn
> Sent: Monday, September 13, 1999 7:15 AM
> To: [log in to unmask]
> Subject: Re: How to provide Ada with the best possible GUI.
>
>
> Robert pointed out an issue that I forgot to mention.  Since a URL is
> in play for the action to respond to a form, you can use the file:
> scheme to specify a program on your PC to handle the action.
> This totally eliminates the need for a Personal Web Server.
> All you need is to have your HTML page, your client (browser), and
> your Ada engine on the PC you are personnally using.
>
> Re Robert's question, I have not tried it, but I suspect you should
> stick to specifying the file: scheme for portability.  Also, C: will
> probably have to be replaced with C| (C-bar) since many URL parsers
> don't like two colons in the URL.
>
> Good catch, Robert.
>
> ----------------------------------
> Richard Conn, ASE and PAL Manager
> http://xenadu.home.mindspring.com/
>
> > -----Original Message-----
> > From: Robert C. Leif [mailto:[log in to unmask]]
> > Sent: Sunday, September 12, 1999 12:53 PM
> > To: Richard L. Conn
> > Subject: RE: How to provide Ada with the best possible GUI.
> >
> >
> > To: Richard Conn
> > From: Bob Leif
> >
> > I have included a very simple HTML screen. I believe this would
> be a very
> > simple example for your write-up.
> > -----------------------------------------------------
> > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
> >
> > <html>
> >
> > <head>
> >
> > <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Latin1">
> > <meta HTTP-EQUIV="Content-Language" CONTENT="en-us">
> > <title>(Test_Ada)</title>
> >
> >
> > </head>
> >
> > <body BACKGROUND="" BGCOLOR="#ffffff" TEXT="#000000" LINK="#0000ff"
> > VLINK="#800080" ALINK="#ff0000">
> >
> > <form METHOD= "post" ACTION="file://C:\Ada_Work\html_small_read.exe" >
> > <textarea NAME="Test_String" ROWS="1" COLS="10"></textarea>
> > <input TYPE="submit" VALUE="Submit Form">
> > <input TYPE="Reset" VALUE="Reset Form">
> > </form>
> >
> > </body>
> >
> > </html>
> > ------------------------------------------------------------------
> > First question: "~URL to data server~" should this be
> > file://C:\Ada_Work\html_small_read.exe or
> > C:\Ada_Work\html_small_read.exe
> > ------------------------------------------------------------------
> > with Ada.Text_Io;
> > with Ada.Exceptions;
> > procedure Html_Small_Read is
> >    Prog_Location : constant String := "HTML_Small_Read";
> >    package T_Io renames Ada.Text_Io;
> >    Max_Line_Length : Natural := 10;
> >    subtype Line_Type is String(1..Max_Line_Length);
> >    Line : Line_Type := "No input! ";
> >    Char : Character := ' ';
> >    End_Of_Line : Boolean := True;
> >    Line_Length : Natural := 0;
> >
> > begin --
> >    T_Io.Put_Line (Prog_Location);
> >    T_Io.New_Line;
> >    T_Io.Get(Item => Line);
> >    T_Io.Put_Line("The Line was " & Line);
> >    Hold_On_Screen:
> >       for I in 1..100 loop
> >       T_Io.Put("The Line was " & Line);
> >    end loop Hold_On_Screen;
> >    T_Io.Put_Line("Ending HTML_File_Test");
> >    T_Io.Put_Line("");
> > exception
> >    when O: others  =>
> >       T_Io.Put_Line (Ada.Exceptions.Exception_Information (O));
> >       T_Io.Put_Line (Ada.Exceptions.Exception_Message (O));
> >
> > end Html_Small_Read;
> > ------------------------------------------------------------------
> > After I submit the form, it goes to the program and prints the Pkg_Name
> >
> > Description of html_small_read.exe
> > It reads in the 10 letter string and puts it to the screen.
> > I actually originally attempted to put the form data to a log
> > file. However
> > I made this real simple. I output the data in a loop to make sure
> > I can see
> > it.
> > Unfortunately, the program never gets past placing its name on
> > the screen. I
> > believe it is waiting for the string.
> >
> > Thank you.
> > Bob
> > -----Original Message-----
> > From: Team Ada: Ada Advocacy Issues (83 & 95)
> > [mailto:[log in to unmask]]On Behalf Of Richard L. Conn
> > Sent: Saturday, September 11, 1999 6:56 PM
> > To: [log in to unmask]
> > Subject: Re: How to provide Ada with the best possible GUI. was RE: Two
> > interesting approaches to job hunting and more
> >
> >
> > The upcoming Ada and Software Engineering CDROM (which will be
> > distributed to all SIGAda 99 attendees) will have material on
> > this topic, so you can look there for more details.
> >
> > Basically, we have this in a nutshell:
> >
> > 1. Any HTML form is of the following format (in HTML)
> >   <form method="POST" action="~URL to data server~">
> >   ... form-oriented tags and normal HTML tags ...
> >   <input type="submit" value="text on SUBMIT button">
> >   </form>
> >
> > where ~URL to data server~ is the URL of your Ada program, acting
> > as a data
> > server.  I referenced the POST method here, but GET works just as well.
> > What POST does is send the data from the form into standard input of the
> > data server, where GET sends the data from the form into a (sometimes
> > very long) command line.  The Ada program is a normal Ada
> > program, residing
> > in a Common Gateway Interface directory or subdirectory.
> >
> > The INPUT tag causes a SUBMIT button to be displayed with the indicated
> > text.  When the user presses this button, the data in the various
> > fields of
> > the form (text boxes, etc) is encoded into one of the enctypes
> and sent to
> > the
> > standard input of the data server indicated in the URL (in this case, an
> > Ada program).  I forget the name of the "standard" enctype offhand.
> >
> > 2. Once the Ada program (acting as a data server) receives the
> > enctype-encoded
> > data, it simply decodes/parses it and performs its function
> (stores data,
> > etc).
> >
> > 3. The Ada program should usually send a message back to the user,
> > confirming
> > the transaction.  To do this, the Ada program has to compose a web page
> > (using
> > HTML) and simply send it to standard output.  The only hitch is
> > to remember
> > to
> > start that web page with:
> >   Content-type: text/html
> >   ... blank line ...
> >   ... your program-composed HTML ...
> >
> > That's about it ... no rocket science here.  Most of the tricks I had to
> > deal with were within the Ada program, addressing issues surrounding the
> > problems associated with multiple copies of the same program
> > running at the
> > same time.  All data files had to be unique, and any generated
> scripts had
> > to have unique names as well.
> >
> > Rick
> > ----------------------------------
> > Richard Conn, ASE and PAL Manager
> > http://xenadu.home.mindspring.com/
> > SNIP to end
> >
>