X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FManual%2FTutorial.pod;h=e26ae30efb0b6153c4ff26d17a4c8c55f18a9f46;hb=d08ced285005d2a98eb0079b4b4ddad72325e367;hp=c30420d9118e88625f0b5b1ffe4e6f6d37ceb36d;hpb=83cea6490029f07934be83734b74405dd53cbd70;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Manual/Tutorial.pod b/lib/Catalyst/Manual/Tutorial.pod index c30420d..e26ae30 100644 --- a/lib/Catalyst/Manual/Tutorial.pod +++ b/lib/Catalyst/Manual/Tutorial.pod @@ -6,29 +6,25 @@ Catalyst::Manual::Tutorial - Getting started with Catalyst This document aims to get you up and running with Catalyst. -NOTE: THIS DOCUMENT IS STILL VERY MUCH AT AN ALPHA STAGE. - -Please send comments, corrections and suggestions for improvements to -A.Ford@ford-mason.co.uk - +NOTE: THIS DOCUMENT IS STILL VERY MUCH IN AN EARLY DRAFT STATE. SEE +THE NOTES AT THE BOTTOM OF THE DOCUMENT. =head2 Installation -The first step is to install Catalyst, and the simplest way to do this is to -install the Catalyst bundle from CPAN: +The first step is to install Catalyst, and the simplest way to do this +is to install the Catalyst bundle from CPAN: $ perl -MCPAN -e 'install Bundle::Catalyst' -This will retrieve Catalyst and a number of useful extensions and install them -for you. +This will retrieve Catalyst and a number of useful extensions and +install them for you. =head2 Setting up your application -Catalyst includes a helper script, C, that will set up a skeleton -application for you: +Catalyst includes a helper script, C, that will set up a +skeleton application for you: - $ catalyst.pl My::App created "My-App" created "My-App/script" created "My-App/lib" @@ -42,36 +38,53 @@ application for you: created "My-App/lib/My/App/V" created "My-App/lib/My/App/C" created "My-App/lib/My/App.pm" + created "My-App/Build.PL" created "My-App/Makefile.PL" created "My-App/README" created "My-App/Changes" created "My-App/t/01app.t" - created "My-App/t/02podcoverage.t" - created "My-App/script/server.pl" - created "My-App/script/test.pl" - created "My-App/script/create.pl" + created "My-App/t/02pod.t" + created "My-App/t/03podcoverage.t" + created "My-App/script/my_app_cgi.pl" + created "My-App/script/my_app_fastcgi.pl" + created "My-App/script/my_app_server.pl" + created "My-App/script/my_app_test.pl" + created "My-App/script/my_app_create.pl" -This creates the directory structure shown. +This creates the directory structure shown, populated with skeleton +files. =head2 Testing out the sample application You can test out your new application by running the server script that -catalyst provides: +Catalyst provides: $ cd My-App - $ script/server.pl - [Sun Mar 20 12:31:18 2005] [catalyst] [debug] Debug messages enabled - [Sun Mar 20 12:31:18 2005] [catalyst] [debug] Loaded engine "Catalyst::Engine::CGI" - [Sun Mar 20 12:31:18 2005] [catalyst] [debug] Initialized components "" - [Sun Mar 20 12:31:18 2005] [catalyst] [info] My::App powered by Catalyst 4.26 - [Sun Mar 20 12:31:18 2005] [catalyst] [debug] "My::App" defined "!default" as "CODE(0x83fd570)" - You can connect to your server at http://localhost:3000 - -The server is now waiting for you to make requests of it. Try using telnet to -manually make a simple GET request of the server (when telnet responds with -"Escape character is '^]'.", type "GET / HTTP/1.0" and hit return twice): + $ script/my_app_server.pl + + [...] [catalyst] [debug] Debug messages enabled + [...] [catalyst] [debug] Loaded dispatcher "Catalyst::Dispatcher" + [...] [catalyst] [debug] Loaded engine "Catalyst::Engine::HTTP" + [...] [catalyst] [debug] Found home "/usr/home/jester/foo/My-App/script/.." + [...] [catalyst] [debug] Loaded private actions + .=--------------------------------+------------------------------------=. + | Private | Class | + |=--------------------------------+------------------------------------=| + | /default | My::App | + '=--------------------------------+------------------------------------=' + + [....] [catalyst] [info] My::App powered by Catalyst 5.20 + You can connect to your server at http://localhost:3000/ + +(Note that each line logged by Catalyst begins with a timestamp, which has +been replaced here with "C<...>" so that the text fits onto the lines.) + +The server is now waiting for you to make requests of it. Try using +telnet to manually make a simple GET request of the server (when +telnet responds with "Escape character is '^]'.", type "GET / HTTP/1.0" +and hit return twice): $ telnet localhost 3000 Trying 127.0.0.1... @@ -80,10 +93,10 @@ manually make a simple GET request of the server (when telnet responds with GET / HTTP/1.0 HTTP/1.0 200 - Server: Catalyst/4.26 + Server: Catalyst/5.20 Status: 200 - Date: Sun, 20 Mar 2005 12:31:55 GMT - X-catalyst: 4.26 + Date: Fri May 13 14:15:46 EDT 2005 + X-catalyst: 5.20 Content-length: 40 Content-Type: text/html; charset=ISO-8859-1 @@ -93,34 +106,37 @@ manually make a simple GET request of the server (when telnet responds with More trace messages will appear in the original terminal window: - [Sun Mar 20 12:31:55 2005] [catalyst] [debug] ******************************** - [Sun Mar 20 12:31:55 2005] [catalyst] [debug] * Request 1 (0.027/s) [9818] - [Sun Mar 20 12:31:55 2005] [catalyst] [debug] ******************************** - [Sun Mar 20 12:31:55 2005] [catalyst] [debug] "GET" request for "" - [Sun Mar 20 12:31:55 2005] [catalyst] [debug] Using default action - [Sun Mar 20 12:31:55 2005] [catalyst] [info] Processing "!default" took 0.000033s - [Sun Mar 20 12:31:55 2005] [catalyst] [info] Request took 0.051399s (19.456/s) + [...] [catalyst] [debug] ******************************** + [...] [catalyst] [debug] * Request 1 (0.027/s) [9818] + [...] [catalyst] [debug] ******************************** + [...] [catalyst] [debug] "GET" request for "" from localhost + [...] [catalyst] [info] Request took 0.051399s (19.456/s) + .=--------------------------------------------------+----------=. + | Action | Time | + |=--------------------------------------------------+----------=| + | /default | 0.000026s | + '=--------------------------------------------------+----------=' The server will continue running until you interrupt it. The application can also be tested from the command line using the generated -helper script, C