Monday, September 26, 2005
J2EE newbie!!
Lately, I am doing a lot of Java / J2EE stuff, since Sudha is in to those technologies. Though I am one of those persons who would prefer to sweat it out with C / Assemly rather than making use of all the making-life-easier goodies offered by Java and related frameworks, I have to admit that my respect for J2EE framework is growing as I learn more about it. It is actually a breeze churning out a quality web application using Struts -- I was able to do that in 45mins, from scratch to deployment! Thats a pretty impressive figure for me...I don't know if web applications of enterprise quality can be done using Microsoft technologies the same way Java technologies allow you to do, I am not an expert in it. But, if any of you have personal experience in these, I'd love to hear your views.
Yesterday, we decided to create our own custom tag library. Sudha wrote a prime number generator tag, a simple TLD and the corresponding taglib entries in web.xml. When deployed, it threw an exception "tag-class not found". What the heck? Then we noticed our DTD was specifying a wrong version. After a quick fix, we deployed it again. Now, it threw an exception that said "PrimeTags definition not found". It seemed that the server (weblogic) couldn't find PrimeTags.class, our Tag handler class. We had it under /WEB-INF/classes. What could be wrong? We wrapped that tag handler in a package and redeployed the same. Now we got another error - "Bad class file. Current version is 49.0, expected is 48.0", a quick search in Google told us that we are trying to mix java1.5 & java1.4 compiled binaries. Resetting the java_home / path variables to point to jdk1.4 solved the problem!!
Now the question is, why couldn't the server pick up our class file when not packaged??
Yesterday, we decided to create our own custom tag library. Sudha wrote a prime number generator tag, a simple TLD and the corresponding taglib entries in web.xml. When deployed, it threw an exception "tag-class not found". What the heck? Then we noticed our DTD was specifying a wrong version. After a quick fix, we deployed it again. Now, it threw an exception that said "PrimeTags definition not found". It seemed that the server (weblogic) couldn't find PrimeTags.class, our Tag handler class. We had it under /WEB-INF/classes. What could be wrong? We wrapped that tag handler in a package and redeployed the same. Now we got another error - "Bad class file. Current version is 49.0, expected is 48.0", a quick search in Google told us that we are trying to mix java1.5 & java1.4 compiled binaries. Resetting the java_home / path variables to point to jdk1.4 solved the problem!!
Now the question is, why couldn't the server pick up our class file when not packaged??
Comments:
<< Home
Kanna
IMO and experience, Enterprise development in .NET is much faster than J2EE. There is one area where J2EE lacks in enterprise development, The availability of end to end development environment. Eventhough, This are available from multiple vendors such as IBM, Rational and most of them are claimed to integrate well with little difficulties I always faced difficulties in intergrating them. One such scenario is when I tried to integrate Websphere 4.0 (along with Websphere commerce server) and JMS server from a different vendor. I have not developed anything lately, so these integration problems would have been vastly solved by now.
I recently initiated an inhouse intranet project (it is a full fledged enterprise application, but wanted it to be intranet as I intend to use this purely for my project management purposes). I preferred the .NET way as I wanted to roll this out ASAP. Microsoft publishes something called application blocks which are reusable code that can be deployed in your application. The TLDs that you are talking about are similar stuff. If you are planning to host your application on windows environment, .NET would be the cost effective solution. If you are considering an Unix/Linux deployment forget the M word.
kaycee
Post a Comment
IMO and experience, Enterprise development in .NET is much faster than J2EE. There is one area where J2EE lacks in enterprise development, The availability of end to end development environment. Eventhough, This are available from multiple vendors such as IBM, Rational and most of them are claimed to integrate well with little difficulties I always faced difficulties in intergrating them. One such scenario is when I tried to integrate Websphere 4.0 (along with Websphere commerce server) and JMS server from a different vendor. I have not developed anything lately, so these integration problems would have been vastly solved by now.
I recently initiated an inhouse intranet project (it is a full fledged enterprise application, but wanted it to be intranet as I intend to use this purely for my project management purposes). I preferred the .NET way as I wanted to roll this out ASAP. Microsoft publishes something called application blocks which are reusable code that can be deployed in your application. The TLDs that you are talking about are similar stuff. If you are planning to host your application on windows environment, .NET would be the cost effective solution. If you are considering an Unix/Linux deployment forget the M word.
kaycee
<< Home
|