Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re^2: Introducing Apache2::ASP

by jdrago_999 (Hermit)
on Jun 03, 2007 at 19:53 UTC ( [id://618991]=note: print w/replies, xml ) Need Help??


in reply to Re: Introducing Apache2::ASP
in thread Introducing Apache2::ASP

I always thought the original Apache::ASP (by Joshua Chamas) was the most underrated web framework around.
Me too! It's been in use on every Perl web application I've built since 2003 (or thereabouts). Joshua Chamas made my life (and the lives of many others) much easier with the release of Apache::ASP.

How compatible is your new code, for people on Apache::ASP who want to try migrating?
Mostly compatible. There are some breaking changes however.

For example, the "global.asa" file is replaced with subclassing GlobalASA.pm. $Response->Cookies has been simplified ($Response->AddHeader is there for complex HTTP header manipulation).

I can't promise the new API extensions won't change before the v1.0 release, so I wouldn't recommend migrating any production websites to it just yet. However - anyone who's used Apache::ASP and wanted feature "X" added in or thought "Y" should be different, now is the time to speak up. Once v1.0 is released I'm going to freeze the API.

I hope to release v1.0 by the end of this month (June 2007).
Aside from a different session backend, are there any specific advantages your version has over Apache::ASP?
Some advantages include:
  • The introduction of "Apache2::ASP::Handlers" - an object-oriented approach to website development means you can write little or no code. I expect several independently-developed Apache2::ASP::Plugin::* modules in the future.
  • "Handlers" can inherit from each other. So you could have base global "create", "update" and "delete" Handlers that other handlers simply subclass.
  • File uploads go far beyond the old $Request->FileUpload(). Subclassing Apache2::ASP::UploadHandler or Apache2::ASP::MediaManager gives you the ability to set up callbacks like before_create(), after_update() or before_delete(). With a few lines of code you can build an upload progress indicator (see example on website).
  • What's more fun than uploading your movies/photos so other people can see them? MediaManager makes this as easy as use base 'Apache2::ASP::MediaManager';
  • As stated earlier, database-persisted Session and Application state means that your web application can span multiple servers. Servers may share roles or handle roles all by themselves (i.e. 3 WWW servers and 2 Media servers).
To help the Apache2::ASP API solidify, I'm building some web apps with it. The Apache2::ASP homepage is running it now. More sections will be added soon.

Thanks for commenting.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://618991]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (7)
As of 2024-03-28 09:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found