Hi, all. I'm new to Lift and have a few questions about using it. For 
background, I'm coming from Ruby to Scala, having finally been 
frustrated by some aspects of the former enough to try jumping ship. I 
know Java syntax, but the simplicity of Ruby has always been a powerful 
draw for me, so when I used Java I always stayed away from Maven and 
other cornerstones of the Java tool community. I say all of this not to 
stir up Ruby vs. Scala drama (because we just don't have enough of that 
already :P ) but to explain that I'm mistified by much of the Java 
ecosystem, and a lot of what's out there seems to take it for granted 
that I know all of this. So please pardon my newbie questions, and feel 
free to point me to the FM on the subject if there is one, because I've 
certainly been *trying* to RTFM. :) I also recognize that these topics 
aren't specific to Lift, but I figure I'm likely to find more proponents 
of low ceremony in the Scala community than I'd find if I seeked out 
some more general purpose Java enterprise deployment resource.

First...servlets? Web containers? App servers? Oh my. I want to write a 
few hobbyist apps with Lift and deploy them to my VPS. They may or may 
not take off, in which case I'd like a solution that can scale to 
real-world use. Not heavy real-world use, mind you, but I figure a 
separate VM/port for every app instance is overkill. So what do I need 
for this? I gather the app server is what handles arranging web apps in 
a single VM instance, but it's tough cutting through all the enterprise 
language to figure out which one of these is best for my circumstances, 
especially since I'm not dealing with legacy code and just want to 
launch hobbyist/personal projects. And I can't for the life of me figure 
out whether Tomcat is an app server or something else entirely. This 
seems so much more complicated than just throwing up a few Mongrels and 
a load balancer, or reading through the nicely-written Passenger manual 
and following the step-by-step instructions. I'm sure it has its 
advantages, I just can't get a grip on how it works.

I've also been reading a lot about OSGi and it looks really nice. Am I 
correct in assuming that OSGi is to Java web apps what Rack is to Ruby 
ones? OK, maybe not exactly, and I know it's a more general-purpose 
mechanism (I'm toying with ScalaModules in a desktop app for providing 
pluggable UIs and other services) but in poking through OSGi articles, 
I've read a few statements hinting that this is probably the best way to 
deploy new apps with no legacy dependencies. Is this true? Is an app 
server actually needed here, or do I just create an OSGi execution 
environment and start adding bundles?

It seems like the way to deploy an app is to build a war file and drop 
it into a specific directory of your servlet/app 
server/doohicky-whatamajig serverletcontainerthingie. It also looks as 
if all apps are installed into the same HTTP namespace, with URL path 
collisions resolved by editing web.xml and prepending something to the 
/* for the map elements. Is this accurate? Or is it possible to have the 
server prepend  /myapp or /myapp.war based on the name of the deployed 
app, then handle the mappings via ProxyPass in the front-end server? 
That's closer to what I'm used to in Ruby, where the app takes over the 
URL namespace beneath whatever path you assign it, but it's not clear to 
me based on what I've read that this happens with Java app servers.

Thanks for reading, and again, feel free to respond with a link or 
google keywords if I'm just missing something obvious. One of the 
biggest challenges I find myself facing with this move is that most of 
what I've found assumes a high ceremony->low ceremony migration path, or 
at least assumes that you've spent enough time in the Java ecosystem at 
some point to get it. :)


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to