Eclipse Europa Has Ruined My Day

Yesterday I woke up with a fresh mind to start my day by learning something useful. I had the aim to learn Spring Framework. So with this in mind I sat before my machine and decided to plan what to do for getting started in spring. I had downloaded Eclipse Europa a couple of days before so I thought the best way to get knowledge for Spring would be to get working quickly with an IDE.

I had NetBeans 5.5 with Sun Application Server prior to downloading Eclipse Europa. NetBeans was very amazing from the very beginning when I started with it. But since the enterprises here, use Eclipse as their de facto Java IDE my mind was made up, to work in their way i.e in Eclipse. Eclipse Europa which released a couple of days ago had the long forgotten feature of Web Application development called WTP built into the IDE along with 20 other sub projects. So this prompted me that, getting started with a new framework and a new IDE would be refreshing.

I had already configured Eclipse Europa to work with the Sun Application server earlier and I had the spring framework api’s with me so it was only a few moments from getting a head start. I created a dynamic web project in Europa making it compatible for running in Sun App Server and made a simple Controller and a view page in JSP, the minimal requirement from a Spring MVC tutorial. The configuration files were made and then I thought of running the project.

As I ran the project the error I got was,

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

I started to debug my application to see if any of my code or configuration had this Logger class included. But my code included only a single controller class and its mapping file in which no Logger was used. I thought maybe the Spring.jar wasn’t getting added in the classpath, even though I had added it as a external jar. I decided to manually add the file to WebContent/lib.

But still the error would not budge. I even added the jar file to build directory by making a lib folder in it. This also did not seem to make the error go away. It was insane. I had tried searching for the error on the web but the answer for that was the Logger was missing even though I had not added it anywhere in my code. The solution was to add the appropriate jar but I did not have those like Log4j.

Half of the day was gone in trying to solve an error which shouldn’t have come in the first place. Furious with the error I stopped with my spring campaign and thought of learning JAX-WS. I had the knowledge to use JAX-WS so wanted to give it a try in the new Eclipse IDE which everyone was making a hue and cry about. First of all there was no provision for making a web service project in the IDE. Netbeans 5.5 which I had earlier used way back last year to make web services already had the web service project in built.

I learn’t that for making a web service I had to download STP which meant SOA Tools Platform which had the capabilities to make a web service using JAX-WS in Eclipse. I downloaded STP and wasted about half an hour on it owing to my slow connection. After getting STP I read a tutorial on how to go about making a web service in it. A tutorial on the web stated that before making a web service with STP it should be configured with Apache Celtix Fire (CXF). What the f***?

I already have JDK 1.6 which comes shipped with JAX WS. So what was the need of having another one? Apart from this I also had installed JWSDP 2.0 web services developer pack from SUN. With some hope in mind I thought maybe it could be used instead of CXF. When I tried to configure it, Eclipse it gave out a lame error stating,

You must specify a valid installation location for your selected runtime provider in JAX WS References.

which in other words meant CXF installation.

Growing more and more frustrated at this utter nonsense I decided to download Apache CXF. It was even bigger than I had expected with a size of 21 MB. I kept it for downloading and took a break to start with a fresh mind later in the evening. I hoped to get at least something from that day, But more frustrations were in store for me.

Later in the evening when the download had completed I configured it in Eclipse and made way to the rest of the tutorial. The further steps were to make an interface and implementation and add annotations. I did that and was about to see how the WSDL and proxies would automatically get generated. The tutorial mentioned that when the interface with the annotations is saved the proxies and WSDL immediately get created without required the user to do do anything. But to my bewilderment I already saved the interface quite a lot of times but there was no sign of WSDL nor the proxies. This was even more frustrating than I had imagined.

Searching an answer to this irregular behavior of the IDE I came to know that I wasn’t the only one who faced this. There was another one which I read here. Unfortunately no solution was there. It was in the night that I was still trying to learn something and due to this nonsensical IDE I had gained nothing but frustration. I forgot to mention the regular hang ups which I suffered in between the activities. I was left clueless as to why Eclipse was chosen by enterprises and not NetBeans. One more thing which left me in disappointment was that Eclipse did not allow me to switch between the servers i.e Sun Application Server and Tomcat for running the same application! It said something like this,

Tomcat is not a Java EE 5 complaint server.

Thanks for the info but my project does not have EJB’s for God’s sake!

I gave up on using Eclipse and closed it. It was in the middle of the dark night that I opened NetBeans and heaved a sigh of relief. It looked more lovely than before thanks to the disgusting UI of Eclipse. I thought of making up for lost time by just implementing the things in spring which I wasn’t able to in Eclipse.

I made a new web application and added the spring.jar file, made a controller and view, added the mapping. And lo and behold as I ran the application with Tomcat as the server it flashed me the output in matter of seconds which I had wished way back in the morning. I switched the server to Sun App server and it ran smoothly as on Tomcat. This mere moments that I spent on NetBeans were the best ones in that entire unproductive day. These moments gave me the confidence to learn more the next day, the confidence which I thought I had lost. It was like a breath of fresh air.

I thank God for giving me NetBeans. I don’t know if anyone elsewhere thinks in the same way. But the fact is that it took me just one day to dump Eclipse, and go back to NetBeans. Long live the developers of NetBeans!

43 thoughts on “Eclipse Europa Has Ruined My Day

  1. Sounds like you ran into some dependency hell. If you had created a maven project (plugins for that) then than might have saved you a ton of trouble with getting the dependencies, such as commons-logging, straigt.

    And if you’re really into creating web services, then CXF is a great framework, however, the so-called SOA tools for eclipse are indeed worthless.

    I wouldn’t know about working with varying app servers though – I just run them like a command line tool.

  2. IntelliJ IDEA is a great tool for Java development. If they had made its source open at least for the plugin developers, it could really compete with Eclipse and NetBeans.

  3. Save yourself a lot of pain. Use Ruby on Rails, preferably on a Mac with Textmate. You will thank yourself.

  4. I definetly feel your pain.

    Eclipse is more like a framework, but not a tool for developers. Whenever I have to go to Eclipse I am confronted with bullshit problems like this. The first time I used Netbeans, I created a web project. I used Eclipse for a web project before and it was a huge hell to integrate app servers and databases and plugins and everything.

    With NetBeans it just asked me wich appserver to use, the connection string for the database + user/pw, and I was done. Done, for the rest of the project. All the different tools that required access to this information just used it instead of asking again. It was so easy to browse my tables and everything.

    IntelliJ IDEA is even better at this. But it is not cheap. Netbeans is like the IDEA Essentials for free, especially Netbeans 6 (not even beta though, but still good to use).

    If Netbeans 6 is final, you can have a tool as stable as Eclipse with a very good java editor. No reason to go back.

  5. If some think that what I did was a short sighted approach, this was not. One fact I forgot to mention was the first time as a beginner I tried using Eclipse (not Europa) I wasn’t feeling like working in it. That made me to adopt NetBeans. In fact I loved BEA Weblogic 8.1 Workshop IDE which was similar to NetBeans. I just wanted to see if Eclipse Europa could change my opinion about it. But it didnt. Honestly I feel an IDE should have the first impression in ease of use and in my case as a beginner I don’t feel so. NetBeans gave me the impression that a beginner would want for. Even Spring was the first time in NetBeans but it ran without any complains. So all these reasons I feel Eclipse lacks the ease of use perspective.

    And I feel when you think of RAD, you think of an easy IDE. I can use Ant, but it requires a lot of other work which would lose focus on the actual work being done. Hope you understand.

    However I havent looked at IntelliJ IDEA, since it is not much used here. One thing which I am still wondering is why NetBeans becoming popular like Eclipse. Can you provide some inputs?

  6. It is called “being in a comfort zone” ๐Ÿ™‚ I am an eclipse user and can do things with it ! I feel at bay when I try Netbeans.

    As it is said about editors, Vim or emacs, do not worry which is better, use which suits you . Both will do the trick .

  7. … to the contrary, I recently ‘re-discovered’ Eclipse and it turns out to be a far superior ide to NB. The only real advantage NB seem to have is its interface designer and relatively mild learning curve while learning how to create a web app. That’s all. Current release of Eclipse seems very responsive compared to previous releases and the range of technologies it supports is impressive. NB has no decent support for JavaScript, Groovy ( forget Grails). People rave about it’s support for Ruby. Are NB designers and engineers aware of the stuff that Ruby kids say about Java in general? NB almost officially disses anything Spring because of political reason, thus no support for Spring to speak of. Some of the reasons folks leave Java Ruby or such are the misplaced priorities of people in decision making positions. Thanks to that we all end up as losers to some degree.

    Have you tried using the SpringIDE? Be forewarned of an even steeper learning curve. The payoff however is sweet. …. and no, you can’t get that for NB.

    Eclipse is a complex and sophisticated piece of equipment and it’s learning curve is what it is. I feel you frustrations, but at the same time your post says more about you than about Eclipse. … and what is the value of another ‘Why I hate such and such technology’? DZone is absolutely littered with worthless crap like this that benefits none, except the poster and his/her AdSense account. Next time break the task into smaller pieces and digest them slowly. If it takes longer than 5 minutes, so what? It might be worth it. A lot of worthwhile learnings have some nasty spots to them, but absolutely worth it when you get to the other side of them.

  8. tb,

    I am almost in the same camp as you. To me, Eclipse is better than NetBeans, but, IDEA is better than both of Eclipse and NetBeans.

  9. Lo! Behold I found more people worked up by Eclipse. I was wondering if another friend of mine and me were those who use Eclipse for CVS push and updates (we have our own plugin for a lot of things I don’t do and really want to use)

    Webservices development is a lot easier with Netbeans than with Eclipse.

    The less said about Eclipse UI, the better.

    Viva La Netbeans

  10. Netbeans is doing very great when it comes to IDEs that stay out of your way during development and its a great thing, why should i start a project and spend 30% of my time figuring out how an IDE works with this and that and finding plugins for this app server and that framework. Many Eclipse users know nothing about Netbeans when they come and make thier shit comments about the IDE. I feel for many of them that are just stuck with the IDE because they are just caught up in the early buzz of eclipse. Nonsense!

  11. I have been using NetBean for more than 4 or 5 years. I used to use Forte CE. It sucked bad. Then I ignored it. Then I heard NB 3.5 is improved a lot. It did, but it still sucked bad. I ignored it. Then I heard that NB 5.5 is improved a lot. It did, but its editor was still sucking bad. NB 6.0 is still better, but its editor still sucks bad. Sorry NB fans. But NB sucks bad.

    Eclipse. Eclipse has always had a much better editor, compared to NB. But functionality-wise, it has always been behind NB.

    Dive into IDEA, and you’ll code with pleasure.

  12. To me, an IDE should fit the user and not the opposite. If some people think that you don’t fit eclipse, me I think that it is the problem of Eclipse, not you, classic average user.

  13. some eclipse guy will come and bash NB on the internet, editor this editor that. and then secretly download NB and quickly use it to do some web work that eclipse sucks at and then run back to eclipse and then come and bash NB editor. If Eclipse was all about editor, then why cant eclipse trim down the whole IDE to an editor like JEdit or Vim. NB6.0 is around the corner and whether eclipse users like it or not, NB is fully back on track in the IDE competition. and the day NB6 matches this so called editor editor in eclipse which am sure the gap is closing anyway, eclipse am sure will start loosing its share gradually to NB

  14. I notice no one on here has pointed out that a) Europa is a collection of 21 projects all maintained and developed by different teams, whereas NB and IDEA are single offerings developed by a single team, or that b) it’s the WebTools (WTP) Web Standard Tools (WST) project (part of Europa) that you might be having issues with, not the whole of Eclipse. Ranting about it won’t get things changed. You should open bug reports & feature enhancement requests if you want the project(s) to improve. Trust me, it works! If you care enough to complain, please have the chutzpah to contribute that angst to helping things improve instead of just pissing into the wind.

    For what it’s worth, Eclipse can be used for way more than just java web projects! You can use Eclipse for Java, Ant, C/C++, PHP, ruby, fortran, shell, python…. There’s projects/frameworks for doing collaboration, voice, modeling, data tooling, health care, testing, profiling, UI building, reporting… it’s not just an IDE, it’s an empire. ๐Ÿ˜‰

  15. […]For what itรขโ‚ฌโ„ขs worth, Eclipse can be used for way more than just java web projects! You can use Eclipse for Java, Ant, C/C++, PHP, ruby, fortran, shell, pythonรขโ‚ฌยฆ. Thereรขโ‚ฌโ„ขs projects/frameworks for doing collaboration, voice, modeling, data tooling, health care, testing, profiling, UI building, reporting[…]
    There is nothing you have mentioned above that NB in modern day cant deliver. its just time and obviously web projects take lion share of the present day software development. Eclipse did a good job though by waking up the NB team

  16. responses to the post along the lines of “you just have to learn it” are wrong, as is the attitude of the eclipse developement organization

    this post hightlights why microsoft wont’ got away (and btw, i hate microsoft)

    the eclipse development community and foundation need to read and heed posts like this

    how hard is it to ‘release’ something that just plain works out of the box?

    it doesnt have to do everything, a reasonable default behavior that isnt broken is all i ask

    to be fair, eclipse 3.0 worked ok for me, from the start, for simple java programming

    wtp 0.x releases were crap, but 1.0 actually worked with tomcat with no real problems

    the documentation is sparse, as often with open source; the open source community needs to understand that code is not the only important thing

    i really really want to believe
    i really really want to see open source become a viable alternative to the microsofts of the world

    but they need to clean up their act and just do a few simple things right

  17. NB is far more superior than Eclipse. I am a mobile application developer and uses NB. Eclipse also ruined my day when tried to use it to develop mobile apps. Hope Eclipse will improve

  18. Eclipse has about 4000 developers, netbeans has about 400 developers, or so reports the primary netbeans evangelist. That is probably why eclipse has more challenges working cohesively, and why netbeans has such a challenging time keeping pace with editors and such. I am extremely grateful that they both have such excellent competition, but it is going to be very hard for anything to beat eclipse over a long period of time. I am also very thankful that I don’t have to learn eclipse right now, because that can be a very challenging affair. It is also surprising that no-one mentions eclipse’s design, which makes extending it to other apps very fun for guys like me. Very sweet design configuration.

  19. Hi,

    Concerning this part:

    java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

    I think you should have just added the commons logging jar on your classpath.

    As for using eclipse for J2EE applications – use myeclipse instead. It’s got all the bells and wistles you need. It is based on eclipse.

    As for clean/vanila eclipse. I don’t like the way things are going. The new versions of eclipse become more and more resource hungry and the new packaging/downloading ways confuse me.

    As for WTP – It sucks big time!!!! Don’t ever use it.

    Nomuna

  20. Well, as for the specific of the error, you indeed needed BOTH commons-logging AND log4j (both in your build path AND on the web references).
    How do I know?

    Well, amazingly enough, I did go exactly through the same pain as you ๐Ÿ˜‰ and my experience/thinking is exactly the same: hell, I could have written that blog myself, had I been less lazy ๐Ÿ˜€

    I have been using Netbeans since 4.1 and Eclipse since 2.2 (I think, or 2.1) – they both have their pros and cons: I love NB 5.5, but I tried 6.0, was so buggy and kept crashing on me so often I had to ditch it and run for cover re-installing 5.5
    Maybe now they’ve fixed it, but what really was appalling that certain things that worked a beauty in 5.5 (code completion and syntax coloring, for example) were broken in 6.0: now, what the heck, whatever did happen to the “if it ain’t broken….” ???

    Eclipse is a great tool and IDE – no two ways about it.
    And a massive pain to master and use ๐Ÿ™‚

    there are things that simply infuriate me: I have installed on my (Linux) machine both Tomcat 5.5 and 6.0 – Eclipse 3/3 can happily start 5.5 but not 6.0; the error message? something to do with the ports (complete nonsense, as i can happily start 6.0 on 8080 and all the rest without a hitch from the command line – and, no, no instance was running at the same time)

    Then the updates – oh, how I wish the Eclipse community did care a bit for the lesser mortals who are not code-committers and let us have a half-decent way of updating it!!! (and, yes, I’ve filed my fair share of bug reports and feature requests – I’m still waiting ๐Ÿ˜€ )

    When it comes to mobile development (J2ME) NB rules the day, although to be fair, when I was developing my application, I used NB for the mobile part, and Eclipse for the server-side components.

    I also like the way you can use ant builds from within Eclipse: almost everyone will tell you that IDEs are all good and well, but enterprise class apps MUST be built using the likes of ant/maven, from the command line – so one might as well use ant from the start and rely on it for the build/package/deploy cycle.

    Personally, I find all this “my IDE is better than yours” a bit juvenile: one should use whatever tool maximises one’s productivity – hell, I know folks that do development from the command line, using vi – I would never hire such a guy (his/her productivity must be around 30% of us using IDEs and tools ๐Ÿ™‚ ) but, hey, if it makes him happy, so be it!

    My tuppence worth,
    Marco

  21. using eclipse europa has been a very refreshing experience. i have successfully developed JSF web applications using the WTP project in eclipse, i have sucessfully created web applications with the model layer using EJB 3.0 and JPA using the Dali project for eclipse. Also, i did experience the thing regarding the missing wsdl file, but it wasn’t because of europa’s quirks, it was more an error on my side because i forgot that for me to be able to generate the wsdl file, i had manually build it first so that the wsdl file gets generated =)

  22. I went through the tutorial, built the project and the wsdl directory was created but no wsdl file. Anyone succeed in creating a wsdl file?

  23. @Dev – Unfortunately I was not able to make out what the problem was because I had switched back to NetBeans and then was busy with my work.

  24. I downloaded android sdk. I don’t have any choice but to use eclipse ๐Ÿ™
    Eclipse is not even intuitive and lack simplicity or maybe it lacks features! For instance, I downloaded a sample project from anddev.org and put the project folder to my workspace folder! How the hell am I going to open the project. The project did not showed up to the project explorer! I can not find any functionality from anywhere of Eclipse’s stupid menu that will let me open existing project, such as project downloaded via www. Now I am completely pissed off! And once again Eclipse ruined my day.

  25. Eclipse won’t automatically load projects in the workspace folder, in order to give you control over what should be displayed or worked with. So, to import a project into the workspace, right-click the workspace (eg, in the Pakcage Explorer view) and select Import > General > Existing Projects Into Workspace, then browse for your workspace folder, select the project, and voom. You can also access Import from the File menu. By the way, if you’re new to Eclipse, you can drop by #eclipse on freenode (http://wiki.eclipse.org/IRC) or visit the newcomer newsgroup (http://www.eclipse.org/newsgroups/). There’s lots of support available out there, if you look for it and ask for help, rather than FUDing on random blogs.

  26. hey
    concerning the log error:
    i’ve had these problems with eclipse (the jar is on the class path but eclipse doesn’t pick it up)
    you basically have to regenerate the project or sometimes closing eclipse & opening it will work. For me i use maven2 so i just use the mavenEclipse plugin to regenerate the project & reopen it in eclipse

    as for the arguement; i’ve used eclipse my whole career (3 years) but i’ve got NB installed which i use for all gui development & were ever eclipse fails.

    i mean thats the smartest; each ide has its on strengths; & each ide is just a tool; so learn both tools & use as needed,

    but i’m def impressed with wat ppl say about IDEA so i’m goin to try that

  27. Eclipse is way better than NB.

    If you had read getting started tutorial for 5 minutes, you would not have the problem you were having.

    Even novice programmer can follow that guide.

  28. The problem starts with switching from one IDE to other, from one which we like most to other which is much popular.
    as
    “Change is law of nature.”

    Now when we use new environment we are not able to work on it
    as
    “Human psychology is to resist changes.”

    Now just above two quotations gives answer of the conflict.

    As far as i concern Both are good and easy to use IDE for java development, If you want to learn.
    The best way to learn about an IDE is to use it’s User Manual or Help.
    If you r trying to get help from internet to solve your problem then u r already stepped into ruining ur day.

    I have first tried NB when I downloaded Java EE and it was working fine but was making some problems to me. I didn’t do work on that more as no project related to java.
    Then I got a Web project and i didn’t used an IDE because I needed to make my project in a very short time so I started on Windows with a notepad, simple tomcat and a DB server tried to connect them and done. Output with a 10 mb project (No IDE used). I got certified by IBM on that project.

    But then after a long time I tried to use some IDE for development and I switched to Eclipse (heard more about it then NB) so downloaded it just double clicked on the icon on windows and started reading its help. I was easily end up with a small and simple web application. So, now I don’t want to (or i will not try to) switch the IDE until I am disatisfied with eclipse

  29. i am now an eclipse user… i left mobile application development for web application development… i am developing application built from apache wicket framework… i am now seeing why eclipse is better than netbeans… performance… i’ll admit it, eclipse is not a good choice when developing j2me application but for web app and other java app, it really is better than netbeans. btw, i am not using any wicket plugin, just plain java project with an ant build.xml file. i also updated my ide to ganymede. keep it up eclipse team… i hope eclipse continues running faster than netbeans… netbeans is really heavy

  30. “I thank God for giving me NetBeans. I donโ€™t know if anyone elsewhere thinks in the same way. But the fact is that it took me just one day to dump Eclipse, and go back to NetBeans. Long live the developers of NetBeans!”

    — ditto my words, I too don’t understand why all MNC uses Eclipse when such great product, easy to use and learn NB available, that’s also for free !!!

    And if I’m remembering well, I too faced the same problem, I think you have to add “J2EE Module Dependency” which reside in project Properties. ๐Ÿ™‚

  31. I’m purchasing IntelliJ and I think it’s well worth the price. I don’t know who it was who ever said open source produces better quality code, that’s a naive assumption.

    No, I hope IntelliJ doesn’t make plug-in development open-source. It’s the 3rd-party plugins in Eclipse that makes Eclipse so ridiculously unstable and buggy. It’s like cramming a multicultural group of folks into a small room and then after several days they’re at each others’ throats.

    Open source doesn’t produce quality code, quality developers produce quality code.

  32. after a couple years with eclipse, although it mostly worked, i got tired of the endless ‘upgrade’ treadmill and increasing bloat and gratuitous change (you’d think eclipse was made in redmond!)

    i swtiched to netbeans last year and found it refreshing

    smaller footprint, works out of the box, easy to build and debug projects

    i could care less about ruby — anyone who drinks that koolaide deserves whatever they get

    also i dont care if netbeans is owned by oracle, and even if they break it, i’ll just keep using the version that now works

    the only real value of an IDE is debugging, all else is fluff or gravy depending on your mood

    and i dont trust anything that cant be built except in an ide or by maven, etc

    dont get wrong, maven is fine, but if you can’t build from the command line, by hand, then you’re not in control of your project

    and that’s a bad thing

  33. Everything said was actually very logical. But, consider this,
    suppose you wrote a catchier title? I am not suggesting your information isn’t good., but
    suppose you added a title that grabbed people’s attention? I mean Eclipse Europa Has Ruined My Day | Techtracer is kinda boring.

    You should look at Yahoo’s front page and note how they create article titles to get viewers
    to open the links. You might add a related video or a related picture or two to
    get readers excited about what you’ve written. In my opinion, it would make your website a little bit
    more interesting.

Leave a Reply

Your email address will not be published. Required fields are marked *