
-----------------------------------
rizzix
Sun Apr 03, 2005 8:25 pm

Java Website Development Frameworks!
-----------------------------------
Very much influenced by the Ruby on Rails project, is the Java [url=https://trails.dev.java.net/]Trails!

Works well with J2EE ;). It's rather in its early stages, but you can check it out in action, in the following video:

https://trails.dev.java.net/files/documents/2296/13104/trails_withnarration.mov (narrated)
https://trails.dev.java.net/files/documents/2296/13107/trails_nonarration.mov (not narrated)

-- 
Great news for the java developer. specially me. since recently i've been doing a bit of study in the J2EE side of java, specially web-service and web appliaction development.

You might have noticed its not "soo simple" as Ruby on Rails (but it isin't all that hard either, actually very close in simplicity). The idea of Java was never simplicity, it was effeciency, extensibility and largly maintainance. This project is totally awesome!

-----------------------------------
wtd
Sun Apr 03, 2005 8:42 pm


-----------------------------------
The only problem is that with so much invested in existing J2EE stuff, I doubt Trails will catch on, which could very well mean a lack of developer actvity keeping it up to date.  On the other hand, Rails is hugely popular in the Ruby world.

If it catches on, hopefully it'll get Java programmers to look at Ruby.  :)

-----------------------------------
rizzix
Sun Apr 03, 2005 8:44 pm


-----------------------------------
Oh its going to catch on allright... Its quite talked about in the java.net community.

The problem with Ruby on Rails is that its not extensible. The framework seems too rigid.

-----------------------------------
wtd
Sun Apr 03, 2005 8:53 pm


-----------------------------------
Oh its going to catch on allright... Its quite talked about in the java.net community.

The problem with Ruby on Rails is that its not extensible. The framework seems too rigid.

Ummm... you're kidding, right?

-----------------------------------
rizzix
Tue May 31, 2005 3:15 pm


-----------------------------------
oh look another one: http://ravenous.solidosystems.com/

The difference between this one and Java on Trails.. is that this one emphasizes on simplicity.

-----------------------------------
wtd
Tue May 31, 2005 4:33 pm


-----------------------------------
Simplicity?  The database interaction code is far more ponderous than anything I've seen with Rails.

-----------------------------------
rizzix
Tue May 31, 2005 7:19 pm


-----------------------------------
ignore those SQL snippets on the website... they do not take advantage of java's SQL placeholder stratergy... instead he creates the SQL statement using string concatenation... which is very very ugly.

-----------------------------------
rizzix
Sat Aug 13, 2005 10:12 am


-----------------------------------
Some new ones i've discovered.. These are a little different. They are not exactly like trails or ravenous, although they share some similarities. They are more of a "Page Oriented Framework".. 

[url=http://wicket.sourceforge.net/]Wicket is basically a page oriented, MVC, web development framework. It's pretty simple, hence I'm  posting here..  :wink: 

An even simpler one is [url=http://click.sf.net]Click!. This is the in I'm currently using. IMO it's the easiest of the lot! Got to love it!  :D


Note: Wicket is like a derivation of Apache Tapestry, but it uses a much simplified notation.

-----------------------------------
rizzix
Thu Sep 08, 2005 8:31 am


-----------------------------------
Oh look another one: [url=http://stripes.mc4j.org/confluence/display/stripes/Home]Stripes.. it's an improvement over Apache Struts (similar to Spring) but simplifies everything... I like the way the J2EE world is now focusing on simplicity..

-----------------------------------
wtd
Thu Sep 08, 2005 11:08 am


-----------------------------------
I still see lots of Java cruft, like using annotations to denote information that can be garnered from the name of the method.  :)

@DefaultHandler
@HandlesEvent("SaveOrUpdate")
public Resolution saveOrUpdate() {

What if I change the name of the "SaveOrUpdate" event?  Then I have to change it in two places.  Human beings, even myself, are not above making mistakes.  The more code write, the more prone we are to screwing things up.  ;)

Also, I see that the language used to create the template is entirely different from the language used to implement the logic.  I never much liked template languages that try to look like HTML, when they certainly aren't.

-----------------------------------
rizzix
Thu Sep 08, 2005 1:15 pm


-----------------------------------
those annotations totally make sense.. if ur rather have the method name denote the name of the handler.. then use Click!... Click also does not have any HTML like language for rendering the View.. 

eitherway JSP (the template language ur refering to..) does not aim to look specifically like HTML.. but just another markup language... so that your WYSIWYG editors can handle/ignore the syntax when designers create the view

-----------------------------------
wtd
Thu Sep 08, 2005 2:06 pm


-----------------------------------
Click! still looks like it's introducing yet another language and runtime environment to the mix.

addModel("time", new Date());

Plus, you have to have an XML configuration file to actually tell it things it should be able to figure out on its own.

-----------------------------------
rizzix
Thu Sep 08, 2005 2:28 pm


-----------------------------------
not really... the xml config file can be setup to automatically config things out..'

and i totally don't see how it's introducing a new language... sheesh.

-----------------------------------
wtd
Thu Sep 08, 2005 2:35 pm


-----------------------------------
Well, you're not accessing a variable created normally within the controller.  You're accessing a key in some kind of dictionary object that automagically is exposed to the template engine.

That's what I mean by creating a new language and runtime.

-----------------------------------
rizzix
Thu Sep 08, 2005 2:44 pm


-----------------------------------
...or more like ur accessing the model "time" from the view... passed by the controller...

soo naming ur models is introducing somthing new... great perspective!  :wink:

-----------------------------------
wtd
Thu Sep 08, 2005 3:12 pm


-----------------------------------
As opposed to the Rails-ish:

Model:

def something
   @foo = 42
end

View:



Where it's all just Ruby.

-----------------------------------
rizzix
Thu Sep 08, 2005 3:15 pm


-----------------------------------
totally.. i see no point in the view needing to know how the controller names its variables...

eitherway.. you seem to be too fixed on ruby-on-rails architecture... then ravenous is the one for you..  *sigh*..

here's some live action tutorials: http://ravenous.solidosystems.com/index.rvp?m=tutr

NOTE: JSP is also all just java... but jsp is more.. it supports tags and taglibraries.. all which can be programed in java classes and mapped to a perticular tag syntax etc... JSP is pretty powerful alone by it self.

-----------------------------------
wtd
Thu Sep 08, 2005 3:41 pm


-----------------------------------
It's not a Rails fixation.  It's a belief in the same principle that drives Rails, though.  "Don't Repeat Yourself". 

That's probably why I like type-inferenced languages too.  :)

-----------------------------------
rizzix
Sat Jan 28, 2006 1:43 pm


-----------------------------------
http://java-source.net/open-source/web-frameworks :P

-----------------------------------
rizzix
Sat Jan 28, 2006 2:23 pm


-----------------------------------
vRaptor and WebWork are pretty cool. (non page oriented frameworks).
