Return-Path: Delivered-To: apmail-jakarta-commons-dev-archive@apache.org Received: (qmail 84159 invoked from network); 23 Apr 2002 16:37:27 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 23 Apr 2002 16:37:27 -0000 Received: (qmail 1344 invoked by uid 97); 23 Apr 2002 16:37:24 -0000 Delivered-To: qmlist-jakarta-archive-commons-dev@jakarta.apache.org Received: (qmail 1279 invoked by uid 97); 23 Apr 2002 16:37:23 -0000 Mailing-List: contact commons-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jakarta Commons Developers List" Reply-To: "Jakarta Commons Developers List" Delivered-To: mailing list commons-dev@jakarta.apache.org Received: (qmail 1262 invoked by uid 97); 23 Apr 2002 16:37:23 -0000 Date: 23 Apr 2002 16:37:17 -0000 Message-ID: <20020423163717.85538.qmail@icarus.apache.org> From: jstrachan@apache.org To: jakarta-commons-cvs@apache.org Subject: cvs commit: jakarta-commons/docs cli.html beanutils.html betwixt.html charter.html collections.html commons.html components.html contributors.html digester.html directory.html index.html jelly.html license.html logging.html messenger.html releases.html sandbox.html versioning.html X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N jstrachan 02/04/23 09:37:17 Modified: docs beanutils.html betwixt.html charter.html collections.html commons.html components.html contributors.html digester.html directory.html index.html jelly.html license.html logging.html messenger.html releases.html sandbox.html versioning.html Added: docs cli.html Log: Added home page for CLI Revision Changes Path 1.31 +2 -0 jakarta-commons/docs/beanutils.html Index: beanutils.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/beanutils.html,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- beanutils.html 23 Apr 2002 01:45:26 -0000 1.30 +++ beanutils.html 23 Apr 2002 16:37:16 -0000 1.31 @@ -94,6 +94,8 @@
  • Betwixt
  • +
  • CLI +
  • Jelly
  • JJar 1.10 +2 -33 jakarta-commons/docs/betwixt.html Index: betwixt.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/betwixt.html,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- betwixt.html 23 Apr 2002 01:45:26 -0000 1.9 +++ betwixt.html 23 Apr 2002 16:37:16 -0000 1.10 @@ -94,6 +94,8 @@
    • Betwixt
    • +
    • CLI +
    • Jelly
    • JJar @@ -132,29 +134,17 @@

      -

        - -
      1. - Introduction -
      2. - -
      3. - Documentation -
      4. - -
      -

      @@ -170,32 +160,20 @@

      - Proposed by : James Strachan -

      - Betwixt -

      - The Betwixt library provides an XML introspection mechanism - for mapping beans to XML in a flexible way. It is implemented using an - XMLIntrospector and XMLBeanInfo classes which are similar to the standard - Introspector and BeanInfo from the Java Beans specification.

      - Betwixt provides a way of turning beans into XML as well as automatically - generating digester rules in a way that can be customized on a per type - manner in the same way that the BeanInfo mechanism can be used to customize - the default introspection on a java object.

      @@ -211,24 +189,15 @@

      - There is an Overview document. - There is also the - status document. - or the initial proposal. -

      - The JavaDoc - from the last nightly build is available online or you can download a - nightly build. -

      1.31 +2 -0 jakarta-commons/docs/charter.html Index: charter.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/charter.html,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- charter.html 23 Apr 2002 01:45:26 -0000 1.30 +++ charter.html 23 Apr 2002 16:37:16 -0000 1.31 @@ -94,6 +94,8 @@
      • Betwixt
      • +
      • CLI +
      • Jelly
      • JJar 1.22 +2 -0 jakarta-commons/docs/collections.html Index: collections.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/collections.html,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- collections.html 23 Apr 2002 01:45:26 -0000 1.21 +++ collections.html 23 Apr 2002 16:37:16 -0000 1.22 @@ -94,6 +94,8 @@
        • Betwixt
        • +
        • CLI +
        • Jelly
        • JJar 1.31 +2 -21 jakarta-commons/docs/commons.html Index: commons.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/commons.html,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- commons.html 23 Apr 2002 01:45:26 -0000 1.30 +++ commons.html 23 Apr 2002 16:37:16 -0000 1.31 @@ -94,6 +94,8 @@
          • Betwixt
          • +
          • CLI +
          • Jelly
          • JJar @@ -166,9 +168,7 @@

            - The following proposals for new Commons Proper projects are currently pending : -

              @@ -176,44 +176,25 @@ BeanUtils Package : Craig McClanahan -
            • - Database Connection Pool Package : Rodney Waldhoff -
            • - -
            • - Object Pooling Package : Rodney Waldhoff -
            • - -
            • - Collections Package : Rodney Waldhoff -
            • - -
            • - Cactus, the renamed J2EEUnit : Vincent Massol -
            • - -

            - Please see the jakarta-commons mail list for further details. -

            1.26 +11 -2 jakarta-commons/docs/components.html Index: components.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/components.html,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- components.html 23 Apr 2002 01:45:26 -0000 1.25 +++ components.html 23 Apr 2002 16:37:16 -0000 1.26 @@ -94,6 +94,8 @@
            • Betwixt
            • +
            • CLI +
            • Jelly
            • JJar @@ -325,7 +327,7 @@
              -
              Betwixt
              +
              Betwixt
              Betwixt provides services for mapping JavaBeans to XML documents, and vice versa.
              @@ -345,6 +347,13 @@ + +
              CLI
              +
              + CLI provides a simple API for working with Comamnd Line arguments, options, option groups, mandatory options and so forth. +
              + +
              Mail
              @@ -353,7 +362,7 @@ -
              Jelly
              +
              Jelly
              Jelly implements a simple XML based scripting engine combining the best parts from JSP tags, JSTL, Velocity and XDoclets template system into a simple engine that can be run from the command line, from inside Ant or in Servlets. 1.32 +2 -0 jakarta-commons/docs/contributors.html Index: contributors.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/contributors.html,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- contributors.html 23 Apr 2002 01:45:26 -0000 1.31 +++ contributors.html 23 Apr 2002 16:37:16 -0000 1.32 @@ -94,6 +94,8 @@
              • Betwixt
              • +
              • CLI +
              • Jelly
              • JJar 1.17 +2 -0 jakarta-commons/docs/digester.html Index: digester.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/digester.html,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- digester.html 23 Apr 2002 01:45:26 -0000 1.16 +++ digester.html 23 Apr 2002 16:37:16 -0000 1.17 @@ -94,6 +94,8 @@
                • Betwixt
                • +
                • CLI +
                • Jelly
                • JJar 1.29 +2 -0 jakarta-commons/docs/directory.html Index: directory.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/directory.html,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- directory.html 23 Apr 2002 01:45:26 -0000 1.28 +++ directory.html 23 Apr 2002 16:37:16 -0000 1.29 @@ -94,6 +94,8 @@
                  • Betwixt
                  • +
                  • CLI +
                  • Jelly
                  • JJar 1.34 +2 -0 jakarta-commons/docs/index.html Index: index.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/index.html,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- index.html 23 Apr 2002 01:45:26 -0000 1.33 +++ index.html 23 Apr 2002 16:37:16 -0000 1.34 @@ -94,6 +94,8 @@
                    • Betwixt
                    • +
                    • CLI +
                    • Jelly
                    • JJar 1.5 +2 -32 jakarta-commons/docs/jelly.html Index: jelly.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/jelly.html,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- jelly.html 23 Apr 2002 01:45:26 -0000 1.4 +++ jelly.html 23 Apr 2002 16:37:16 -0000 1.5 @@ -94,6 +94,8 @@
                      • Betwixt
                      • +
                      • CLI +
                      • Jelly
                      • JJar @@ -132,29 +134,17 @@

                        -

                          - -
                        1. - Introduction -
                        2. - -
                        3. - Documentation -
                        4. - -
                        -

                        @@ -170,30 +160,19 @@

                        - Proposed by : James Strachan -

                        - Jelly -

                        The Jelly package implements a simple XML tag based scripting - engine. Jelly borrows many ideas from both JSP custom tags, Velocity and the - scripting engine inside XDoclet. Jelly can be used from the command line, inside - Ant or inside a Servlet. -

                        - Jelly is completely extendable via custom tags in a similar way to JSP. - Though Jelly is really simple and has no dependencies either Servlets or JSP. -

                        @@ -209,24 +188,15 @@

                        - There is an Overview document. - There is also the - status document. - or the initial proposal. -

                        - The JavaDoc - from the last nightly build is available online or you can download a - nightly build. -

                        1.29 +2 -0 jakarta-commons/docs/license.html Index: license.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/license.html,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- license.html 23 Apr 2002 01:45:26 -0000 1.28 +++ license.html 23 Apr 2002 16:37:16 -0000 1.29 @@ -95,6 +95,8 @@
                        • Betwixt
                        • +
                        • CLI +
                        • Jelly
                        • JJar 1.6 +2 -0 jakarta-commons/docs/logging.html Index: logging.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/logging.html,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- logging.html 23 Apr 2002 01:45:26 -0000 1.5 +++ logging.html 23 Apr 2002 16:37:16 -0000 1.6 @@ -94,6 +94,8 @@
                          • Betwixt
                          • +
                          • CLI +
                          • Jelly
                          • JJar 1.24 +2 -234 jakarta-commons/docs/messenger.html Index: messenger.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/messenger.html,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- messenger.html 23 Apr 2002 01:45:26 -0000 1.23 +++ messenger.html 23 Apr 2002 16:37:16 -0000 1.24 @@ -94,6 +94,8 @@
                            • Betwixt
                            • +
                            • CLI +
                            • Jelly
                            • JJar @@ -132,59 +134,32 @@

                              -

                                - -
                              1. - Introduction -
                              2. - -
                              3. - Documentation -
                              4. - -
                              5. - Example Configuration -
                              6. - -
                              7. - Example Code -
                              8. - -
                              9. - Configuration -
                              10. - -
                              11. - Messagelets -
                              12. -
                              -

                              @@ -200,41 +175,25 @@

                              - Proposed by : James Strachan -

                              - Messenger is a JMS (Java Message Service) framework - which makes it very easy to use JMS in Web Service and Web Application environments. -

                              - Messenger allows much of the complexity of the JMS API to be hidden behind - a simple facade API. -

                              - In addition Messenger provides an XML deployment - configuration file to avoid having to litter your code with complex deployment - configuration details in your application code. -

                              - Messenger also provides a Messagelet Engine which is a JMS based container - that can be deployed in any Servlet Engine to process JMS messages - via MessageListeners, Servlets or JSP. -

                              @@ -250,22 +209,14 @@

                              - The JavaDoc - from the last nightly build is available online - or you can download a nightly build. -

                              - There is also the - status document. - or the initial proposal. -

                              @@ -281,9 +232,7 @@

                              - Here is an example Messenger.xml deployment configuration file. -

                              @@ -295,55 +244,30 @@ @@ -355,16 +279,11 @@
                                -
                                 <?xml version="1.0" encoding="UTF-8"?>
                                -
                                 <manager>
                                 
                                -
                                -
                                   <!-- this example Messenger XML config file should work with J2EE SDK -->
                                 
                                -
                                -
                                   <messenger name="topic">
                                -
                                     <jndi lookupName="TopicConnectionFactory">
                                -
                                       <property>
                                -
                                         <name>com.sun.jms.internal.java.naming.factory.initial</name>
                                -
                                         <value>com.sun.enterprise.naming.SerialInitContextFactory</value>
                                -
                                       </property>          
                                -
                                     </jndi>
                                -
                                   </messenger>
                                 
                                -
                                -
                                   <messenger name="queue">
                                -
                                     <jndi lookupName="QueueConnectionFactory">
                                -
                                       <property>
                                -
                                         <name>com.sun.jms.internal.java.naming.factory.initial</name>
                                -
                                         <value>com.sun.enterprise.naming.SerialInitContextFactory</value>
                                -
                                       </property>          
                                -
                                     </jndi>
                                -
                                   </messenger>
                                 
                                -
                                -
                                 </manager>
                                -
                                 

                              - It should work with the J2EE SDK to make 2 standard Messengers called - topic and queue respectively. -

                              - So how would we use these 2 Messengers from Java code? -

                              @@ -380,9 +299,7 @@

                              - Here's some example code to send a message on a topic. -

                              @@ -395,22 +312,13 @@ @@ -422,9 +330,7 @@
                                 
                                -
                                -
                                 // get a Messenger and Destination
                                -
                                 Messenger messenger = MessengerManager.get( "topic" );
                                -
                                 Destination destination = messenger.getDestination( "CHAT.NEWBIES" );
                                 
                                -
                                -
                                 // now lets send a message
                                -
                                 TextMessage message = messenger.createTextMessage( "this is some text" );
                                -
                                 messenger.send( destination, message );
                                -
                                 

                              - Here's some code to receive a message on a queue, blocking until the message arrives. -

                              @@ -437,20 +343,12 @@ @@ -462,20 +360,13 @@
                                 
                                -
                                -
                                 // get a Messenger and Destination
                                -
                                 Messenger messenger = MessengerManager.get( "queue" );
                                -
                                 Destination destination = messenger.getDestination( "REQUEST.BUILD" );
                                 
                                -
                                -
                                 // now lets receive a message
                                -
                                 Message message = messenger.receive( destination );
                                -
                                 

                              - Notice how the construction of individual Messenger objects can be hidden behind - the MessengerManager in a similar way to tools like log4j. -

                              - Also notice that the Messenger API is a simple facade, no need for Topic and Queue specific - coding as well as the use of MessageConsumer, MessageProducer, TopicPublisher, - TopicSubscriber, QueueSender, QueueReceiver and the plethora of Connection and Session objects. -

                              @@ -491,11 +382,8 @@

                              - By default, Messenger will look for an XML document called Messenger.xml - on the CLASSPATH as soon as a Messenger instance is looked up via the following code. -

                              @@ -508,10 +396,7 @@ @@ -523,11 +408,8 @@
                                 
                                -
                                -
                                 Messenger messenger = MessengerManager.get( "customer.orders" );
                                -
                                 

                              - An alternative approach is to define the system property org.apache.commons.messenger - to point to a URL of a Messenger deployment configuration document. For example -

                              @@ -540,10 +422,7 @@ @@ -555,15 +434,10 @@
                                 
                                -
                                -
                                   $ java -Dorg.apache.commons.messenger=http://localhost/config/Messenger.xml MyApplication
                                -
                                 

                              - In servlet environments its often a good idea to explicitly configure the - singleton MessengerManager - in a Servlet initialisation method using servlet initialisation parameters. - Here's an example -

                              @@ -576,28 +450,16 @@ @@ -622,43 +484,25 @@
                                 
                                -
                                -
                                 public class MyServlet extends HttpServlet {
                                -
                                     
                                -
                                     public void init() throws ServletException {
                                -
                                         // initialise the Messenger connections
                                -
                                         String url = getInitParameter( "messenger" );
                                -
                                         if ( url != null ) {
                                -
                                             MessengerManager.configure( url );
                                -
                                         }
                                -
                                     }
                                -
                                 }  
                                -
                                 

                              - The Messenger project provides a Messagelet Engine which is - a JMS based Container which runs in any Servlet Engine - such as Tomcat 4.0. - The Messagelet Engine provides a simple framework for processing JMS messages in - a variety of ways using either regular JMS MessageListeners, Servlets or even JSP. -

                              - To deploy a Messagelet Container you need to add the ManagerServlet in a web - application giving it an XML configuration file describing all the various JMS connections - and an XML configuration file describing all the subscriptions. -

                              - Here are example - connections - and - subscriptions - XML configuration files. - There now follows the section you need to add to your web.xml configuration file to deploy the - Messagelet Manager Servlet. -

                              @@ -671,34 +515,19 @@ @@ -710,130 +539,69 @@
                                 
                                -
                                -
                                   <servlet>
                                -
                                     <servlet-name>managerServlet</servlet-name>
                                -
                                     <servlet-class>org.apache.commons.messagelet.ManagerServlet</servlet-class>
                                -
                                     <init-param>
                                -
                                       <param-name>connections</param-name>
                                -
                                       <param-value>/WEB-INF/Messenger.xml</param-value>
                                -
                                     </init-param> 
                                -
                                     <init-param>
                                -
                                       <param-name>subscriptions</param-name>
                                -
                                       <param-value>/WEB-INF/subscriptions.xml</param-value>
                                -
                                     </init-param> 
                                -
                                     <load-on-startup>1</load-on-startup> 
                                -
                                   </servlet>
                                -
                                 

                              - Once you've done the above and the web application is started the Messagelet engine will - subscribe to the various JMS subscriptions and then dispatch JMS messages to the various - MessageListener objects, Servlets or JSP pages. -

                              - There are a variety of ways in which you can process JMS messages depending on your requirements. -

                                - -
                              • - A MessageListener is a standard JMS listener of messages. -
                              • - -
                              • - A MessageDrivenObject is-a JMS MessageListener which has - extra servlet-based lifecycle methods just like a Servlet. - This allows - an MDO to know when its being initialised and when its being destroryed - and so do some resource management (such as creating or closing database - connections etc). Also on initialisation the MDO gets access to the - ServletContext so that it can read some initialization parameters from - the web application or perform web-app level logging and so on. -
                              • - -
                              • - A MessengerMDO is-a MessageDrivenObject - but also provides a number of helper methods such as access to the Messenger to - which its listening, so that responses can be sent back to the originator of the message, - as well as access to the ServletContext and some logging helper methods. -
                              • - -
                              • - A Servlet can be any GenericServlet or HttpServlet. - If the JMS message that is being dispatched is a TextMessage then the body of the message is - available via the ServletRequest.getReader() method, in the normal Servlet way. - Any output written to the ServletResponse.getWriter() will be converted into a TextMessage - and sent back to the originator. - All servlets and JSP pages have access to the originating JMS message and Messenger objects via - the "message" and "messenger" request attributes respectively. -
                              • - -
                              • - A Messagelet - is a JMS specific Servlet, just like a HttpServlet is a HTTP specific Servlet. It - provides access to a Messagelet specific - MessageletRequest - and - MessageletResponse - to allow access to the JMS Message and the Messenger for sending replies. -
                              • - -
                              • - A JSP page can be any piece of JSP, for example the standard JSP tag library can be used - to perform JavaScript, XPath, XSLT or SQL operations on the incoming message. - The request scope "message" and "messenger" attributes can be used to access the originating - JMS Message and Messenger objects. -
                              • - -

                              There are some examples of an MDO, Servlet and Messagelet - here or - you can see example JSP - here -

                              1.23 +2 -0 jakarta-commons/docs/releases.html Index: releases.html =================================================================== RCS file: /home/cvs/jakarta-commons/docs/releases.html,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- releases.html 23 Apr 2002 01:45:26 -0000 1.22 +++ releases.html 23 Apr 2002 16:37:16 -0000 1.23 @@ -94,6 +94,8 @@