Home › Java
Am I the only one that despises the new request mapping in Spring 3?
Why has everyone gone GaGa over spreading out the URL mappings across dozens, if not hundreds, of files? This is a step BACKWARD people!
There was something extremely convenient about having one place to keep track of all of your URL mappings. Hello Grails, you fantastic crispy UrlMapping.groovy, you!
My love affair with Spring is certainly in the twilight stages.
You know, Spring Web Flow could be the most aggravating library I have ever worked with. Well, it is at least in the top 5.
Riddle me this:
How do you retrieve the current request URI from within a currently running flow? And how do you use that in your flow xml?
You see, Web Flow (rightly) swallows up the normal J2EE API that are available to you: request, response, etc.
So why in the world would you want to retrieve the request URI?? Well, flows can contain sub flows. And flows can be reused in different locations within your app. So what if you need to display some text or UI or links based on what part of your application the flow is running in? Well you can’t given the Web Flow API.
I’m in the process of rolling out a new feature for Raveal. Sometime during development of it, I noticed that suddenly a large portion of the portfolio slowed way down. In fact, pulling up the edit screen took about 3 seconds on my dev computer! That’s not quite right.
This new feature adds projects to the portfolio. In the context of Raveal, a project is a free form “document” that allows you to create just about anything to describe work you have done. It could be straight up text. Or it could be text with diagrams and illustrations. Or it could be images and video with short paragraphs explaining each. It truly is so powerful, I worry that people will have a hard time figuring out what they want to use it for!
I’ve been using Spring now for quite some time. Since the 1.0 days. With the rise of REST, one of the things that bugs me with Spring MVC is how to map REST standard URLS.
Thanks to Carbon Five, we can:
Mapping your URLS to controllers is straighforward and powerful. URLs look like:
/view/noparameters /view/(bar:foo) /view/(*.html:html) /view/(**/*:view).view /view/c/(*:controller)/(*:id)
What ever is after the : is the name of the variable that gets stored in your http parameter map. Your controller doesn’t have to know anything about the URL coming in. Much better, huh?
I’ve been using this in both of my commercial products for quite some time. Until Spring 3 makes its way to a stable state, I’ll continue to use it. Very handy.
Driving me nuts.
If you are a developer on OS X and you are customer of JetBrains using IDEA the Java IDE, it is a cloudy year for you!
There are two critical bugs that haven’t been fixed in over 6 months since being reported to JetBrains. IDEA enabled my fulltime switch to OS X and now it is unusable after 4 – 5 open files or half a work day. Whichever comes first.
Check it out:
Hidden editor tabs:
CPU spike after every compilation:
Unfortunately, there is no viable workaround.
Come on JetBrains! Fix it!
John Gruber of Daring Fireball fame, who I have mucho respect for, linked to an article about how the Java support in the lastest version of Mac OS X is terrible. He then makes a very irresponsible statement:
“I fail to see why anyone (other than Java developers themselves) would care.”
The problem with this statement is that you should care. Why? Well, because you are a Mac user. It will take a bit to explain. Humor me.
There are many upon many businesses out there that support the Mac platform ONLY because their Java applications will run on a Mac. But this isn’t the complete reason. Hear me out.
Now, these businesses aren’t Google, Microsoft, or IBM. You probably haven’t heard the names of these businesses, let alone the names of the software they provide. They certainly aren’t household names, and your mom and dad aren’t using their applications. But they do represent a significant base of development energy. These are the guys that make it possible for the little guys and the medium guys to do business.
I was just trying out the latest state of UML tools for Eclipse and gave a look at the apparent industry heavyweight, Omondo. Since the beginning, they always seemed like they would end up on top. So I went and downloaded version 3.2.0.
My initial impression was that this was a quality product and one that I would actually consider buying at work. For home use, I would just stick with the free version. But then I ran into some trouble.
On Omondo’s feature list comparing the free to paid for version, it shows Team solution and that the free edition doesn’t have that. Okay, no problem. I’m not that lazy that I need to have eclipse check out my diagram files for me. I can take the extra step and check them out within Perforce.
But no. They aren’t saying there is no team integration for diagram files. They are saying you can’t use the Team Feature of Eclipse AT ALL! This is even the case in projects that do not use Omondo’s UML diagram tool!