On Thu, Aug 29, 2002 at 08:51:17AM +0200, Tomasz Skutnik wrote: > Hello. > > As some of you recall > (http://www.mail-archive.com/avalon-users%40jakarta.apache.org/msg00163.html) > I've proposed some time ago contributing little Ant invoking server. But, > given Jeffs inspiration, here is what I was able to create in the spare > time I've had. This is generalized application invoker, based on Forehead > framework. > > Application can be downloaded from > http://scooter.ext.e-point.pl/apprunner.tar.gz > > Everything is inside - just unpack to jakarta-avalon-apps/ CVS > directory and build (ant dist or ant sar). This is by no means complete > project, and I'm not going to stop it's development, but I think it's > the time to show it to the world. Read docs, play with sample > configured apps, beware of multiple threads :) (see known issues section). > > I post it as evaluation/demo, and do not expect it to be commited in > soon, if at all (I'd even hold its commiting for some time because of > some *important* issues that need to be resolved - see inside docs). If > someone is going to commit it anyway, please check if links for download > page (which in fact doesn't work now for any Avalon application) and API > documentation works. > > I've tried to adhere to Jakarta standards as close as possible and > comment havily, but as alway something could have slipped out of my > hands, so any comments/improvements are welcome.
This is really cool :) Wheee..... Ant, Maven, starting instantly! Code and docs look very snazzy too. Top stuff :) Avalon dev people: if there's no objection, I'd like to add this to -apps (it's 300k) Actually it was a PITA to get working, because at first I didn't realise you have to configure src/conf/*.properties files, and getting them wrong results in rather cryptic errors from Phoenix. I never did get Checkstyle working, and in the end just removed checkstyle.{conf,properties} from src/conf. There's one quite largish issue with Forehead. In ForeheadAppRunnerServer.java line 444, you create a new Forehead object: final Forehead forehead = new Forehead(); Then Maven comes along and does: Forehead.getInstance().getClassLoader("root.maven") And throws a NPE, because getInstance() returns an unconfigured Forehead instance. Maven assumes that whatever configured Forehead, used it as a singleton and configured Forehead.getInstance(). We can't just change the above line to: final Forehead forehead = Forehead.getInstance(); because then we're reusing a single Forehead object for all hosted apps! So whichever initializes first will configure Forehead, and then all other apps die. In my case, Maven get configured first, and when I run Ant, Maven gets called and breaks. I haven't sufficiently grokked appserver and forehead to figure out who's to blame. If Maven justified in assuming Forehead.getInstance() is configured? Anyway, very cool :) --Jeff > Thanks. > > Have as much fun, as I had coding this project and learning Avalon. > > -- > > Tomasz Skutnik, R&D Director, www.e-point.pl > tel +48 (22) 853 48 30, mob +48 501 555 705, fax +48 (22) 853 48 30 > e-point S.A., ul. Filona 16, 02-658 Warsaw, Poland > PGP/GPG public key: http://scooter.ext.e-point.pl/tomasz.skutnik.gpg -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>