Skip to main content
Topic: I </3 reflection (Read 6198 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

I </3 reflection

I am looking at the worst written Java web app ever.... At work we have this application that is a decade old that of course no one wants to touch. It needed some changes so lucky me I get to the be the one to make them. After looking at it today I noticed it does some wonderful things. All exceptions have been caught in a custom Exception class, where any exception gets bubbled out to the page too. So when users get an error, they get to see the name of database fields and table names. All inputs are tied directly to a table row with their name in the value... Using reflection to create every single page based on an input value makes everything so awesome to follow.  Then to top it off, there are tables after tables in the jsp's.  I've removed 12 tables from one jsp today...
</rant></sarcasm>

How are you guys? :D

Success is not the result of spontaneous combustion, you must set yourself on fire!

Re: I </3 reflection

Reply #1

That sounds worse than the last time I had to play with Java web apps. In the end I threw the compiled applet at a decompiler and fortunately came up with something useful - my job was to take the webapp and replace it with an AJAX frontend, seeing how there was theoretically this XML interface it should have been simple, but some of the mechanisms this used, I couldn't figure out how it arrived at the numbers it did without pulling the Java itself apart. You have my sympathy :)

Re: I </3 reflection

Reply #2

Well I heard a lot of people talk about how much they hate java. I went to a tech school to learn some C# a few years ago. Regretted that pretty quickly since they gear their curriculum towards the microsoft tests instead of actually teaching you the language. Ended up get a systems admin job, and then transferred to the development department where we are pretty much exclusively Java. Java really is not that bad. Especially with the frameworks they have these days that do everything for you. We are mostly using Spring and JSF throughout the different apps. Those are pretty easy to pick up so far. But I'm still new to most of it. :)

Sounds like you had a lovely experience too though. lol  Our apps are so out of date, we only have a handful of apps that have even begun to take advantage of all the stuff one an do today. Even with Ajax, most of our apps don't even know what that is. :)
Success is not the result of spontaneous combustion, you must set yourself on fire!

Re: I </3 reflection

Reply #3

Java isn't inherently a bad language. It's the ways in which it is used which are bad, with ever more ridiculous naming conventions and class abstractions. TheDailyWTF has some great examples of when Java is badly implemented.

Though the sandbox implementation of Java combined with its much-hyped write-once-run-anywhere that never lived up to a fraction of the hype are big reasons too. The only reason I got involved in this particular project was because it would only run on Java 1.4 runtimes, and would get very upset (for no reason I could fathom) on later ones.

I ended up replacing the entire applet with a JS one, but the kicker was that the protocol was so badly defined and so much rested on the application session persisting in that protocol between client and server >_< I spent weeks figuring out all that nonsense. My grand plan ultimately was to rewrite the entire system from the ground up (on the backend was some hokey combination of Java->C#->MS SQL Server) and iron out the bugs, some of which were left in from years before, but it never happened in the end.

Re: I </3 reflection

Reply #4

Is the topic subject "I broken heart reflection"? lol
I would hate reflection too if I had one likes yours :P

Sounds like a similar problem I had at my last job. There was a class that parsed the output buffer and added in a table. That table was generated from a callback. That callback was built without its own error handling. It made error_reporting(0) in several places. The callback was a monolithic function. What happens when there is an error? Guess where it is coming from.