Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Towards Rack 2.0
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  6 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Christian Neukirchen  
View profile  
 More options Apr 1 2009, 9:51 am
From: Christian Neukirchen <chneukirc...@gmail.com>
Date: Wed, 01 Apr 2009 15:51:18 +0200
Local: Wed, Apr 1 2009 9:51 am
Subject: Towards Rack 2.0

While the coming Rack 1.0 has been proven useful for small sites, it
is by no means sufficient for the requirements of today's Enterprise.
I therefore propose Rack 2.0, where we adopt several important design
decisions from J2EE:

* Rack applications now need to subclass from
  Org::Chneukirchen::Rack::AbstractApplication and implement these
  methods: #init, #service, #destroy.  Instead of getting an env hash
  and returning a tuple, #service now gets two opaque objects,
  instances of Org::Chneukirchen::Rack::AbstractRequest and
  Org::Chneukirchen::Rack::AbstractResponse.  To generate output,
  simply run response.getWriter.println("foo").  Imperative
  programmers will love it!  Don't forget to #close the writer, though.

* Rackup, which obviously was just a quick hack, gets converted from a
  DSL to a proper XML configuration file, for example:

    <?xml version="1.0" encoding="UTF-8"?>
    <rackup id="hello-rack" version="2.4" xmlns="http://chneukirchen.org/xml/ns/rackup"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://chneukirchen.org/xml/ns/rackup.xsd">
      <display-name>A Rack 2.0 application</display-name>
      <filter>
        <filter-name>ServletMappedDoFilter_Filter</filter-name>
        <filter-class>tests.Filter.DoFilter_Filter</filter-class>
        <init-param>
          <param-name>attribute</param-name>
          <param-value>tests.Filter.DoFilter_Filter.SERVLET_MAPPED</param-value>
        </init-param>
      </filter>
      <filter-mapping>
        <filter-name>ServletMappedDoFilter_Filter</filter-name>
        <url-pattern>/DoFilterTest</url-pattern>
        <dispatcher>REQUEST</dispatcher>
      </filter-mapping>
      <listener>
        <listener-class>tests.ServletRequestListener.RequestListener</listener-clas s>
      </listener>
      <servlet>
        <servlet-name>welcome</servlet-name>
        <servlet-class>WelcomeServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>ServletErrorPage</servlet-name>
        <servlet-class>tests.Error.ServletErrorPage</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>welcome</servlet-name>
        <url-pattern>/hello.welcome</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>ServletErrorPage</servlet-name>
        <url-pattern>/ServletErrorPage</url-pattern>
      </servlet-mapping>
      <welcome-file-list>
        <welcome-file>hello.welcome</welcome-file>
      </welcome-file-list>
      <error-page>
        <exception-type>IndexError</exception-type>
        <location>/ServletErrorPage</location>
      </error-page>
      <error-page>
        <error-code>404</error-code>
        <location>/error404.html</location>
      <error-page>
    </rackup>

  This belongs to WEB-INF/rack.xml in the .rar file (see below).

* To generate Rack application sceletons, a new tool called "raven" is
  introduced.  Creating a new Rack application is as simple as

    rvn archetype:create -U                                     \
     -DarchetypeGroupId=org.chneukirchen.rack                   \
     -DarchetypeArtifactId=rack-archetype-basic                 \
     -DarchetypeVersion=1.0                                     \
     -DremoteRepositories=http://chneukirchen.org/repos/rack    \
     -DgroupId=org.chneukirchen.rack.hello -DartifactId=hello-rack

* For deployment, we now use .rar files that contain Rubygems and the
  stuff generated by raven.  Just stuff everything in there and pay
  people to deploy it to you.  This will create a whole new Ruby
  industry.

I hope you'll enjoy these new features and Rack 2.0 will become
popular in The Enterprise.

--
Christian Neukirchen  <chneukirc...@gmail.com>  http://chneukirchen.org


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Adrian Madrid  
View profile  
 More options Apr 1 2009, 10:03 am
From: Adrian Madrid <aemad...@gmail.com>
Date: Wed, 1 Apr 2009 08:03:14 -0600
Local: Wed, Apr 1 2009 10:03 am
Subject: Re: Towards Rack 2.0
Good one! Don't forget XSL transformations!

Adrian Madrid
My eBiz, Developer
3082 W. Maple Loop Dr
Lehi, UT 84043
801-341-3824

On Wed, Apr 1, 2009 at 07:51, Christian Neukirchen


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
sbfaulkner  
View profile  
 More options Apr 1 2009, 10:49 am
From: sbfaulkner <bre...@unwwwired.net>
Date: Wed, 1 Apr 2009 07:49:34 -0700 (PDT)
Local: Wed, Apr 1 2009 10:49 am
Subject: Re: Towards Rack 2.0
snicker snicker

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Michael Frawley  
View profile  
 More options Apr 1 2009, 5:40 pm
From: Michael Frawley <frawl...@gmail.com>
Date: Wed, 1 Apr 2009 16:40:45 -0500
Local: Wed, Apr 1 2009 5:40 pm
Subject: Re: Towards Rack 2.0

+1 on the fluent interface provided by that custom xml dsl.  Much safer than
executing ruby code, especially considering it could be used to override
methods on built in classes.
I know its early, but maybe we should start thinking about rack 3.0
development.  I think automatic deployment in the cloud should be the focus,
preferably on the azure platform, which is built on top of the rock-solid
.NET framework.  The browsers are the cloud!

˙∆˚


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
spicyj  
View profile  
 More options Apr 2 2009, 7:05 pm
From: spicyj <spicyjalap...@gmail.com>
Date: Thu, 2 Apr 2009 16:05:59 -0700 (PDT)
Local: Thurs, Apr 2 2009 7:05 pm
Subject: Re: Towards Rack 2.0
(In case someone comes along later reading this, notice the date on
the message!)

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Christian Neukirchen  
View profile  
 More options Apr 3 2009, 10:53 am
From: Christian Neukirchen <chneukirc...@gmail.com>
Date: Fri, 03 Apr 2009 16:53:19 +0200
Local: Fri, Apr 3 2009 10:53 am
Subject: Re: Towards Rack 2.0

spicyj <spicyjalap...@gmail.com> writes:
> (In case someone comes along later reading this, notice the date on
> the message!)

Or look in the headers. ;-)

--
Christian Neukirchen  <chneukirc...@gmail.com>  http://chneukirchen.org


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »