tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hls...@apache.org
Subject cvs commit: jakarta-tapestry/examples/Tutorial/context/WEB-INF web.xml
Date Fri, 17 Jan 2003 17:45:32 GMT
hlship      2003/01/17 09:45:32

  Modified:    examples/Tutorial/src/tutorial/hangman Home.java Visit.java
                        Guess.java HangmanGame.java
               examples/Tutorial/src/tutorial/workbench/localization
                        Localization.java
               examples/Vlib build.xml jetty.xml
               examples/Tutorial/src/tutorial/border BorderEngine.java
                        Border.java
               examples/Vlib/src/net/sf/tapestry/vlib/pages Login.java
               examples/Tutorial/src/tutorial/workbench
                        WorkbenchValidationDelegate.java
               examples/Tutorial2 build.xml
               examples/Tutorial/src/tutorial/portal Portlet.java
                        PortletSelectionModel.java Slashdot.java Home.java
                        Stocks.java Stock.java PortletModel.java Visit.java
                        PortletChannel.java SlashdotParser.java
               examples/Tutorial/src/tutorial/workbench/components
                        Border.java
               examples/Tutorial/src/tutorial/workbench/palette
                        Palette.java
               examples/Vlib/src/net/sf/tapestry/vlib/components
                        Browser.java Border.java PersonLink.java
               examples/Tutorial/src/tutorial/workbench/upload Upload.java
               examples/Tutorial/src/tutorial/workbench/fields Fields.java
               examples/VlibBeans jbosscmp-jdbc.xml ejb-jar.xml
               examples/Tutorial build.xml jetty.xml
               examples/Tutorial/src/tutorial/workbench/table
                        LocaleList.java
               examples/Tutorial/src/tutorial/workbench/chart
                        ChartService.java Chart.java
               examples/VlibBeans/src/net/sf/tapestry/vlib/ejb/impl
                        OperationsBean.java
               examples/Vlib/src/net/sf/tapestry/vlib Vlib.application
                        VirtualLibraryEngine.java
  Added:       examples/Vlib/context/WEB-INF Login.page Home.page
                        ApplicationUnavailable.page Publisher.script
                        Browser.html ViewBook.page ViewPerson.page
                        Borrow.jwc ShowMessage.html BookLink.html
                        ShowError.html Register.page NewBook.page
                        ShowMessage.jwc BorrowedBooks.page Borrow.html
                        EditBook.page Browser.jwc web.xml PersonLink.html
                        ShowError.jwc Matches.page Border.html
                        ShowValidationError.jwc BookLink.jwc
                        EditProfile.page MyLibrary.page
                        ConfirmBookDelete.page Border.jwc PersonLink.jwc
                        ShowValidationError.html
               examples/Tutorial/context/workbench
                        LocalizationChange_fr.html PaletteResults.html
                        Localization_de.html Upload.html Dates.html
                        LocalizationChange.html LocalizationChange_it.html
                        Palette.html Home.html FieldsResults.html
                        Localization_it.html Fields.html .cvsignore
                        UploadResults.html ExceptionTab.html Redirect.html
                        Table.html Localization_fr.html Localization.html
                        LocalizationChange_de.html Forms.html
                        popuplink-help.html Chart.html
               examples/Tutorial/context/images show-inspector.gif
                        warning.gif .cvsignore workbench.gif
               examples/Tutorial/context/hangman Home.html Failed.html
                        Success.html Guess.html
               examples/Tutorial/context/WEB-INF/workbench Upload.page
                        Border.properties Palette.page UploadResults.page
                        Dates.page LocalizationChange.page
                        Border_fr.properties Table.page LocaleList.jwc
                        FieldsResults.page Localization.page
                        workbench.application Redirect.page Chart.page
                        ShowError.jwc ShowError.html Border_it.properties
                        Forms.page LocaleSelection.jwc LocaleSelection.html
                        PaletteResults.page Fields.page
                        Border_de.properties ErrorFest.page LocaleList.html
                        Border.html Border.jwc Forms.properties
               examples/Tutorial/context/portal/images close.gif rs.gif
                        um.gif minimize.gif minimize-focus.gif
                        maximize-focus.gif lm.gif maximize.gif lr.gif
                        shim.gif Warning.gif ul.gif close-focus.gif ls.gif
                        ll.gif
               examples/Vlib/context/images ico_delete.gif icon_return.gif
                        spacer.gif hd_matchingbooks.gif hd_deletebook.gif
                        hd_borrowedbooks.gif hd_transferbooks.gif
                        hd_editusers.gif hd_persondetails.gif
                        hd_viewbook.gif dots.gif .cvsignore ico_info.gif
                        hd_slash.gif bt_update.gif bt_login.gif
                        hd_virtuallibrary.gif icon_borrow.gif
                        bt_register.gif hd_searchforbooks.gif
                        ico_invalid.gif hd_editpublishers.gif
                        hd_confirmdelete.gif deselect_left_bl.gif
                        hd_editbooks.gif new.gif select_right_bl_off.gif
                        vert_ltblue.gif hd_mylibrary.gif hd_editprofile.gif
                        dots_subleft.gif hd_login.gif hd_admin.gif
                        hd_search.gif hd_register_noslash.gif ico_edit.gif
                        ico_go.gif dots_leftnav.gif ico_t.gif
                        hd_addnewbooks.gif hd_bookinventory.gif
                        deselect_left_bl_off.gif select_right_bl.gif
                        dot.gif hd_searchresults.gif hd_bookdetails.gif
               examples/Tutorial/src/tutorial/workbench/localization
                        LocalizationChange.java
               examples/Vlib/src/net/sf/tapestry/vlib/pages ViewPerson.java
               examples/Tutorial/context/workbench/images Warning-small.gif
                        Change_fr.gif tab-inactive-left.gif
                        tab-inactive-mid.gif Continue.gif
                        tab-active-right.gif Back-focus_it.gif
                        Back-focus.gif Back_it.gif tab-active-left.gif
                        Back-focus_fr.gif Warning.gif Change_de.gif
                        Back.gif Change.gif Update.gif Change_it.gif
                        Back-focus_de.gif Back_de.gif
                        tab-inactive-right.gif tab-active-mid.gif
                        Back_fr.gif
               examples/Tutorial/context/WEB-INF/portal ShowError.html
                        portal.application Weather.page ShowError.jwc
                        Slashdot.page Stocks.page Portlet.html Border.html
                        Border.jwc Home.page Portlet.jwc
               examples/Tutorial/context/portal Slashdot.html .cvsignore
                        Stocks.html Home.html Weather.html
               examples/Tutorial/src/tutorial/workbench/palette
                        PaletteResults.java
               examples/Tutorial/src/tutorial/workbench/upload
                        UploadResults.java
               examples/Vlib/context TransferBooks.html EditProfile.html
                        MyLibrary.html EditPublishers.html EditUsers.html
                        ConfirmBookDelete.html Login.html Register.html
                        EditBook.html BorrowedBooks.html
                        ApplicationUnavailable.html Home.html NewBook.html
                        Matches.html ViewBook.html index.html
               examples/Tutorial/context index.html redirect-target.html
               examples/Tutorial/context/WEB-INF/hangman Guess.page
                        Home.page
               examples/Tutorial/context/WEB-INF/simple Home.page
               examples/Tutorial/context/border Legal.html Credo.html
                        Home.html
               examples/Vlib/context/scripts style_virtlib_pcIE55.css
               examples/Tutorial/context/WEB-INF/border Credo.page
                        border.application Border.jwc Home.page Border.html
                        Legal.page
               examples/Tutorial/context/simple Home.html
               examples/Tutorial/context/workbench/css workbench.css
               examples/Tutorial/context/WEB-INF web.xml
  Removed:     examples/Tutorial/src/tutorial/hangman Hangman.application
                        Guess.page Guess.html Success.page Success.html
                        Failed.page Failed.html Home.html Home.page
               examples/Tutorial/src/tutorial/workbench/localization
                        Localization.html Change.page Change_de.gif
                        Change.gif Localization_de.html Change_fr.gif
                        Change_de.html Localization.page Change.html
                        Localization_it.html Localization_fr.html
                        Change_it.html Change_fr.html Change_it.gif
               examples/Vlib index.html
               examples/Tutorial/src/tutorial/border Home.page Credo.html
                        Border.jwc Legal.html Credo.page Border.html
                        Home.html Border.application Legal.page
               examples/Vlib/src/net/sf/tapestry/vlib/pages NewBook.html
                        Register.html MyLibrary.html Home.html
                        BorrowedBooks.html Publisher.script PersonPage.page
                        ViewBook.page ApplicationUnavailable.page
                        Matches.page Register.page MyLibrary.page
                        EditProfile.page ConfirmBookDelete.html
                        ApplicationUnavailable.html Login.page
                        EditProfile.html ConfirmBookDelete.page
                        EditBook.html NewBook.page ViewBook.html Home.page
                        EditBook.page PersonPage.html Matches.html
                        BorrowedBooks.page Login.html
               examples/Tutorial/src/tutorial/workbench Home.html
                        Redirect.page Home.page Workbench.application
                        Redirect.html ExceptionTab.page ErrorFest.page
                        Inner.library
               examples/Tutorial/src/tutorial/portal Stocks.page
                        Portal.application Slashdot.html Weather.page
                        Portlet.jwc Stocks.html Slashdot.page Border.html
                        Home.page Weather.html Border.jwc Home.html
                        Portlet.html
               examples/Vlib/src/net/sf/tapestry/vlib/pages/admin
                        EditUsers.html EditPublishers.html
                        TransferBooks.html
               examples/Tutorial/src/tutorial/workbench/components
                        tab-inactive-right.gif Border_de.properties
                        Border.properties Border_fr.properties
                        tab-inactive-mid.gif tab-active-mid.gif
                        tab-active-right.gif Border_it.properties
                        tab-inactive-left.gif tab-active-left.gif
                        ShowError.jwc Border.jwc ShowError.html
               examples/Tutorial/src/tutorial/workbench/palette
                        Results.page Palette.page Results.html Palette.html
               examples/Vlib/src/net/sf/tapestry/vlib/components
                        ShowMessage.jwc Border.jwc Borrow.jwc
                        PersonLink.jwc Borrow.html ShowValidationError.html
                        Browser.html BookLink.jwc ShowMessage.html
                        PersonLink.html ShowError.jwc Browser.jwc
                        ShowValidationError.jwc BookLink.html
                        ShowError.html
               examples/Tutorial/src/tutorial/workbench/upload Results.html
                        Results.page Upload.html Upload.page
               examples/Tutorial/src/tutorial/workbench/fields Results.html
                        Fields.page Forms.page Forms.properties Forms.html
                        Fields.html Results.page
               examples/Tutorial ExceptionTab.html redirect-target.html
                        index.html
               examples/Tutorial/src/tutorial/workbench/table Table.page
                        Table.html LocaleSelection.html LocaleList.html
               examples/Tutorial/src/tutorial/workbench/chart Chart.page
                        Chart.html
               examples/Tutorial/src/tutorial/simple Simple.application
                        Home.page Home.html
  Log:
  Roll in changes from hship-2-3 branch.
  
  Revision  Changes    Path
  1.2       +60 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Login.page
  
  
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/WEB-INF/Home.page
  
  
  
  
  1.2       +11 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ApplicationUnavailable.page
  
  
  
  
  1.2       +77 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Publisher.script
  
  
  
  
  1.2       +30 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Browser.html
  
  
  
  
  1.2       +62 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ViewBook.page
  
  
  
  
  1.2       +74 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ViewPerson.page
  
  
  
  
  1.2       +22 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Borrow.jwc
  
  
  
  
  1.2       +20 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ShowMessage.html
  
  
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Vlib/context/WEB-INF/BookLink.html
  
  
  
  
  1.2       +19 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ShowError.html
  
  
  
  
  1.2       +87 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Register.page
  
  
  
  
  1.2       +95 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/NewBook.page
  
  
  
  
  1.2       +9 -0      jakarta-tapestry/examples/Vlib/context/WEB-INF/ShowMessage.jwc
  
  
  
  
  1.2       +26 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/BorrowedBooks.page
  
  
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/WEB-INF/Borrow.html
  
  
  
  
  1.2       +106 -0    jakarta-tapestry/examples/Vlib/context/WEB-INF/EditBook.page
  
  
  
  
  1.2       +14 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Browser.jwc
  
  
  
  
  1.2       +31 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/web.xml
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/PersonLink.html
  
  
  
  
  1.2       +10 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ShowError.jwc
  
  
  
  
  1.2       +56 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Matches.page
  
  
  
  
  1.2       +150 -0    jakarta-tapestry/examples/Vlib/context/WEB-INF/Border.html
  
  
  
  
  1.2       +12 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ShowValidationError.jwc
  
  
  
  
  1.2       +18 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/BookLink.jwc
  
  
  
  
  1.2       +87 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/EditProfile.page
  
  
  
  
  1.2       +71 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/MyLibrary.page
  
  
  
  
  1.2       +29 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ConfirmBookDelete.page
  
  
  
  
  1.2       +43 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/Border.jwc
  
  
  
  
  1.2       +31 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/PersonLink.jwc
  
  
  
  
  1.2       +26 -0     jakarta-tapestry/examples/Vlib/context/WEB-INF/ShowValidationError.html
  
  
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Tutorial/context/workbench/LocalizationChange_fr.html
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/PaletteResults.html
  
  
  
  
  1.2       +19 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Localization_de.html
  
  
  
  
  1.2       +53 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Upload.html
  
  
  
  
  1.2       +30 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Dates.html
  
  
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Tutorial/context/workbench/LocalizationChange.html
  
  
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Tutorial/context/workbench/LocalizationChange_it.html
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/Palette.html
  
  
  
  
  1.2       +15 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Home.html
  
  
  
  
  1.2       +47 -0     jakarta-tapestry/examples/Tutorial/context/workbench/FieldsResults.html
  
  
  
  
  1.2       +21 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Localization_it.html
  
  
  
  
  1.2       +67 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Fields.html
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/.cvsignore
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/UploadResults.html
  
  
  
  
  1.2       +21 -0     jakarta-tapestry/examples/Tutorial/context/workbench/ExceptionTab.html
  
  
  
  
  1.2       +32 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Redirect.html
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Table.html
  
  
  
  
  1.2       +19 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Localization_fr.html
  
  
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/Localization.html
  
  
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Tutorial/context/workbench/LocalizationChange_de.html
  
  
  
  
  1.2       +40 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Forms.html
  
  
  
  
  1.2       +42 -0     jakarta-tapestry/examples/Tutorial/context/workbench/popuplink-help.html
  
  
  
  
  1.2       +42 -0     jakarta-tapestry/examples/Tutorial/context/workbench/Chart.html
  
  
  
  
  1.2       +17 -0     jakarta-tapestry/examples/Tutorial/context/images/show-inspector.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Tutorial/context/images/warning.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/images/.cvsignore
  
  
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/images/workbench.gif
  
  	<<Binary file>>
  
  
  1.2       +49 -0     jakarta-tapestry/examples/Tutorial/context/hangman/Home.html
  
  
  
  
  1.2       +19 -0     jakarta-tapestry/examples/Tutorial/context/hangman/Failed.html
  
  
  
  
  1.2       +19 -0     jakarta-tapestry/examples/Tutorial/context/hangman/Success.html
  
  
  
  
  1.2       +33 -0     jakarta-tapestry/examples/Tutorial/context/hangman/Guess.html
  
  
  
  
  1.12      +14 -16    jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/Home.java
  
  Index: Home.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/Home.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- Home.java	13 Jan 2003 03:33:12 -0000	1.11
  +++ Home.java	17 Jan 2003 17:45:22 -0000	1.12
  @@ -73,45 +73,43 @@
       public static final int MEDIUM = 5;
       public static final int HARD = 3;
   
  -    private int misses;
  -    private String error;
  +    private int _misses;
  +    private String _error;
   
  -    public void detach()
  +    public void initialize()
       {
  -        misses = 0;
  -        error = null;
  -
  -        super.detach();
  +        _misses = 0;
  +        _error = null;
       }
   
       public int getMisses()
       {
  -        return misses;
  +        return _misses;
       }
   
  -    public void setMisses(int value)
  +    public void setMisses(int misses)
       {
  -        misses = value;
  +        _misses = misses;
   
  -        fireObservedChange("misses", value);
  +        fireObservedChange("misses", misses);
       }
   
       public String getError()
       {
  -        return error;
  +        return _error;
       }
   
       public void formSubmit(IRequestCycle cycle)
       {
  -        if (misses == 0)
  +        if (_misses == 0)
           {
  -            error = "Please select a game difficulty.";
  +            _error = "Please select a game difficulty.";
               return;
           }
   
           Visit visit = (Visit) getVisit();
   
  -        visit.start(misses);
  +        visit.start(_misses);
   
           cycle.setPage("Guess");
       }
  
  
  
  1.8       +12 -12    jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/Visit.java
  
  Index: Visit.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/Visit.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- Visit.java	13 Jan 2003 03:33:12 -0000	1.7
  +++ Visit.java	17 Jan 2003 17:45:22 -0000	1.8
  @@ -88,16 +88,16 @@
               "massacre",
               "universe" };
   
  -    private List wordList;
  +    private List _wordList;
   
  -    private HangmanGame game;
  +    private HangmanGame _game;
   
       public HangmanGame getGame()
       {
  -        if (game == null)
  -            game = new HangmanGame();
  +        if (_game == null)
  +            _game = new HangmanGame();
   
  -        return game;
  +        return _game;
       }
   
       /**
  @@ -112,21 +112,21 @@
   
       private String getWord()
       {
  -        if (wordList == null)
  -            wordList = new ArrayList();
  +        if (_wordList == null)
  +            _wordList = new ArrayList();
   
  -        if (wordList.size() == 0)
  +        if (_wordList.size() == 0)
           {
               // Create a list of words that the user will see and shuffle them
               // in random order.  This prevents repeats of words until the
               // user has seen them all.
   
  -            wordList.addAll(Arrays.asList(words));
  -            Collections.shuffle(wordList);
  +            _wordList.addAll(Arrays.asList(words));
  +            Collections.shuffle(_wordList);
           }
   
           // Remove the last word in the list.
   
  -        return (String) wordList.remove(wordList.size() - 1);
  +        return (String) _wordList.remove(_wordList.size() - 1);
       }
   }
  
  
  
  1.14      +15 -20    jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/Guess.java
  
  Index: Guess.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/Guess.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- Guess.java	13 Jan 2003 03:33:12 -0000	1.13
  +++ Guess.java	17 Jan 2003 17:45:22 -0000	1.14
  @@ -69,27 +69,25 @@
   
   public class Guess extends BasePage
   {
  -    private HangmanGame game;
  -    private String error;
  +    private HangmanGame _game;
  +    private String _error;
   
  -    public void detach()
  +    public void initialize()
       {
  -        game = null;
  -        error = null;
  -
  -        super.detach();
  +        _game = null;
  +        _error = null;
       }
   
       public String getError()
       {
  -        return error;
  +        return _error;
       }
   
       public void makeGuess(IRequestCycle cycle)
       {
           Object[] parameters = cycle.getServiceParameters();
  -        char letter = ((Character)parameters[0]).charValue();
  -        
  +        char letter = ((Character) parameters[0]).charValue();
  +
           HangmanGame game = getGame();
   
           try
  @@ -98,7 +96,7 @@
           }
           catch (GameException ex)
           {
  -            error = ex.getMessage();
  +            _error = ex.getMessage();
   
               if (game.getFailed())
                   cycle.setPage("Failed");
  @@ -121,12 +119,9 @@
   
       public String getGuessed()
       {
  -        StringBuffer buffer;
  -        char[] guessed;
  -
  -        guessed = getGame().getGuessed();
  +        char[] guessed = getGame().getGuessed();
   
  -        buffer = new StringBuffer(2 * guessed.length);
  +        StringBuffer buffer = new StringBuffer(2 * guessed.length);
           for (int i = 0; i < guessed.length; i++)
           {
               if (i > 0)
  @@ -145,13 +140,13 @@
   
       private HangmanGame getGame()
       {
  -        if (game == null)
  +        if (_game == null)
           {
               Visit visit = (Visit) getVisit();
  -            game = visit.getGame();
  +            _game = visit.getGame();
           }
   
  -        return game;
  +        return _game;
       }
   
       private Character[] convertCharArray(char[] array)
  
  
  
  1.8       +142 -143  jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/HangmanGame.java
  
  Index: HangmanGame.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/hangman/HangmanGame.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- HangmanGame.java	13 Jan 2003 03:33:12 -0000	1.7
  +++ HangmanGame.java	17 Jan 2003 17:45:22 -0000	1.8
  @@ -52,7 +52,7 @@
    *  information on the Apache Software Foundation, please see
    *  <http://www.apache.org/>.
    */
  -package tutorial.hangman;
  + package tutorial.hangman;
   
   import java.io.Serializable;
   
  @@ -67,145 +67,144 @@
   
   public class HangmanGame implements Serializable
   {
  -	private char[] word;
  -	private char[] guessed;
  -	private boolean[] used;
  -	private int lettersLeft;
  -
  -	private int missed;
  -	private int maxMisses;
  -
  -	private static final int N_LETTERS = 26;
  -
  -	/**
  -	 *  Starts a new game, resetting the number of misses.
  -	 *
  -	 **/
  -
  -	public void start(String word, int maxMisses)
  -	{
  -		this.word = word.toUpperCase().toCharArray();
  -
  -		guessed = new char[this.word.length];
  -		for (int i = 0; i < this.word.length; i++)
  -			guessed[i] = '_';
  -
  -		if (used == null)
  -			used = new boolean[N_LETTERS];
  -
  -		for (int i = 0; i < N_LETTERS; i++)
  -			used[i] = false;
  -
  -		lettersLeft = this.word.length;
  -		missed = 0;
  -		this.maxMisses = maxMisses;
  -	}
  -
  -	/**
  -	 *  Returns true when the maximum number of misses has been reached.
  -	 *
  -	 **/
  -
  -	public boolean getFailed()
  -	{
  -		return missed >= maxMisses;
  -	}
  -
  -	/**
  -	 *  Returns true when all letters have been guessed.
  -	 *
  -	 **/
  -
  -	public boolean getDone()
  -	{
  -		return lettersLeft == 0;
  -	}
  -
  -	/**
  -	 *  Returns an array of characters, each position is either a correctly guessed
  -	 *  letter, or an underscore (for an as-yet unguessed letter).
  -	 *
  -	 **/
  -
  -	public char[] getGuessed()
  -	{
  -		return guessed;
  -	}
  -
  -	/**
  -	 *  Returns the word being guessed.
  -	 *
  -	 **/
  -
  -	public String getWord()
  -	{
  -		return new String(word);
  -	}
  -
  -	/**
  -	 *  Guesses a letter.  Returns the number of letters left to guess.
  -	 *
  -	 *  @param letter a single letter, in the range 'A' to 'Z'.
  -	 *
  -	 *  @throws GameException if the letter doesn't appear
  -	 *  in the word.
  -	 *
  -	 **/
  -
  -	public void guess(char letter) throws GameException
  -	{
  -		int index;
  -		boolean found = false;
  -
  -		used[letter - 'A'] = true;
  -
  -		for (int i = 0; i < word.length; i++)
  -		{
  -			if (word[i] == letter)
  -			{
  -				found = true;
  -				// Replace the underscore with the actual letter
  -				guessed[i] = letter;
  -				lettersLeft--;
  -			}
  -		}
  -
  -		if (!found)
  -		{
  -			missed++;
  -			throw new GameException("'" + letter + "' is not in the word.");
  -		}
  -	}
  -
  -	/**
  -	 *  Returns an array of unused letters that may be guessed.
  -	 *
  -	 **/
  -
  -	public char[] getUnusedLetters()
  -	{
  -		char[] buffer = new char[N_LETTERS];
  -		int length = 0;
  -
  -		for (char letter = 'A'; letter <= 'Z'; letter++)
  -		{
  -			if (!used[letter - 'A'])
  -				buffer[length++] = letter;
  -		}
  -
  -		char[] result = new char[length];
  -		System.arraycopy(buffer, 0, result, 0, length);
  -
  -		return result;
  -	}
  -
  -	public int getMissed()
  -	{
  -		return missed;
  -	}
  -
  -	public int getMaxMisses()
  -	{
  -		return maxMisses;
  -	}
  +    private char[] _word;
  +    private char[] _guessed;
  +    private boolean[] _used;
  +    private int _lettersLeft;
  +
  +    private int _missed;
  +    private int _maxMisses;
  +
  +    private static final int N_LETTERS = 26;
  +
  +    /**
  +     *  Starts a new game, resetting the number of misses.
  +     *
  +     **/
  +
  +    public void start(String word, int maxMisses)
  +    {
  +        _word = word.toUpperCase().toCharArray();
  +
  +        _guessed = new char[_word.length];
  +        for (int i = 0; i < _word.length; i++)
  +            _guessed[i] = '_';
  +
  +        if (_used == null)
  +            _used = new boolean[N_LETTERS];
  +
  +        for (int i = 0; i < N_LETTERS; i++)
  +            _used[i] = false;
  +
  +        _lettersLeft = _word.length;
  +        _missed = 0;
  +        _maxMisses = maxMisses;
  +    }
  +
  +    /**
  +     *  Returns true when the maximum number of misses has been reached.
  +     *
  +     **/
  +
  +    public boolean getFailed()
  +    {
  +        return _missed >= _maxMisses;
  +    }
  +
  +    /**
  +     *  Returns true when all letters have been guessed.
  +     *
  +     **/
  +
  +    public boolean getDone()
  +    {
  +        return _lettersLeft == 0;
  +    }
  +
  +    /**
  +     *  Returns an array of characters, each position is either a correctly guessed
  +     *  letter, or an underscore (for an as-yet unguessed letter).
  +     *
  +     **/
  +
  +    public char[] getGuessed()
  +    {
  +        return _guessed;
  +    }
  +
  +    /**
  +     *  Returns the word being guessed.
  +     *
  +     **/
  +
  +    public String getWord()
  +    {
  +        return new String(_word);
  +    }
  +
  +    /**
  +     *  Guesses a letter.  Returns the number of letters left to guess.
  +     *
  +     *  @param letter a single letter, in the range 'A' to 'Z'.
  +     *
  +     *  @throws GameException if the letter doesn't appear
  +     *  in the word.
  +     *
  +     **/
  +
  +    public void guess(char letter) throws GameException
  +    {
  +        boolean found = false;
  +
  +        _used[letter - 'A'] = true;
  +
  +        for (int i = 0; i < _word.length; i++)
  +        {
  +            if (_word[i] == letter)
  +            {
  +                found = true;
  +                // Replace the underscore with the actual letter
  +                _guessed[i] = letter;
  +                _lettersLeft--;
  +            }
  +        }
  +
  +        if (!found)
  +        {
  +            _missed++;
  +            throw new GameException("'" + letter + "' is not in the word.");
  +        }
  +    }
  +
  +    /**
  +     *  Returns an array of unused letters that may be guessed.
  +     *
  +     **/
  +
  +    public char[] getUnusedLetters()
  +    {
  +        char[] buffer = new char[N_LETTERS];
  +        int length = 0;
  +
  +        for (char letter = 'A'; letter <= 'Z'; letter++)
  +        {
  +            if (!_used[letter - 'A'])
  +                buffer[length++] = letter;
  +        }
  +
  +        char[] result = new char[length];
  +        System.arraycopy(buffer, 0, result, 0, length);
  +
  +        return result;
  +    }
  +
  +    public int getMissed()
  +    {
  +        return _missed;
  +    }
  +
  +    public int getMaxMisses()
  +    {
  +        return _maxMisses;
  +    }
   }
  
  
  
  1.2       +22 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Upload.page
  
  
  
  
  1.2       +25 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Border.properties
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Palette.page
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/UploadResults.page
  
  
  
  
  1.2       +17 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Dates.page
  
  
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/LocalizationChange.page
  
  
  
  
  1.2       +11 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Border_fr.properties
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Table.page
  
  
  
  
  1.2       +43 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/LocaleList.jwc
  
  
  
  
  1.2       +20 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/FieldsResults.page
  
  
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Localization.page
  
  
  
  
  1.2       +17 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/workbench.application
  
  
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Redirect.page
  
  
  
  
  1.2       +59 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Chart.page
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/ShowError.jwc
  
  
  
  
  1.2       +14 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/ShowError.html
  
  
  
  
  1.2       +11 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Border_it.properties
  
  
  
  
  1.2       +22 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Forms.page
  
  
  
  
  1.2       +30 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/LocaleSelection.jwc
  
  
  
  
  1.2       +39 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/LocaleSelection.html
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/PaletteResults.page
  
  
  
  
  1.2       +117 -0    jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Fields.page
  
  
  
  
  1.2       +12 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Border_de.properties
  
  
  
  
  1.2       +68 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/ErrorFest.page
  
  
  
  
  1.2       +30 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/LocaleList.html
  
  
  
  
  1.2       +59 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Border.html
  
  
  
  
  1.2       +56 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Border.jwc
  
  
  
  
  1.2       +6 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/workbench/Forms.properties
  
  
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/close.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/rs.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/um.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/minimize.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/minimize-focus.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/maximize-focus.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/lm.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/maximize.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/lr.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/shim.gif
  
  	<<Binary file>>
  
  
  1.2       +9 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/Warning.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/ul.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/close-focus.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/ls.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/images/ll.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Vlib/context/images/ico_delete.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/icon_return.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/spacer.gif
  
  	<<Binary file>>
  
  
  1.2       +9 -0      jakarta-tapestry/examples/Vlib/context/images/hd_matchingbooks.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/hd_deletebook.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Vlib/context/images/hd_borrowedbooks.gif
  
  	<<Binary file>>
  
  
  1.2       +9 -0      jakarta-tapestry/examples/Vlib/context/images/hd_transferbooks.gif
  
  	<<Binary file>>
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Vlib/context/images/hd_editusers.gif
  
  	<<Binary file>>
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/images/hd_persondetails.gif
  
  	<<Binary file>>
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Vlib/context/images/hd_viewbook.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Vlib/context/images/dots.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/.cvsignore
  
  
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/ico_info.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Vlib/context/images/hd_slash.gif
  
  	<<Binary file>>
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Vlib/context/images/bt_update.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/bt_login.gif
  
  	<<Binary file>>
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Vlib/context/images/hd_virtuallibrary.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Vlib/context/images/icon_borrow.gif
  
  	<<Binary file>>
  
  
  1.2       +6 -0      jakarta-tapestry/examples/Vlib/context/images/bt_register.gif
  
  	<<Binary file>>
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Vlib/context/images/hd_searchforbooks.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Vlib/context/images/ico_invalid.gif
  
  	<<Binary file>>
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/images/hd_editpublishers.gif
  
  	<<Binary file>>
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/images/hd_confirmdelete.gif
  
  	<<Binary file>>
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/images/deselect_left_bl.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/hd_editbooks.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/new.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/select_right_bl_off.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/vert_ltblue.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/hd_mylibrary.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/hd_editprofile.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Vlib/context/images/dots_subleft.gif
  
  	<<Binary file>>
  
  
  1.2       +6 -0      jakarta-tapestry/examples/Vlib/context/images/hd_login.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/hd_admin.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/hd_search.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/hd_register_noslash.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/ico_edit.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/ico_go.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/dots_leftnav.gif
  
  	<<Binary file>>
  
  
  1.2       +10 -0     jakarta-tapestry/examples/Vlib/context/images/ico_t.gif
  
  	<<Binary file>>
  
  
  1.2       +9 -0      jakarta-tapestry/examples/Vlib/context/images/hd_addnewbooks.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/hd_bookinventory.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Vlib/context/images/deselect_left_bl_off.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/select_right_bl.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Vlib/context/images/dot.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Vlib/context/images/hd_searchresults.gif
  
  	<<Binary file>>
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Vlib/context/images/hd_bookdetails.gif
  
  	<<Binary file>>
  
  
  1.7       +2 -2      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/localization/Localization.java
  
  Index: Localization.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/localization/Localization.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Localization.java	13 Jan 2003 03:33:42 -0000	1.6
  +++ Localization.java	17 Jan 2003 17:45:26 -0000	1.7
  @@ -74,7 +74,7 @@
   
   	public void formSubmit(IRequestCycle cycle)
   	{
  -		cycle.setPage("localization.Change");
  +		cycle.setPage("LocalizationChange");
   	}
   
   	public IPropertySelectionModel getLocaleModel()
  
  
  
  1.2       +83 -0     jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/localization/LocalizationChange.java
  
  
  
  
  1.23      +12 -7     jakarta-tapestry/examples/Vlib/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/build.xml,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- build.xml	12 Oct 2002 17:30:33 -0000	1.22
  +++ build.xml	17 Jan 2003 17:45:26 -0000	1.23
  @@ -15,6 +15,7 @@
       <pathelement location="${lib.ext.dir}/javax.xml.jaxp.jar"/>
       <pathelement location="${lib.ext.dir}/org.apache.crimson.jar"/>
       <pathelement location="${lib.ext.dir}/${ognl.jar}"/>
  +    <pathelement location="${lib.ext.dir}/${bsf.jar}"/>    
       <pathelement location="${framework.jar}"/>
       <pathelement location="${contrib.jar}"/>
       <pathelement location="${vlibbeans.jar}"/>
  @@ -39,14 +40,18 @@
     </target>
       
     <target name="install" depends="compile" description="Compile all classes and build the installed WAR including all package resources.">
  -    <war warfile="${vlib.war}" webxml="WEB-INF/web.xml">
  -      <fileset dir=".">
  -        <include name="*.html"/>
  -        <include name="images/**"/>
  -        <include name="scripts/**"/>
  -     </fileset>
  +    <war warfile="${vlib.war}" webxml="context/WEB-INF/web.xml">
  +      <fileset dir="context">
  +        <exclude name="WEB-INF/web.xml"/>
  +      </fileset>
  +     
  +      <!-- <webinf dir="context/WEB-INF"/> -->
        
         <classes dir="${classes.dir}"/>
  +      
  +      <!-- Pick up a few non-class resources from source directory.
  +      	   This includes a few specifications, scripts, and such.  -->
  +      	   
         <classes dir="${src.dir}">
           <exclude name="**/*.java"/>
           <exclude name="**/package.html"/>
  
  
  
  1.12      +1 -1      jakarta-tapestry/examples/Vlib/jetty.xml
  
  Index: jetty.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/jetty.xml,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- jetty.xml	1 Oct 2002 21:20:47 -0000	1.11
  +++ jetty.xml	17 Jan 2003 17:45:26 -0000	1.12
  @@ -1 +1 @@
  -<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- $Id$ -->
<!DOCTYPE Configure PUBLIC
	"-//Mort Bay Consulting//DTD Configure 1.2//EN"
	"http://jetty.mortbay.org/configure_1_2.dtd">

<Configure class="org.mortbay.jetty.Server">

  <Call name="addListener">
    <Arg>
      <New class="org.mortbay.http.SocketListener">
        <Set name="Port">8080</Set>
        <Set name="MinThreads">1</Set>
        <Set name="MaxThreads">10</Set>
        <Set name="MaxIdleTimeMs">50000</Set>
      </New>
    </Arg>
  </Call>
  	
  <Call name="addWebApplication">
    <Arg>/vlib</Arg>
    <Arg>.</Arg>
    <Set name="DefaultsDescriptor">../../config/webdefault.xml</Set>
  </Call>
	
  <Call name="addContext">
    <Arg>/private/*</Arg>
    <Set name="ResourceBase">private</Set>
    
    <Call name="addHandler">
      <Arg><New class="org.mortbay.http.handler.ResourceHandler"/></Arg>
    </Call>
    
    <Call name="addHandler">
    	<Arg><New class="org.mortbay.http.handler.NotFoundHandler"/></Arg>
    </Call>
  </Call>
  
  <Call name="addContext">
    <Arg>/</Arg>   
    <Set name="realmName">Jetty Demo Realm</Set>
   
    <Call name="addServlet">
      <Arg>Admin</Arg>
      <Arg>/</Arg>
      <Arg>org.mortbay.servlet.AdminServlet</Arg>
    </Call>
    
    <Call name="setAttribute">
      <Arg>org.mortbay.http.HttpServer</Arg>
      <Arg><Call name="getHttpServer"/></Arg>
    </Call>
  </Call>    
</Configure>
  +<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- $Id$ -->
<!DOCTYPE Configure PUBLIC
	"-//Mort Bay Consulting//DTD Configure 1.2//EN"
	"http://jetty.mortbay.org/configure_1_2.dtd">

<Configure class="org.mortbay.jetty.Server">

  <Call name="addListener">
    <Arg>
      <New class="org.mortbay.http.SocketListener">
        <Set name="Port">8080</Set>
        <Set name="MinThreads">1</Set>
        <Set name="MaxThreads">10</Set>
        <Set name="MaxIdleTimeMs">50000</Set>
      </New>
    </Arg>
  </Call>
  	
  <Call name="addWebApplication">
    <Arg>/vlib</Arg>
    <Arg>context</Arg>
    <Set name="DefaultsDescriptor">../../config/webdefault.xml</Set>
  </Call>
	
  <Call name="addContext">
    <Arg>/private/*</Arg>
    <Set name="ResourceBase">private</Set>
    
    <Call name="addHandler">
      <Arg><New class="org.mortbay.http.handler.ResourceHandler"/></Arg>
    </Call>
    
    <Call name="addHandler">
    	<Arg><New class="org.mortbay.http.handler.NotFoundHandler"/></Arg>
    </Call>
  </Call>
  
  <Call name="addContext">
    <Arg>/</Arg>   
    <Set name="realmName">Jetty Demo Realm</Set>
   
    <Call name="addServlet">
      <Arg>Admin</Arg>
      <Arg>/</Arg>
      <Arg>org.mortbay.servlet.AdminServlet</Arg>
    </Call>
    
    <Call name="setAttribute">
      <Arg>org.mortbay.http.HttpServer</Arg>
      <Arg><Call name="getHttpServer"/></Arg>
    </Call>
  </Call>    
</Configure>
  
  
  
  1.9       +6 -6      jakarta-tapestry/examples/Tutorial/src/tutorial/border/BorderEngine.java
  
  Index: BorderEngine.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/border/BorderEngine.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- BorderEngine.java	13 Jan 2003 03:33:55 -0000	1.8
  +++ BorderEngine.java	17 Jan 2003 17:45:26 -0000	1.9
  @@ -54,11 +54,11 @@
    */
   package tutorial.border;
   
  -import net.sf.tapestry.engine.SimpleEngine;
  +import net.sf.tapestry.engine.BaseEngine;
   
   /**
    * 
  - *  Engine for the Border tutorial.  Provide the list of page names used
  + *  Engine for the Border tutorial.  Provides the list of page names used
    *  by the {@link Border} component.
    * 
    *  @version $Id$
  @@ -66,13 +66,13 @@
    *
    **/
   
  -public class BorderEngine extends SimpleEngine
  +public class BorderEngine extends BaseEngine
   {
  -    private static final String[] pageNames = { "Home", "Credo", "Legal" };
  +    private static final String[] PAGE_NAMES = { "Home", "Credo", "Legal" };
   
       public String[] getPageNames()
       {
  -        return pageNames;
  +        return PAGE_NAMES;
       }
   
   }
  
  
  
  1.13      +4 -9      jakarta-tapestry/examples/Tutorial/src/tutorial/border/Border.java
  
  Index: Border.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/border/Border.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- Border.java	13 Jan 2003 03:33:55 -0000	1.12
  +++ Border.java	17 Jan 2003 17:45:26 -0000	1.13
  @@ -67,20 +67,15 @@
   
   public class Border extends BaseComponent
   {
  -    private String pageName;
  +    private String _pageName;
   
       public void setPageName(String value)
       {
  -        pageName = value;
  +        _pageName = value;
       }
   
       public String getPageName()
       {
  -        return pageName;
  -    }
  -
  -    public boolean getDisablePageLink()
  -    {
  -        return pageName.equals(getPage().getName());
  +        return _pageName;
       }
   }
  
  
  
  1.8       +2 -2      jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/pages/Login.java
  
  Index: Login.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/pages/Login.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- Login.java	13 Jan 2003 03:33:18 -0000	1.7
  +++ Login.java	17 Jan 2003 17:45:26 -0000	1.8
  @@ -271,6 +271,6 @@
   
           cycle.getRequestContext().addCookie(cookie);
   
  -        engine.forgetPage(getName());
  +        engine.forgetPage(getPageName());
       }
   }
  
  
  
  1.2       +235 -0    jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/pages/ViewPerson.java
  
  
  
  
  1.8       +2 -2      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/WorkbenchValidationDelegate.java
  
  Index: WorkbenchValidationDelegate.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/WorkbenchValidationDelegate.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- WorkbenchValidationDelegate.java	13 Jan 2003 03:33:32 -0000	1.7
  +++ WorkbenchValidationDelegate.java	17 Jan 2003 17:45:26 -0000	1.8
  @@ -82,7 +82,7 @@
           {
               writer.print(" ");
               writer.beginEmpty("img");
  -            writer.attribute("src", "images/workbench/Warning-small.gif");
  +            writer.attribute("src", "images/Warning-small.gif");
               writer.attribute("height", 20);
               writer.attribute("width", 20);
           }
  
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Warning-small.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Change_fr.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/tab-inactive-left.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/tab-inactive-mid.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Continue.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/tab-active-right.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back-focus_it.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back-focus.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back_it.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/tab-active-left.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back-focus_fr.gif
  
  	<<Binary file>>
  
  
  1.2       +9 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Warning.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Change_de.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Change.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Update.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Change_it.gif
  
  	<<Binary file>>
  
  
  1.2       +3 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back-focus_de.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back_de.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/tab-inactive-right.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/tab-active-mid.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      jakarta-tapestry/examples/Tutorial/context/workbench/images/Back_fr.gif
  
  	<<Binary file>>
  
  
  1.2       +14 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/ShowError.html
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/portal.application
  
  
  
  
  1.2       +22 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Weather.page
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/ShowError.jwc
  
  
  
  
  1.2       +23 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Slashdot.page
  
  
  
  
  1.2       +39 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Stocks.page
  
  
  
  
  1.2       +43 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Portlet.html
  
  
  
  
  1.2       +64 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Border.html
  
  
  
  
  1.2       +8 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Border.jwc
  
  
  
  
  1.2       +26 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Home.page
  
  
  
  
  1.2       +51 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/portal/Portlet.jwc
  
  
  
  
  1.6       +1 -0      jakarta-tapestry/examples/Tutorial2/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial2/build.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- build.xml	9 Nov 2002 15:51:02 -0000	1.5
  +++ build.xml	17 Jan 2003 17:45:28 -0000	1.6
  @@ -33,6 +33,7 @@
   	<pathelement location="${lib.ext.dir}/ejb.jar"/>
   	<pathelement location="${lib.ext.dir}/${jakarta-oro.jar}"/>
   	<pathelement location="${lib.ext.dir}/${ognl.jar}"/>
  +    <pathelement location="${lib.ext.dir}/${bsf.jar}"/>	
   	<pathelement location="config"/>
     </path>
   
  
  
  
  1.9       +17 -53    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Portlet.java
  
  Index: Portlet.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Portlet.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- Portlet.java	13 Jan 2003 03:33:22 -0000	1.8
  +++ Portlet.java	17 Jan 2003 17:45:28 -0000	1.9
  @@ -55,13 +55,8 @@
   package tutorial.portal;
   
   import net.sf.tapestry.BaseComponent;
  -import net.sf.tapestry.IActionListener;
   import net.sf.tapestry.IAsset;
  -import net.sf.tapestry.IBinding;
  -import net.sf.tapestry.IComponent;
  -import net.sf.tapestry.IMarkupWriter;
   import net.sf.tapestry.IRequestCycle;
  -import net.sf.tapestry.RequestCycleException;
   import net.sf.tapestry.components.Block;
   
   /**
  @@ -75,77 +70,46 @@
   
   public class Portlet extends BaseComponent
   {
  -    private IBinding modelBinding;
  -    private PortletModel model;
  -
  -    public IBinding getModelBinding()
  -    {
  -        return modelBinding;
  -    }
  -
  -    public void setModelBinding(IBinding value)
  -    {
  -        modelBinding = value;
  -    }
  -
  -    public Object getModel()
  -    {
  -        return model;
  -    }
  -
  -	// Simplify for new scheme
  -    protected void renderComponent(IMarkupWriter writer, IRequestCycle cycle) throws RequestCycleException
  -    {
  -        try
  -        {
  -            model = (PortletModel) modelBinding.getObject("model", PortletModel.class);
  -
  -            super.renderComponent(writer, cycle);
  -        }
  -        finally
  -        {
  -            model = null;
  -        }
  -    }
  +    private PortletModel _model;
   
       public IAsset getChangeStateImage()
       {
  -        return getAsset(model.isExpanded() ? "minimize" : "maximize");
  +        return getAsset(_model.isExpanded() ? "minimize" : "maximize");
       }
   
       public IAsset getChangeStateFocus()
       {
  -        return getAsset(model.isExpanded() ? "minimizeFocus" : "maximizeFocus");
  +        return getAsset(_model.isExpanded() ? "minimizeFocus" : "maximizeFocus");
       }
   
       public String getChangeStateLabel()
       {
  -        return model.isExpanded() ? "[Minimize]" : "[Maximize]";
  +        return _model.isExpanded() ? "[Minimize]" : "[Maximize]";
       }
   
       public Block getBodyBlock()
       {
  -        if (model.isExpanded())
  -            return model.getBodyBlock(getPage().getRequestCycle());
  +        if (_model.isExpanded())
  +            return _model.getBodyBlock(getPage().getRequestCycle());
   
           // If minimized, return null to prevent any display.
   
           return null;
       }
   
  -    private void changeState()
  +    public void changeState(IRequestCycle cycle)
       {
  -        model.toggleExpanded();
  +        _model.toggleExpanded();
       }
   
  -    public IActionListener getChangeStateListener()
  +    public PortletModel getModel()
       {
  -        return new IActionListener()
  -        {
  -            public void actionTriggered(IComponent component, IRequestCycle cycle) throws RequestCycleException
  -            {
  -                changeState();
  -            }
  -        };
  +        return _model;
       }
  +
  +    public void setModel(PortletModel model)
  +    {
  +        _model = model;
  +    }
  +
   }
  
  
  
  1.7       +28 -16    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/PortletSelectionModel.java
  
  Index: PortletSelectionModel.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/PortletSelectionModel.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- PortletSelectionModel.java	13 Jan 2003 03:33:22 -0000	1.6
  +++ PortletSelectionModel.java	17 Jan 2003 17:45:28 -0000	1.7
  @@ -70,50 +70,62 @@
   
   public class PortletSelectionModel implements IPropertySelectionModel
   {
  -	private List list = new ArrayList();
  +	private List _list = new ArrayList();
   
   	private static class Entry
   	{
  -		int id;
  -		String title;
  +		private int _id;
  +		private String _title;
   
   		Entry(int id, String title)
   		{
  -			this.id = id;
  -			this.title = title;
  +			_id = id;
  +			_title = title;
   		}
  +        
  +        public int getId()
  +        {
  +            return _id;
  +        }
  +
  +        public String getTitle()
  +        {
  +            return _title;
  +        }
  +
   	}
   
  -	public void add(PortletChannel def)
  +	public void add(PortletChannel channel)
   	{
  -		Entry e = new Entry(def.getId(), def.getTitle());
  -		list.add(e);
  +		Entry e = new Entry(channel.getId(), channel.getTitle());
  +        
  +		_list.add(e);
   	}
   
   	public int getOptionCount()
   	{
  -		return list.size();
  +		return _list.size();
   	}
   
   	public Object getOption(int index)
   	{
  -		Entry e = (Entry) list.get(index);
  +		Entry e = (Entry) _list.get(index);
   
  -		return new Integer(e.id);
  +		return new Integer(e.getId());
   	}
   
   	public String getLabel(int index)
   	{
  -		Entry e = (Entry) list.get(index);
  +		Entry e = (Entry) _list.get(index);
   
  -		return e.title;
  +		return e.getTitle();
   	}
   
   	public String getValue(int index)
   	{
  -		Entry e = (Entry) list.get(index);
  +		Entry e = (Entry) _list.get(index);
   
  -		return Integer.toString(e.id);
  +		return Integer.toString(e.getId());
   	}
   
   	public Object translateValue(String value)
  
  
  
  1.12      +20 -16    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Slashdot.java
  
  Index: Slashdot.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Slashdot.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- Slashdot.java	13 Jan 2003 03:33:22 -0000	1.11
  +++ Slashdot.java	17 Jan 2003 17:45:28 -0000	1.12
  @@ -85,47 +85,51 @@
        *
        **/
   
  -    private List stories;
  -    private SlashdotStory story;
  -    private long lastRefresh = 0;
  +    private List _stories;
  +    private SlashdotStory _story;
  +    private long _lastRefresh = 0;
   
       private static final int REFRESH_INTERVAL = 30 * 1024;
   
       private static String RESOURCE_PATH = "http://slashdot.org/slashdot.xml";
   
  -    public void detach()
  +    /**
  +     *  The page acts like a cache of parsed stories, so we leave the stories and lastRefresh
  +     *  properties alone.  This is bending the rules, but valid.
  +     * 
  +     **/
  +    
  +    public void initialize()
       {
  -        story = null;
  -
  -        super.detach();
  +        _story = null;
       }
   
       public void setStory(SlashdotStory value)
       {
  -        story = value;
  +        _story = value;
       }
   
       public SlashdotStory getStory()
       {
  -        return story;
  +        return _story;
       }
   
       public List getStories()
       {
           long now = System.currentTimeMillis();
   
  -        if (now - lastRefresh > REFRESH_INTERVAL)
  +        if (now - _lastRefresh > REFRESH_INTERVAL)
           {
               if (LOG.isDebugEnabled())
                   LOG.debug("Forcing refresh");
   
  -            stories = null;
  +            _stories = null;
           }
   
  -        if (stories == null)
  +        if (_stories == null)
               readStories();
   
  -        return stories;
  +        return _stories;
       }
   
       private void readStories()
  @@ -147,14 +151,14 @@
   
           try
           {
  -            stories = parser.parseStories(url, RESOURCE_PATH);
  +            _stories = parser.parseStories(url);
           }
           catch (DocumentParseException ex)
           {
               throw new ApplicationRuntimeException(ex);
           }
   
  -        lastRefresh = System.currentTimeMillis();
  +        _lastRefresh = System.currentTimeMillis();
       }
   
   }
  
  
  
  1.9       +24 -38    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Home.java
  
  Index: Home.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Home.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- Home.java	13 Jan 2003 03:33:22 -0000	1.8
  +++ Home.java	17 Jan 2003 17:45:28 -0000	1.9
  @@ -54,8 +54,6 @@
    */
   package tutorial.portal;
   
  -import net.sf.tapestry.IActionListener;
  -import net.sf.tapestry.IComponent;
   import net.sf.tapestry.IRequestCycle;
   import net.sf.tapestry.html.BasePage;
   
  @@ -69,70 +67,58 @@
   
   public class Home extends BasePage
   {
  -    private PortletModel model;
  -    private int newPortletId;
  +    private PortletModel _model;
  +    private int _newPortletId;
   
  -    public void detach()
  +    public void initialize()
       {
  -        model = null;
  -        newPortletId = 0;
  -
  -        super.detach();
  +        _model = null;
  +        _newPortletId = 0;
       }
   
       public void setModel(PortletModel value)
       {
  -        model = value;
  +        _model = value;
       }
   
       public PortletModel getModel()
       {
  -        return model;
  +        return _model;
       }
   
       public void setNewPortletId(int value)
       {
  -        newPortletId = value;
  +        _newPortletId = value;
       }
   
       public int getNewPortletId()
       {
  -        return newPortletId;
  +        return _newPortletId;
       }
   
  -    public IActionListener getCloseListener()
  -    {
  -        return new IActionListener()
  -        {
  -            public void actionTriggered(IComponent component, IRequestCycle cycle)
  -            {
  -                closeModel();
  -            }
  -        };
  -    }
  +    /**
  +     *  Listener for the close button.  Closes the portlet currently
  +     *  being rendered.
  +     * 
  +     **/
   
  -    private void closeModel()
  +    public void closeModel(IRequestCycle cycle)
       {
           Visit visit = (Visit) getVisit();
   
  -        visit.removeModel(model);
  +        visit.removeModel(_model);
       }
   
  -    public IActionListener getFormListener()
  -    {
  -        return new IActionListener()
  -        {
  -            public void actionTriggered(IComponent component, IRequestCycle cycle)
  -            {
  -                addModel();
  -            }
  -        };
  -    }
  +    /**
  +     *  Adds the selected portlet (by requesting that the Visit
  +     *  add the portlet with the identified portlet id.
  +     *
  +     **/
   
  -    private void addModel()
  +    public void addModel(IRequestCycle cycle)
       {
           Visit visit = (Visit) getVisit();
   
  -        visit.addModel(newPortletId);
  +        visit.addModel(_newPortletId);
       }
   }
  
  
  
  1.13      +44 -42    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Stocks.java
  
  Index: Stocks.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Stocks.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- Stocks.java	13 Jan 2003 03:33:22 -0000	1.12
  +++ Stocks.java	17 Jan 2003 17:45:28 -0000	1.13
  @@ -54,7 +54,6 @@
    */
   package tutorial.portal;
   
  -import java.text.DecimalFormat;
   import java.util.ArrayList;
   import java.util.List;
   
  @@ -81,17 +80,17 @@
        *
        **/
   
  -    private static Stock[] stockBase =
  +    private static Stock[] _stockBase =
           {
               new Stock("DJIA", 11005.37, -117.05),
               new Stock("NASDAQ", 2251.03, -30.99),
               new Stock("NYSE", 647.13, -5.85)};
   
  -    private static Stock[] otherStocks = { new Stock("PMIX", 12.73, 1.01), // Wishful thinking
  +    private static Stock[] _otherStocks = { new Stock("PMIX", 12.73, 1.01), // Wishful thinking
           new Stock("MSFT", 70.91, -0.81), new Stock("SUN", 41.32, .2)};
   
  -    private String tickerId;
  -    private Stock stock;
  +    private String _tickerId;
  +    private Stock _stock;
   
       /**
        *  The composite list of stocks, by combining stockBase with
  @@ -99,39 +98,37 @@
        *
        **/
   
  -    private List stocks;
  +    private List _stocks;
   
       /**
  -     *  The list of stocks for this user.
  +     *  The list of stocks for this user, which is stored persistently.
        *
        **/
   
  -    private List userStocks;
  +    private List _userStocks;
   
  -    public void detach()
  +    public void initialize()
       {
  -        tickerId = null;
  -        stock = null;
  -        stocks = null;
  -        userStocks = null;
  -
  -        super.detach();
  +        _tickerId = null;
  +        _stock = null;
  +        _stocks = null;
  +        _userStocks = null;
       }
   
       public List getStocks()
       {
  -        if (stocks == null)
  +        if (_stocks == null)
           {
  -            stocks = new ArrayList();
  +            _stocks = new ArrayList();
   
  -            for (int i = 0; i < stockBase.length; i++)
  -                stocks.add(stockBase[i]);
  +            for (int i = 0; i < _stockBase.length; i++)
  +                _stocks.add(_stockBase[i]);
   
  -            if (userStocks != null)
  -                stocks.addAll(userStocks);
  +            if (_userStocks != null)
  +                _stocks.addAll(_userStocks);
           }
   
  -        return stocks;
  +        return _stocks;
       }
   
       private void setErrorField(IValidationDelegate delegate, String id, String message)
  @@ -149,31 +146,41 @@
           if (delegate.getHasErrors())
               return;
   
  -        String newId = tickerId.toUpperCase();
  +        String newId = _tickerId.toUpperCase();
           List existingStocks = getStocks();
           int count = existingStocks.size();
  +
           for (int i = 0; i < count; i++)
           {
               Stock s = (Stock) existingStocks.get(i);
  -            if (s.tickerId.equals(newId))
  +            if (s.getTickerId().equals(newId))
               {
                   setErrorField(delegate, "inputTickerId", "Already in list.");
                   return;
               }
           }
   
  -        for (int i = 0; i < otherStocks.length; i++)
  +        for (int i = 0; i < _otherStocks.length; i++)
           {
  -            if (otherStocks[i].tickerId.equals(newId))
  +            if (_otherStocks[i].getTickerId().equals(newId))
               {
  -                stocks = null;
  +
  +                List userStocks = getUserStocks();
   
                   if (userStocks == null)
  -                    setUserStocks(new ArrayList());
  +                    userStocks = new ArrayList();
  +
  +                userStocks.add(_otherStocks[i]);
  +
  +                // Don't set a persistant property until its final value
  +                // is determined; then don't change it.
   
  -                userStocks.add(otherStocks[i]);
  +                setUserStocks(userStocks);
   
  -                tickerId = null;
  +                // Force a recompute of the stock list, on redisplay
  +
  +                _stocks = null;
  +                _tickerId = null;
   
                   return;
               }
  @@ -187,37 +194,32 @@
   
       public void setStock(Stock value)
       {
  -        stock = value;
  +        _stock = value;
       }
   
       public Stock getStock()
       {
  -        return stock;
  -    }
  -
  -    public DecimalFormat getDecimalFormat()
  -    {
  -        return null;
  +        return _stock;
       }
   
       public void setTickerId(String value)
       {
  -        tickerId = value;
  +        _tickerId = value;
       }
   
       public String getTickerId()
       {
  -        return tickerId;
  +        return _tickerId;
       }
   
       public List getUserStocks()
       {
  -        return userStocks;
  +        return _userStocks;
       }
   
       public void setUserStocks(List value)
       {
  -        userStocks = value;
  +        _userStocks = value;
   
           fireObservedChange("userStocks", value);
       }
  
  
  
  1.7       +27 -13    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Stock.java
  
  Index: Stock.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Stock.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Stock.java	13 Jan 2003 03:33:22 -0000	1.6
  +++ Stock.java	17 Jan 2003 17:45:28 -0000	1.7
  @@ -56,8 +56,6 @@
   
   import java.io.Serializable;
   
  -import net.sf.tapestry.util.prop.IPublicBean;
  -
   /**
    *  Stores information about a single Stock.
    *
  @@ -66,11 +64,11 @@
    * 
    **/
   
  -public class Stock implements Serializable, IPublicBean
  +public class Stock implements Serializable
   {
  -    public String tickerId;
  -    public double price;
  -    public double change;
  +    private String _tickerId;
  +    private double _price;
  +    private double _change;
   
       public Stock()
       {
  @@ -78,21 +76,37 @@
   
       public Stock(String tickerId, double price, double change)
       {
  -        this.tickerId = tickerId;
  -        this.price = price;
  -        this.change = change;
  +        _tickerId = tickerId;
  +        _price = price;
  +        _change = change;
       }
   
       public String toString()
       {
           StringBuffer buffer = new StringBuffer("Stock[");
  -        buffer.append(tickerId);
  +        buffer.append(_tickerId);
           buffer.append(' ');
  -        buffer.append(price);
  +        buffer.append(_price);
           buffer.append(' ');
  -        buffer.append(change);
  +        buffer.append(_change);
           buffer.append(']');
   
           return buffer.toString();
       }
  +    
  +    public double getChange()
  +    {
  +        return _change;
  +    }
  +
  +    public double getPrice()
  +    {
  +        return _price;
  +    }
  +
  +    public String getTickerId()
  +    {
  +        return _tickerId;
  +    }
  +
   }
  
  
  
  1.7       +18 -18    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/PortletModel.java
  
  Index: PortletModel.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/PortletModel.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- PortletModel.java	13 Jan 2003 03:33:22 -0000	1.6
  +++ PortletModel.java	17 Jan 2003 17:45:28 -0000	1.7
  @@ -73,50 +73,50 @@
   
   public class PortletModel implements Serializable
   {
  -    private int id;
  -    private boolean expanded = true;
  -    private String title;
  -    private String bodyPage;
  -    private String bodyIdPath;
  +    private int _id;
  +    private boolean _expanded = true;
  +    private String _title;
  +    private String _bodyPage;
  +    private String _bodyIdPath;
   
       public PortletModel(int id, String title, String bodyPage, String bodyIdPath)
       {
  -        this.id = id;
  -        this.title = title;
  -        this.bodyPage = bodyPage;
  -        this.bodyIdPath = bodyIdPath;
  +        _id = id;
  +        _title = title;
  +        _bodyPage = bodyPage;
  +        _bodyIdPath = bodyIdPath;
       }
   
       public Block getBodyBlock(IRequestCycle cycle)
       {
  -        IPage page = cycle.getPage(bodyPage);
  -        IComponent component = page.getNestedComponent(bodyIdPath);
  +        IPage page = cycle.getPage(_bodyPage);
  +        IComponent component = page.getNestedComponent(_bodyIdPath);
   
           return (Block) component;
       }
   
       public void toggleExpanded()
       {
  -        expanded = !expanded;
  +        _expanded = !_expanded;
       }
   
       public boolean isExpanded()
       {
  -        return expanded;
  +        return _expanded;
       }
   
  -    public void setExpanded(boolean value)
  +    public void setExpanded(boolean expanded)
       {
  -        expanded = value;
  +        _expanded = expanded;
       }
   
       public String getTitle()
       {
  -        return title;
  +        return _title;
       }
   
       public int getId()
       {
  -        return id;
  +        return _id;
       }
   }
  
  
  
  1.9       +18 -18    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Visit.java
  
  Index: Visit.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/Visit.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- Visit.java	13 Jan 2003 03:33:22 -0000	1.8
  +++ Visit.java	17 Jan 2003 17:45:28 -0000	1.9
  @@ -72,39 +72,39 @@
   
   public class Visit implements Serializable
   {
  -    private static PortletChannel[] channels =
  +    private static PortletChannel[] _channels =
           {
               new PortletChannel(87, "Slashdot Headlines", "Slashdot", "content"),
               new PortletChannel(23, "Stock Quotes", "Stocks", "content"),
               new PortletChannel(373, "Weather", "Weather", "content")};
   
  -    private List models;
  +    private List _models;
   
       public void removeModel(PortletModel model)
       {
  -        if (models != null)
  -            models.remove(model);
  +        if (_models != null)
  +            _models.remove(model);
       }
   
       public Collection getModels()
       {
  -        return models;
  +        return _models;
       }
   
       public void addModel(int id)
       {
  -        for (int i = 0; i < channels.length; i++)
  +        for (int i = 0; i < _channels.length; i++)
           {
  -            PortletChannel channel = channels[i];
  +            PortletChannel channel = _channels[i];
   
               if (channel.getId() == id)
               {
                   PortletModel model = channel.getModel();
   
  -                if (models == null)
  -                    models = new ArrayList();
  +                if (_models == null)
  +                    _models = new ArrayList();
   
  -                models.add(model);
  +                _models.add(model);
   
                   return;
               }
  @@ -125,9 +125,9 @@
       {
           PortletSelectionModel model = new PortletSelectionModel();
   
  -        for (int i = 0; i < channels.length; i++)
  +        for (int i = 0; i < _channels.length; i++)
           {
  -            PortletChannel channel = channels[i];
  +            PortletChannel channel = _channels[i];
   
               if (!inUse(channel.getId()))
                   model.add(channel);
  @@ -138,13 +138,13 @@
   
       private boolean inUse(int id)
       {
  -        if (models == null)
  +        if (_models == null)
               return false;
   
  -        int count = models.size();
  +        int count = _models.size();
           for (int i = 0; i < count; i++)
           {
  -            PortletModel model = (PortletModel) models.get(i);
  +            PortletModel model = (PortletModel) _models.get(i);
   
               if (model.getId() == id)
                   return true;
  @@ -162,9 +162,9 @@
   
       public boolean getMaySelectPortlet()
       {
  -        if (models == null)
  +        if (_models == null)
               return true;
   
  -        return models.size() < channels.length;
  +        return _models.size() < _channels.length;
       }
   }
  
  
  
  1.4       +12 -12    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/PortletChannel.java
  
  Index: PortletChannel.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/PortletChannel.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- PortletChannel.java	13 Jan 2003 03:33:22 -0000	1.3
  +++ PortletChannel.java	17 Jan 2003 17:45:28 -0000	1.4
  @@ -67,31 +67,31 @@
   
   public class PortletChannel
   {
  -    private int id;
  -    private String title;
  -    private String pageName;
  -    private String componentPath;
  +    private int _id;
  +    private String _title;
  +    private String _pageName;
  +    private String _componentPath;
   
       public PortletChannel(int id, String title, String pageName, String componentPath)
       {
  -        this.id = id;
  -        this.title = title;
  -        this.pageName = pageName;
  -        this.componentPath = componentPath;
  +        _id = id;
  +        _title = title;
  +        _pageName = pageName;
  +        _componentPath = componentPath;
       }
   
       public PortletModel getModel()
       {
  -        return new PortletModel(id, title, pageName, componentPath);
  +        return new PortletModel(_id, _title, _pageName, _componentPath);
       }
   
       public int getId()
       {
  -        return id;
  +        return _id;
       }
   
       public String getTitle()
       {
  -        return title;
  +        return _title;
       }
   }
  
  
  
  1.8       +46 -13    jakarta-tapestry/examples/Tutorial/src/tutorial/portal/SlashdotParser.java
  
  Index: SlashdotParser.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/portal/SlashdotParser.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- SlashdotParser.java	13 Jan 2003 03:33:22 -0000	1.7
  +++ SlashdotParser.java	17 Jan 2003 17:45:28 -0000	1.8
  @@ -54,16 +54,17 @@
    */
   package tutorial.portal;
   
  -import java.io.IOException;
  -import java.io.InputStream;
   import java.net.URL;
   import java.util.ArrayList;
   import java.util.List;
  +import java.util.Locale;
   
   import org.w3c.dom.Document;
   import org.w3c.dom.Node;
  -import org.xml.sax.InputSource;
   
  +import net.sf.tapestry.IAsset;
  +import net.sf.tapestry.IResourceLocation;
  +import net.sf.tapestry.asset.ExternalAsset;
   import net.sf.tapestry.util.xml.AbstractDocumentParser;
   import net.sf.tapestry.util.xml.DocumentParseException;
   
  @@ -77,23 +78,55 @@
   
   public class SlashdotParser extends AbstractDocumentParser
   {
  -    public List parseStories(URL url, String resourcePath) throws DocumentParseException
  +    private static class URLResourceLocation implements IResourceLocation
       {
  -        try
  +        private URL _URL;
  +
  +        private URLResourceLocation(URL URL)
           {
  -            InputStream stream = url.openStream();
  -            InputSource source = new InputSource(stream);
  -            Document document = parse(source, resourcePath, "backslash");
  +            _URL = URL;
  +        }
   
  -            return build(document);
  +        public IResourceLocation getLocalization(Locale locale)
  +        {
  +            return this;
  +        }
  +
  +        public String getName()
  +        {
  +            return _URL.getFile();
  +        }
  +
  +        public IResourceLocation getRelativeLocation(String name)
  +        {
  +            return this; // Not right, but good enough.
  +        }
  +
  +        public URL getResourceURL()
  +        {
  +            return _URL;
  +        }
  +
  +        public IAsset toAsset()
  +        {
  +            return new ExternalAsset(_URL.toString());
           }
  -        catch (IOException ex)
  +
  +    }
  +
  +    public List parseStories(URL URL) throws DocumentParseException
  +    {
  +        IResourceLocation location = new URLResourceLocation(URL);
  +
  +        try
           {
  -            throw new DocumentParseException("Unable to read " + resourcePath + ".", ex);
  +            Document document = parse(location, "backslash");
  +
  +            return build(document);
           }
           finally
           {
  -            setResourcePath(null);
  +            setResourceLocation(null);
           }
   
       }
  
  
  
  1.16      +3 -9      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/components/Border.java
  
  Index: Border.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/components/Border.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- Border.java	13 Jan 2003 03:33:55 -0000	1.15
  +++ Border.java	17 Jan 2003 17:45:28 -0000	1.16
  @@ -54,14 +54,13 @@
    */
   package tutorial.workbench.components;
   
  -import tutorial.workbench.Visit;
  -
   import net.sf.tapestry.BaseComponent;
   import net.sf.tapestry.IAsset;
   import net.sf.tapestry.IRequestCycle;
   import net.sf.tapestry.event.PageEvent;
   import net.sf.tapestry.event.PageRenderListener;
   import net.sf.tapestry.util.StringSplitter;
  +import tutorial.workbench.Visit;
   
   /**
    *  Common navigational border for the Workbench tutorial.
  @@ -91,11 +90,6 @@
   
       private static String[] tabOrder;
   
  -    public void finishLoad()
  -    {
  -        getPage().addPageRenderListener(this);
  -    }
  -
       public void pageBeginRender(PageEvent event)
       {
           Visit visit = (Visit) getPage().getEngine().getVisit(event.getRequestCycle());
  @@ -173,7 +167,7 @@
       public void selectPage(IRequestCycle cycle)
       {
           Object[] parameters = cycle.getServiceParameters();
  -        String newPageName = (String)parameters[0];
  +        String newPageName = (String) parameters[0];
   
           Visit visit = (Visit) getPage().getEngine().getVisit(cycle);
   
  
  
  
  1.2       +17 -0     jakarta-tapestry/examples/Tutorial/context/portal/Slashdot.html
  
  
  
  
  1.2       +1 -0      jakarta-tapestry/examples/Tutorial/context/portal/.cvsignore
  
  
  
  
  1.2       +25 -0     jakarta-tapestry/examples/Tutorial/context/portal/Stocks.html
  
  
  
  
  1.2       +53 -0     jakarta-tapestry/examples/Tutorial/context/portal/Home.html
  
  
  
  
  1.2       +12 -0     jakarta-tapestry/examples/Tutorial/context/portal/Weather.html
  
  
  
  
  1.14      +7 -8      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/palette/Palette.java
  
  Index: Palette.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/palette/Palette.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- Palette.java	13 Jan 2003 03:33:14 -0000	1.13
  +++ Palette.java	17 Jan 2003 17:45:29 -0000	1.14
  @@ -63,7 +63,6 @@
   import net.sf.tapestry.form.IPropertySelectionModel;
   import net.sf.tapestry.form.StringPropertySelectionModel;
   import net.sf.tapestry.html.BasePage;
  -
   import org.apache.commons.lang.enum.Enum;
   
   /**
  @@ -80,12 +79,10 @@
   
       private IPropertySelectionModel _sortModel;
   
  -    public void detach()
  +    public void initialize()
       {
           _sort = SortMode.USER;
           _selectedColors = null;
  -
  -        super.detach();
       }
   
       public void formSubmit(IRequestCycle cycle)
  @@ -106,7 +103,7 @@
           // a library now, we need to make sure
           // the namespace id is part of the name.
   
  -        Results results = (Results) cycle.getPage(getNamespace().constructQualifiedName("palette.Results"));
  +        PaletteResults results = (PaletteResults) cycle.getPage("PaletteResults");
   
           results.setSelectedColors(_selectedColors);
   
  @@ -141,9 +138,11 @@
       {
           if (_sortModel == null)
           {
  -            ResourceBundle bundle = ResourceBundle.getBundle("tutorial.workbench.palette.SortModeStrings", getLocale());
  +            ResourceBundle bundle =
  +                ResourceBundle.getBundle("tutorial.workbench.palette.SortModeStrings", getLocale());
   
  -            Enum[] options = new Enum[] { SortMode.NONE, SortMode.LABEL, SortMode.VALUE, SortMode.USER };
  +            Enum[] options =
  +                new Enum[] { SortMode.NONE, SortMode.LABEL, SortMode.VALUE, SortMode.USER };
   
               _sortModel = new EnumPropertySelectionModel(options, bundle);
           }
  
  
  
  1.2       +88 -0     jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/palette/PaletteResults.java
  
  
  
  
  1.10      +1 -13     jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/components/Browser.java
  
  Index: Browser.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/components/Browser.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- Browser.java	13 Jan 2003 03:33:15 -0000	1.9
  +++ Browser.java	17 Jan 2003 17:45:29 -0000	1.10
  @@ -102,18 +102,6 @@
       private static int pageSize = DEFAULT_PAGE_SIZE;
   
       /**
  -     *  Register this component as a {@link PageDetachListener}.
  -     *
  -     *  @since 1.0.5
  -     *
  -     **/
  -
  -    protected void finishLoad()
  -    {
  -        getPage().addPageDetachListener(this);
  -    }
  -
  -    /**
        * Clear out cached values at the end of the request cycle.
        *
        *  @since 1.0.5
  
  
  
  1.12      +11 -12    jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/components/Border.java
  
  Index: Border.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/components/Border.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- Border.java	13 Jan 2003 03:33:15 -0000	1.11
  +++ Border.java	17 Jan 2003 17:45:29 -0000	1.12
  @@ -176,18 +176,17 @@
   
           cycle.setPage(login);
       }
  -    
  -    public void logout(IRequestCycle cycle)
  -    throws RequestCycleException
  +
  +    public void logout(IRequestCycle cycle) throws RequestCycleException
       {
  -        VirtualLibraryEngine engine = (VirtualLibraryEngine)getPage().getEngine();
  -        
  +        VirtualLibraryEngine engine = (VirtualLibraryEngine) getPage().getEngine();
  +
           engine.logout();
  -        
  -        Home home = (Home)cycle.getPage("Home");
  -        
  +
  +        Home home = (Home) cycle.getPage("Home");
  +
           home.setMessage("Goodbye.");
  -        
  +
           cycle.setPage(home);
       }
   
  @@ -218,7 +217,7 @@
   
       public boolean getShowSlash()
       {
  -        return !getPage().getName().equals("MyLibrary");
  +        return !getPage().getPageName().equals("MyLibrary");
       }
   
       public IAsset getAdminIcon()
  @@ -268,7 +267,7 @@
       {
           if (_subheader == null)
           {
  -            String name = "header_" + getPage().getName();
  +            String name = "header_" + getPage().getPageName();
   
               _subheader = getAsset(name);
   
  
  
  
  1.13      +3 -2      jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/components/PersonLink.java
  
  Index: PersonLink.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/components/PersonLink.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- PersonLink.java	13 Jan 2003 03:33:15 -0000	1.12
  +++ PersonLink.java	17 Jan 2003 17:45:29 -0000	1.13
  @@ -57,7 +57,7 @@
   import net.sf.tapestry.BaseComponent;
   
   /**
  - *  Creates a link to the {@link net.sf.tapestry.vlib.pages.PersonPage} 
  + *  Creates a link to the {@link net.sf.tapestry.vlib.pages.ViewPerson} 
    *  page using the external service.
    *
    *
  @@ -123,6 +123,7 @@
       private Integer _primaryKey;
       private String _name;
       private boolean _omit;
  +
       public String getName()
       {
           return _name;
  
  
  
  1.7       +2 -2      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/upload/Upload.java
  
  Index: Upload.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/upload/Upload.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Upload.java	13 Jan 2003 03:33:18 -0000	1.6
  +++ Upload.java	17 Jan 2003 17:45:29 -0000	1.7
  @@ -110,7 +110,7 @@
   			return;
   		}
   
  -		Results results = (Results) cycle.getPage("upload.Results");
  +		UploadResults results = (UploadResults) cycle.getPage("UploadResults");
   
   		results.activate(file, showAscii, Integer.parseInt(bytesPerLine), cycle);
   	}
  
  
  
  1.2       +198 -0    jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/upload/UploadResults.java
  
  
  
  
  1.12      +2 -2      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/fields/Fields.java
  
  Index: Fields.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/fields/Fields.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- Fields.java	13 Jan 2003 03:33:30 -0000	1.11
  +++ Fields.java	17 Jan 2003 17:45:29 -0000	1.12
  @@ -110,7 +110,7 @@
           // otherwise, stay here and show the error message.
   
           if (!delegate.getHasErrors())
  -            cycle.setPage("fields.Results");
  +            cycle.setPage("FieldsResults");
       }
   
       public boolean isClientValidationEnabled()
  
  
  
  1.2       +55 -0     jakarta-tapestry/examples/Vlib/context/TransferBooks.html
  
  
  
  
  1.2       +155 -0    jakarta-tapestry/examples/Vlib/context/EditProfile.html
  
  
  
  
  1.2       +204 -0    jakarta-tapestry/examples/Vlib/context/MyLibrary.html
  
  
  
  
  1.2       +36 -0     jakarta-tapestry/examples/Vlib/context/EditPublishers.html
  
  
  
  
  1.2       +42 -0     jakarta-tapestry/examples/Vlib/context/EditUsers.html
  
  
  
  
  1.2       +133 -0    jakarta-tapestry/examples/Vlib/context/ConfirmBookDelete.html
  
  
  
  
  1.2       +145 -0    jakarta-tapestry/examples/Vlib/context/Login.html
  
  
  
  
  1.2       +160 -0    jakarta-tapestry/examples/Vlib/context/Register.html
  
  
  
  
  1.2       +204 -0    jakarta-tapestry/examples/Vlib/context/EditBook.html
  
  
  
  
  1.2       +218 -0    jakarta-tapestry/examples/Vlib/context/BorrowedBooks.html
  
  
  
  
  1.2       +58 -0     jakarta-tapestry/examples/Vlib/context/ApplicationUnavailable.html
  
  
  
  
  1.2       +165 -0    jakarta-tapestry/examples/Vlib/context/Home.html
  
  
  
  
  1.2       +195 -0    jakarta-tapestry/examples/Vlib/context/NewBook.html
  
  
  
  
  1.2       +198 -0    jakarta-tapestry/examples/Vlib/context/Matches.html
  
  
  
  
  1.2       +182 -0    jakarta-tapestry/examples/Vlib/context/ViewBook.html
  
  
  
  
  1.2       +21 -0     jakarta-tapestry/examples/Vlib/context/index.html
  
  
  
  
  1.2       +1 -1      jakarta-tapestry/examples/VlibBeans/jbosscmp-jdbc.xml
  
  Index: jbosscmp-jdbc.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/VlibBeans/jbosscmp-jdbc.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- jbosscmp-jdbc.xml	8 Jun 2002 22:44:38 -0000	1.1
  +++ jbosscmp-jdbc.xml	17 Jan 2003 17:45:30 -0000	1.2
  @@ -8,7 +8,7 @@
   <jbosscmp-jdbc>
   	<defaults>
     		<datasource>java:/McKoiDB</datasource>       
  -  		<datasource-mapping>McKoiDB</datasource-mapping>
  +  		<datasource-mapping>McKoi</datasource-mapping>
     	</defaults>
     
     <enterprise-beans>
  
  
  
  1.16      +38 -1     jakarta-tapestry/examples/VlibBeans/ejb-jar.xml
  
  Index: ejb-jar.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/VlibBeans/ejb-jar.xml,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- ejb-jar.xml	8 Jun 2002 22:44:38 -0000	1.15
  +++ ejb-jar.xml	17 Jan 2003 17:45:30 -0000	1.16
  @@ -127,6 +127,24 @@
         	<field-name>lastAccess</field-name>
         </cmp-field>
         <primkey-field>personId</primkey-field>
  +      
  +      <query>
  +      	<query-method>
  +      		<method-name>findByEmail</method-name>
  +      		<method-params>
  +      			<method-param>java.lang.String</method-param>
  +      		</method-params>
  +      	</query-method>
  +      		
  +      	<ejb-ql>
  +<![CDATA[
  +			select object(p)
  +			from Person p
  +			where p.email = ?1
  +]]>      	
  +		</ejb-ql>
  +	   </query>
  +	   	
         <ejb-ref>
           <description/>
           <ejb-ref-name>ejb/KeyAllocator</ejb-ref-name>
  @@ -217,6 +235,25 @@
           <field-name>publisherId</field-name>
         </cmp-field>
         <primkey-field>publisherId</primkey-field>
  +      
  +      
  +      <query>
  +      	<query-method>
  +      		<method-name>findByName</method-name>
  +      		<method-params>
  +      			<method-param>java.lang.String</method-param>
  +      		</method-params>
  +      	</query-method>
  +      		
  +      	<ejb-ql>
  +<![CDATA[
  +			select object(p)
  +			from Publisher p
  +			where p.name = ?1
  +]]>      	
  +		</ejb-ql>
  +	   </query>
  +	         
         <ejb-ref>
           <description/>
           <ejb-ref-name>ejb/KeyAllocator</ejb-ref-name>
  
  
  
  1.2       +55 -0     jakarta-tapestry/examples/Tutorial/context/index.html
  
  
  
  
  1.2       +41 -0     jakarta-tapestry/examples/Tutorial/context/redirect-target.html
  
  
  
  
  1.26      +7 -10     jakarta-tapestry/examples/Tutorial/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/build.xml,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- build.xml	12 Oct 2002 17:30:33 -0000	1.25
  +++ build.xml	17 Jan 2003 17:45:30 -0000	1.26
  @@ -18,8 +18,9 @@
       <pathelement location="${lib.ext.dir}/${jfreechart.jar}"/>
       <pathelement location="${lib.ext.dir}/${jakarta-oro.jar}"/>
       <pathelement location="${lib.ext.dir}/${ognl.jar}"/>
  +    <pathelement location="${lib.ext.dir}/${bsf.jar}"/>
       <pathelement location="${framework.jar}"/>
  -    <pathelement location="${contrib.jar}"/>    
  +    <pathelement location="${contrib.jar}"/>   
     </path>
     
     <target name="init">
  @@ -38,16 +39,12 @@
     
     
     <target name="install" depends="compile" description="Compile all classes and build the installed WAR.">
  -     <war warfile="${tutorial.war}" webxml="WEB-INF/web.xml">
  +     <war warfile="${tutorial.war}" webxml="context/WEB-INF/web.xml">
   
  -      <fileset dir=".">
  -        <include name="images/**"/>
  -        <include name="css/**"/>
  -        <include name="*.html"/>
  -        <!-- These are left around by Paint Shop Pro -->
  -        <exclude name="**/pspbrwse.jbf"/>
  +      <fileset dir="context">
  +        <exclude name="WEB-INF/web.xml"/>
         </fileset>
  -
  +      
   	  <lib dir="${lib.ext.dir}">
   	   	<include name="${jcommon.jar}"/>
   	   	<include name="${jfreechart.jar}"/>
  
  
  
  1.13      +1 -1      jakarta-tapestry/examples/Tutorial/jetty.xml
  
  Index: jetty.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/jetty.xml,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- jetty.xml	1 Oct 2002 21:20:47 -0000	1.12
  +++ jetty.xml	17 Jan 2003 17:45:30 -0000	1.13
  @@ -1 +1 @@
  -<?xml version="1.0"  encoding="ISO-8859-1"?> 
<!-- $Id$ -->
<!DOCTYPE Configure PUBLIC
	"-//Mort Bay Consulting//DTD Configure 1.2//EN"
	"http://jetty.mortbay.org/configure_1_2.dtd">

<Configure class="org.mortbay.jetty.Server">

  <Call name="addListener">
    <Arg>
      <New class="org.mortbay.http.SocketListener">
        <Set name="Port">8080</Set>
        <Set name="MinThreads">1</Set>
        <Set name="MaxThreads">10</Set>
        <Set name="MaxIdleTimeMs">50000</Set>
      </New>
    </Arg>
  </Call>

  
  <!-- By moving web.xml into WEB-INF, the working directory ends up with the
       approximate format of a WAR. -->

  <Call name="addWebApplication">
    <Arg>/tutorial</Arg>
    <Arg>.</Arg>
    <Set name="DefaultsDescriptor">../../config/webdefault.xml</Set>
  </Call>
  
  <Call name="addContext">
    <Arg>/</Arg>   
    <Set name="realmName">Jetty Demo Realm</Set>
   
    <Call name="addServlet">
      <Arg>Admin</Arg>
      <Arg>/</Arg>
      <Arg>org.mortbay.servlet.AdminServlet</Arg>
    </Call>
    
    <Call name="setAttribute">
      <Arg>org.mortbay.http.HttpServer</Arg>
      <Arg><Call name="getHttpServer"/></Arg>
    </Call>
  </Call>    
</Configure>
  \ No newline at end of file
  +<?xml version="1.0"  encoding="ISO-8859-1"?> 
<!-- $Id$ -->
<!DOCTYPE Configure PUBLIC
	"-//Mort Bay Consulting//DTD Configure 1.2//EN"
	"http://jetty.mortbay.org/configure_1_2.dtd">

<Configure class="org.mortbay.jetty.Server">

  <Call name="addListener">
    <Arg>
      <New class="org.mortbay.http.SocketListener">
        <Set name="Port">8080</Set>
        <Set name="MinThreads">1</Set>
        <Set name="MaxThreads">10</Set>
        <Set name="MaxIdleTimeMs">50000</Set>
      </New>
    </Arg>
  </Call>

  
  <Call name="addWebApplication">
    <Arg>/tutorial</Arg>
    <Arg>context</Arg>
    <Set name="DefaultsDescriptor">../../config/webdefault.xml</Set>
  </Call>
  
  <Call name="addContext">
    <Arg>/</Arg>   
    <Set name="realmName">Jetty Demo Realm</Set>
   
    <Call name="addServlet">
      <Arg>Admin</Arg>
      <Arg>/</Arg>
      <Arg>org.mortbay.servlet.AdminServlet</Arg>
    </Call>
    
    <Call name="setAttribute">
      <Arg>org.mortbay.http.HttpServer</Arg>
      <Arg><Call name="getHttpServer"/></Arg>
    </Call>
  </Call>    
</Configure>
  \ No newline at end of file
  
  
  
  1.2       +18 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/hangman/Guess.page
  
  
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/hangman/Home.page
  
  
  
  
  1.2       +7 -0      jakarta-tapestry/examples/Tutorial/context/WEB-INF/simple/Home.page
  
  
  
  
  1.3       +0 -11     jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/table/LocaleList.java
  
  Index: LocaleList.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/table/LocaleList.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- LocaleList.java	13 Jan 2003 03:33:29 -0000	1.2
  +++ LocaleList.java	17 Jan 2003 17:45:31 -0000	1.3
  @@ -109,17 +109,6 @@
           m_setSelectedLocales.clear();
       }
   
  -    /**
  -	 * @see net.sf.tapestry.AbstractComponent#finishLoad()
  -	 */
  -	protected void finishLoad()
  -	{
  -		super.finishLoad();
  -        getPage().addPageDetachListener(this);
  -	}
  -
  -
  -
   	/**
   	 * Method initTableSessionStateManager.
   	 * Creates the Table Session State Manager, and thus determines what part
  
  
  
  1.12      +2 -2      jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/chart/ChartService.java
  
  Index: ChartService.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/chart/ChartService.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- ChartService.java	13 Jan 2003 03:33:39 -0000	1.11
  +++ ChartService.java	17 Jan 2003 17:45:31 -0000	1.12
  @@ -94,7 +94,7 @@
       public Gesture buildGesture(IRequestCycle cycle, IComponent component, Object[] parameters)
       {
           String[] context;
  -        String pageName = component.getPage().getName();
  +        String pageName = component.getPage().getPageName();
           String idPath = component.getIdPath();
   
           if (idPath != null)
  
  
  
  1.8       +38 -26    jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/chart/Chart.java
  
  Index: Chart.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Tutorial/src/tutorial/workbench/chart/Chart.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- Chart.java	13 Jan 2003 03:33:40 -0000	1.7
  +++ Chart.java	17 Jan 2003 17:45:31 -0000	1.8
  @@ -82,17 +82,15 @@
   
   public class Chart extends BasePage implements IChartProvider
   {
  -    private List plotValues;
  -    private List removeValues;
  -    private PlotValue plotValue;
  -
  -    public void detach()
  -    {
  -        plotValues = null;
  -        removeValues = null;
  -        plotValue = null;
  -
  -        super.detach();
  +    private List _plotValues;
  +    private List _removeValues;
  +    private PlotValue _plotValue;
  +
  +    public void initialize()
  +    {
  +        _plotValues = null;
  +        _removeValues = null;
  +        _plotValue = null;
       }
   
       /**
  @@ -108,33 +106,35 @@
   
       public List getPlotValues()
       {
  -        if (plotValues == null)
  +        if (_plotValues == null)
           {
  -            setPlotValues(new ArrayList());
  +            _plotValues = new ArrayList();
   
  -            plotValues.add(new PlotValue("Fred", 10));
  -            plotValues.add(new PlotValue("Barney", 15));
  -            plotValues.add(new PlotValue("Dino", 7));
  +            _plotValues.add(new PlotValue("Fred", 10));
  +            _plotValues.add(new PlotValue("Barney", 15));
  +            _plotValues.add(new PlotValue("Dino", 7));
  +
  +            fireObservedChange("plotValues", _plotValues);
           }
   
  -        return plotValues;
  +        return _plotValues;
       }
   
       public void setPlotValues(List plotValues)
       {
  -        this.plotValues = plotValues;
  +        _plotValues = plotValues;
   
           fireObservedChange("plotValues", plotValues);
       }
   
       public PlotValue getPlotValue()
       {
  -        return plotValue;
  +        return _plotValue;
       }
   
       public void setPlotValue(PlotValue plotValue)
       {
  -        this.plotValue = plotValue;
  +        _plotValue = plotValue;
       }
   
       /**
  @@ -159,10 +159,10 @@
       {
           if (value)
           {
  -            if (removeValues == null)
  -                removeValues = new ArrayList();
  +            if (_removeValues == null)
  +                _removeValues = new ArrayList();
   
  -            removeValues.add(plotValue);
  +            _removeValues.add(_plotValue);
   
               // Deleting things screws up the validation delegate.
               // That's because the errors are associated with the form name
  @@ -191,7 +191,11 @@
   
       public void add(IRequestCycle cycle)
       {
  +        List plotValues = getPlotValues();
  +
           plotValues.add(new PlotValue());
  +
  +        setPlotValues(plotValues);
       }
   
       /**
  @@ -203,8 +207,14 @@
   
       public void delete(IRequestCycle cycle)
       {
  -        if (removeValues != null)
  -            plotValues.removeAll(removeValues);
  +        if (_removeValues != null)
  +        {
  +            List plotValues = getPlotValues();
  +
  +            plotValues.removeAll(_removeValues);
  +
  +            setPlotValues(plotValues);
  +        }
       }
   
       private IAsset chartImageAsset;
  @@ -227,6 +237,8 @@
       public JFreeChart getChart()
       {
           DefaultPieDataset data = new DefaultPieDataset();
  +
  +        List plotValues = getPlotValues();
   
           int count = plotValues.size();
   
  
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Tutorial/context/border/Legal.html
  
  
  
  
  1.2       +5 -0      jakarta-tapestry/examples/Tutorial/context/border/Credo.html
  
  
  
  
  1.2       +6 -0      jakarta-tapestry/examples/Tutorial/context/border/Home.html
  
  
  
  
  1.2       +259 -0    jakarta-tapestry/examples/Vlib/context/scripts/style_virtlib_pcIE55.css
  
  
  
  
  1.9       +2 -5      jakarta-tapestry/examples/VlibBeans/src/net/sf/tapestry/vlib/ejb/impl/OperationsBean.java
  
  Index: OperationsBean.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/VlibBeans/src/net/sf/tapestry/vlib/ejb/impl/OperationsBean.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- OperationsBean.java	13 Jan 2003 03:33:27 -0000	1.8
  +++ OperationsBean.java	17 Jan 2003 17:45:31 -0000	1.9
  @@ -444,12 +444,9 @@
           IStatement statement = null;
           ResultSet set = null;
           StatementAssembly assembly;
  -        Integer primaryKey;
  -        String name;
           List list;
           Person[] result;
           Object[] columns;
  -        int column;
   
           try
           {
  @@ -714,7 +711,7 @@
           // Verify that the new owner exists.
   
           IPersonHome personHome = getPersonHome();
  -        IPerson newOwner = personHome.findByPrimaryKey(newOwnerPrimaryKey);
  +        personHome.findByPrimaryKey(newOwnerPrimaryKey);
   
           // Direct SQL would be more efficient, but this'll probably do.
   
  
  
  
  1.2       +14 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/border/Credo.page
  
  
  
  
  1.2       +13 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/border/border.application
  
  
  
  
  1.2       +22 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/border/Border.jwc
  
  
  
  
  1.2       +14 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/border/Home.page
  
  
  
  
  1.2       +31 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/border/Border.html
  
  
  
  
  1.2       +14 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/border/Legal.page
  
  
  
  
  1.2       +15 -0     jakarta-tapestry/examples/Tutorial/context/simple/Home.html
  
  
  
  
  1.2       +197 -0    jakarta-tapestry/examples/Tutorial/context/workbench/css/workbench.css
  
  
  
  
  1.6       +11 -29    jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/Vlib.application
  
  Index: Vlib.application
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/Vlib.application,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Vlib.application	9 Sep 2002 13:25:55 -0000	1.5
  +++ Vlib.application	17 Jan 2003 17:45:32 -0000	1.6
  @@ -4,38 +4,20 @@
   	"-//Howard Lewis Ship//Tapestry Specification 1.3//EN" 
   	"http://tapestry.sf.net/dtd/Tapestry_1_3.dtd">
   
  -<application name="Virtual Library" engine-class="net.sf.tapestry.vlib.VirtualLibraryEngine">
  -
  -  <page name="Home" specification-path="/net/sf/tapestry/vlib/pages/Home.page"/>
  -  <page name="Login" specification-path="/net/sf/tapestry/vlib/pages/Login.page"/>
  -  <page name="Matches" specification-path="/net/sf/tapestry/vlib/pages/Matches.page"/>
  -  <page name="MyLibrary" specification-path="/net/sf/tapestry/vlib/pages/MyLibrary.page"/>
  -  <page name="BorrowedBooks" specification-path="/net/sf/tapestry/vlib/pages/BorrowedBooks.page"/>
  -  <page name="NewBook" specification-path="/net/sf/tapestry/vlib/pages/NewBook.page"/>
  -  <page name="EditBook" specification-path="/net/sf/tapestry/vlib/pages/EditBook.page"/>
  -  <page name="EditProfile" specification-path="/net/sf/tapestry/vlib/pages/EditProfile.page"/>
  -  <page name="ConfirmBookDelete" specification-path="/net/sf/tapestry/vlib/pages/ConfirmBookDelete.page"/>
  -  <page name="Person" specification-path="/net/sf/tapestry/vlib/pages/PersonPage.page"/>
  -  <page name="ViewBook" specification-path="/net/sf/tapestry/vlib/pages/ViewBook.page"/>
  -  <page name="Register" specification-path="/net/sf/tapestry/vlib/pages/Register.page"/>
  -  <page name="ApplicationUnavailable" specification-path="/net/sf/tapestry/vlib/pages/ApplicationUnavailable.page"/>
  +<application
  +	name="Virtual Library" 
  +	engine-class="net.sf.tapestry.vlib.VirtualLibraryEngine">
     	
  +  <!-- These page names violate the normal naming rules, so must
  +       be defined. -->
  +       	
     <page name="admin.TransferBooks" 
  -  	specification-path="/net/sf/tapestry/vlib/pages/admin/TransferBooks.page"/>
  +  	specification-path="pages/admin/TransferBooks.page"/>
     <page name="admin.EditPublishers"
  -    specification-path="/net/sf/tapestry/vlib/pages/admin/EditPublishers.page"/>
  +    specification-path="pages/admin/EditPublishers.page"/>
     <page name="admin.EditUsers"
  -    specification-path="/net/sf/tapestry/vlib/pages/admin/EditUsers.page"/> 
  - 
  -  <component-alias type="Border" specification-path="/net/sf/tapestry/vlib/components/Border.jwc"/>
  -  <component-alias type="BookLink" specification-path="/net/sf/tapestry/vlib/components/BookLink.jwc"/>
  -  <component-alias type="PersonLink" specification-path="/net/sf/tapestry/vlib/components/PersonLink.jwc"/>
  -  <component-alias type="ShowError" specification-path="/net/sf/tapestry/vlib/components/ShowError.jwc"/>
  -  <component-alias type="ShowValidationError" specification-path="/net/sf/tapestry/vlib/components/ShowValidationError.jwc"/>
  -  <component-alias type="ShowMessage" specification-path="/net/sf/tapestry/vlib/components/ShowMessage.jwc"/>
  -  <component-alias type="Borrow" specification-path="/net/sf/tapestry/vlib/components/Borrow.jwc"/>
  -  <component-alias type="Browser" specification-path="/net/sf/tapestry/vlib/components/Browser.jwc"/>
  -  
  +    specification-path="pages/admin/EditUsers.page"/> 
  +   
     <library id="contrib" specification-path="/net/sf/tapestry/contrib/Contrib.library"/>
     	
   </application>
  
  
  
  1.11      +3 -3      jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/VirtualLibraryEngine.java
  
  Index: VirtualLibraryEngine.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/examples/Vlib/src/net/sf/tapestry/vlib/VirtualLibraryEngine.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- VirtualLibraryEngine.java	13 Jan 2003 03:33:28 -0000	1.10
  +++ VirtualLibraryEngine.java	17 Jan 2003 17:45:32 -0000	1.11
  @@ -70,7 +70,7 @@
   import net.sf.tapestry.ApplicationRuntimeException;
   import net.sf.tapestry.IRequestCycle;
   import net.sf.tapestry.ResponseOutputStream;
  -import net.sf.tapestry.engine.SimpleEngine;
  +import net.sf.tapestry.engine.BaseEngine;
   import net.sf.tapestry.form.IPropertySelectionModel;
   import net.sf.tapestry.vlib.ejb.IBookQuery;
   import net.sf.tapestry.vlib.ejb.IBookQueryHome;
  @@ -95,7 +95,7 @@
    *
    **/
   
  -public class VirtualLibraryEngine extends SimpleEngine
  +public class VirtualLibraryEngine extends BaseEngine
   {
       public static final Log LOG = LogFactory.getLog(VirtualLibraryEngine.class);
   
  
  
  
  1.2       +85 -0     jakarta-tapestry/examples/Tutorial/context/WEB-INF/web.xml
  
  
  
  

Mime
View raw message