6 ms·
Java lightweight framework - jodd
- swGooF 14y agoHow does this differ from Play?
- drivingmenuts 14y agoI was looking for actual information. Nice page and all, but it would be nice to see what Jodd brings to the table up front, rather than being distracted by lots of CSS/JS fx. Take a look at the Play framework page. Starts with an elevator pitch and as you work your way down the page, you get more more details (without going into a lot of detail), enough to get a nice overview. There's a time and place for heavy css/js effects, but I'm thinking this is not one of them.
- eropple 14y agoThat's a very good question (and one I'm personally interested in because I'm pretty frustrated with Play and the Play developers right now). Jodd looks like a very 'old-school' Java framework. This is not a compliment--it looks like a few tools that sit on top of Servlets, and that's just terrible. Wire-up appears to be XML (bad developer, no cookie) and it just doesn't look better than any other Servlet-based library. (Personally, I am convinced that there are no good Servlet-based libraries, and this doesn't help change that.) The various libraries they keep touting on their various pages are a little scary. I'm pretty well-versed in the Java ecosystem, but I don't know what "Petite", their dependency injection library, is. I know what Guice is, and I know what Spring (barf) is, but this thing is new, and by default shifty and untrustworthy. "Props" - looks terrible compared to HOCON; gross syntax, no importing, etc. Their database library touts itself as "better than JDBC", but looks almost identical and makes that little voice inside whisper, "it's a trick - get an axe." I'm not trying to harsh on them, because they clearly spent a lot of time on this framework, but this is enterprisey as hell.
- cwinters 14y agoPlus: reinventing date/time without using (or even referencing) Joda? Ouch.
- dfragnito 14y agoCare to share your frustrations with play? We are considering it for an upcoming project.
- eropple 14y ago-Play 2 was released too early and Play 1 isn't getting any love anymore, so it's currently in an awkward spot. There's stuff you can do in Play 1 that can't be done in Play 2 yet; they're working on it, but it's not yet there. -Play 2 is uncomfortable and vaguely user-hostile if you want to use Java. More than most Java apps, that is. It's fairly obvious that the Play team considers Scala to be The Way To Do It, so you'd better be on-board or you're probably going to hate using it. (I'm OK with Scala, though as I've said before I find it troublesome[1]. I hear eventually Kotlin is supposed to be supported though.) -Play is all SBT. You may find that you love SBT, in which case this won't be a problem for you, but it has been a while since a build tool made me yearn for the days of ye olde makefile. There's a lot of "magic" involved and there's little coherent documentation for either SBT or Play's use of it. -Play's DEV mode pins a core on my laptop and turns it into a campfire on my lap. A ticket asking what's up with this has gone unanswered. -Play 2 is designed for single projects and trying to build sane multi-project systems (like, a frontend app, a common code library, and a backend app) can be an exercise in frustration. This has gotten less bad over time, but it's still not great. I literally don't remember the last time I wrote a web app that wasn't at least three separate pieces, so for me this is very nearly a game-breaker. -The developers are apparently pretty insular. It seems like they are more than happy to have you fix their bugs, but adding features that you need--not so much. Sample size of one, so apply all necessary caveats, but I've found that offers of help and requests for guidance for making what you want to do fit into their plans for Play seem to get ignored[2]. I want to help make it better, so let's talk and see how to do that, yeah? (Lack of good communication isn't just a Play thing, but seems common throughout the Typesafe stack of libraries.) -The community isn't really a community at all. If you look at their Google Group, it's mostly the same five questions over and over again and nobody seems to really stick around. I look at something like Rails--which I can't stand working with, but they have the "active, good community" part absolutely nailed--and you see a lot of newbie questions, but you also see a lot more people sticking to the community and, IMO, that bodes a lot better for the platform. . Honestly, Play isn't that bad, if your needs line up closely to the Play developers'. Mine don't, so for me it's a very frustrating experience. If you're just rapidly iterating on something small I have to think it'd be great - hot reloading works great (although compiling templates seems like it'd turn off designers) and I would believe that, once over the initial hurdles, you can probably Get Stuff Done very effectively. But every time I work in Play I start getting a little bit crabby and want to go write a better web framework (with blackjack! and hookers! in fact, forget the blackjack!) but I know I don't really have the time to do it justice. As such, my projects mostly end up being a set of libraries bolted together on top of Jetty (a handler, a regex dispatcher, etc.). Maybe at some point I'll codify them into an actual for-realsies "library". It'd be a good reason to learn how to do Java class reloading... [1] - http://news.ycombinator.com/item?id=4051556 http://news.ycombinator.com/item?id=4051556 [2] - https://play.lighthouseapp.com/projects/82401/tickets/502-more-flexible-configuration-for-multi-project-setups https://play.lighthouseapp.com/projects/82401/tickets/502-mo...
- hmottestad 14y agoHere is the real page: http://jodd.org/ http://jodd.org/
- sciurus 14y agoHaving the landing page be on a completely different domain seems like a bad idea for search engine ranking.
- nlz1 14y agoExcellent use of icon art on http://jodd.org/ http://jodd.org/ Why do we need another Java framework?
- jurre 14y agoNote to people that design pages like these: If you're putting a blinking cursor on your page, I'm trying to type things. The first key I will press is the backspace key, if this takes me to the previous page, I now left your webpage and it's unlikely that I'll return. Might be just me though :)
- chucknelson 14y agoWow, this link should just go to jodd.org. Scrolling through the "experience" just made me hit the buzzword wall.
- adrianmsmith 14y agoNot sure about the rest of it but this is something I hadn't heard of before: "JQuery in Java" (Jerry), looks nice. http://jodd.org/doc/jerry/index.html http://jodd.org/doc/jerry/index.html Interesting use of $ as a method name in Java as well.
- prophetjohn 14y agoLooks pretty similar to GQuery/gwtQuery http://code.google.com/p/gwtquery/ http://code.google.com/p/gwtquery/
- ShabbyDoo 14y ago"Only 1.1M" Why do I care? Is this framework designed for embedded systems or mobile apps? Smaller is better, but one MB vs 10 MB makes no difference for me as a guy writing server-side Java.
- j_baker 14y agoI suppose it makes a difference when it comes to getting your local dev environment set up. Plus, you might be able to get away with doing continuous integration that downloads all its dependencies every time it runs.
- eropple 14y ago> I suppose it makes a difference when it comes to getting your local dev environment set up. It shouldn't, if the artifacts are in your company repo. (You have a company repo, right?)
- ShabbyDoo 14y agoI'll trade a 1% reduction in implementation time for 10x the jar file sizes. I'll take "lighter" in terms of API surface area, memory/CPU usage, etc. though.
- bad_user 14y agoAwful page for mobile phones. Note to ambitious designers: sometimes plain text is much better.
- bitwize 14y agoI was trying to figure out Java EE, and wrote some notes on how the various pieces fit together. My final note was "You don't need this crap". Oracle didn't take over Sun in 2009; the takeover started when Java EE started taking hold. It's given the cool little language Java a bad rap and I'm glad to see some efforts to bring Java back to its roots as a lightweight and easy language in the Web development sphere.
- eropple 14y agoThis "framework" is nothing but Java EE. It doesn't really do much to change anything you've said.
- UK-AL 14y agoJava EE is not that bad. The problem is that it is for enterprise and you have tons of frameworks for interfacing with legacy mainframes and such. Go for for EE web profile, which the lean version for pure web stuff. All you really need is JPA, some ejbs and a front end(mvc framework or something) and that's it. Add in jax-rs, add some annotions to your ejb and you will have a rest api for you application for free basically.
- eropple 14y agoIMO, JPA (and ORMs in general) is one of the bigger crimes-in-progress in Java. One of the things about Play I do like is that the Scala API eschews JPA. EJB, however, manages to be even a bigger crime-in-progress than JPA. Which is a feat. Making immutable bean classes, and then providing a pleasing API for using them, is an exercise in futility. (And this may sound dogmatic, but I don't really care: immutable-by-default is the only acceptable practice. Embracing EJBs means you probably don't care about that, and that I want nothing to do with your code.)
- jabits 14y agoYou're right. It is dogmatic. Anybody who says, "...only acceptable practice.", hasn't been around enough.
- j_baker 14y agoIf scrolling down gives me jodd experience, am I to assume that jodd is made for UX folks who care only about form and not function? That's what this webpage seems to be telling me. (Although to be fair, it is pretty and neat.)
- jshen 14y agoWhenever I read about java things I get really confused. WTF is a super property, a BeanUtil, and a timeless JDateTime??? People like to hate on DHH and rails, but remember the "make a blog in 15 minutes" video. That's a compelling story for a web developer. Compare that to this.
- bwei 14y agoI use them. They are good.
- lina173 14y agoi've actually (probably the only one here who) used them; i think they are not trying to 'invent' something new, like Play (not saying that is a good/bad thing), but to make development easier with plain java and standards (jsp, jdbc... - that is a good:). small size is important not only for performances, but also you can easily tweak the code if something goes wrong. and there is no xml config, but annotations and class path search (nice!). i liked the balance. I didn't like, at that time, that i still had to code to integrate things together; but i see that's changed now (hopefully).