Posts

Showing posts from 2006

Year 2007: My Self-Study Goals

In the past year of 2006, i underwent 4 Sun certifications (that includes Java SE 5.0 programmer, J2EE 1.4 Webservices developer, J2EE 1.4 Web component developer and J2EE 1.3 Business component developer) and 2 trainings ( Oracle workforce development program's Introduction to Oracle 9i SQL and Program with Oracle 9i PL/SQL). In short, i invested a lot of effort and time in learning of Java EE based enterprise application development, which became the major focus for me last year. I wanted to cover every aspect of web application development in my learning, right from CSS, JavaScript, Ajax, XHTML on client tier to Servlets/JSP/Struts 1.2 on Web tier to EJB 2.x for Business tier and lastly, relational database SQL and PL/SQL on EIS tier. I also covered Webservices (in great details) which has become a very important tool for A2A (ie EAI) and B2B integrations. Learning of Webservices and my score of 88% in SCDJWS 1.4 exam really makes me feel good as i have felt that Webservices wi…

EJB3 development using JBoss 4.0.5.GA

Image
I encountered an issue today while redeploying EJB 3 jar for hot deployment to JBoss 4.0.5.GA which i installed using the JEMS installer 1.2.0 CR1. The issue and the resolution is mentioned here. You will need to install the JBoss EJB 3 RC 9 Patch 1 to fix it. For EJB3 development with JBoss 4.0.5.GA, you must use the JEMS installer only and not the archive releases.

I continue to see the issue of Wrong target message being thrown and the workaround for now is to restart the JBossAS which fixes the issue. EJB 3 RC 9 patch 1 does not do anything to solve this issue (and i found that one of the issues marked as dependent to this issue has been reopened recently). So expect a fix only by early Jan 07. For now reboot is the best bet.

Also i found that you need to have JSE 5.0only to run your application. Even though the docs say that JDK 1.5+ is supported but you get a strange issue of "Could not dereference object" on deployment of Stateful session beans (see this). So i had to …

Web Beans: JBoss Seam being standardized for Java EE 6 release

Web Beans JSR 299 proposal by JBoss (RedHat Middleware LLC) has been approved unanimously by the JCP executive committee even though IBM and BEA Systems have expressed their concerns regarding it being (too?) ambitious. Following is what they had to say:

------------------------------------------------------------------------------
On 2006-06-05 BEA Systems voted Yes with the following comment:
This appears to be a sufficient challenge to achieve, but, in light of the overwhelming support at this stage of the process, we are prepared to see it go ahead.
------------------------------------------------------------------------------
On 2006-06-05 IBM voted Yes with the following comment:
Delivering on the deep level of integration that is proposed appears to be an ambitious task.

In short, the goal of this initiative is: to enable EJB 3.0 components to be used as JSF managed beans, unifying the two component models and enabling a considerable simplification to the programming model for web-bas…

Steve jobs @ stanford in 2005

A very motivating speech by Steve Jobs to the Stanford 2005 batch graduates.

Apple WWDC 2006-Windows Vista Copies Mac OS X

Java SE 6 released Dec 11 2006

Some important links i could find to understand what's new about the new Java SE are given below:
Sun's Java SE 6 page
Top ten reasons why you should upgrade to Java SE 6
Java SE 6 impressive performance results
James Gosling on Java SE 6 release

I am going to try it out today :).

Using Subversion for your open source project

Image
Subversion has been an open source contribution by CollabNet folks which improves over CVS. The Subversion project started in earnest in February 2000, when CollabNet offered Karl Fogel a full time job developing a replacement for CVS. Karl Fogel and Jim Blandy had previously founded Cyclic Software which provides commercial support for CVS. Subversion was designed from the ground up as a modern, high-performance version control system. In contrast to CVS, which had grown organically from shell scripts and RCS, Subversion carries no historical baggage. Subversion takes advantage of a proper database backend (Berkley DB), unlike CVS which is file based. The Subversion team have tried to make the new system similar in feel to CVS, so users are immediately at home with using it. Most of the features of CVS including tagging, branching and merging, are implemented in Subversion, along with host of new features:

versioning support for directories, files and meta-data
history tracking acros…

Starting BaseApp

I have decided to start an open source project - BaseApp. The project is hosted on Google Code site. A new project blog is started where project activity will be logged.

Objective is to come up with a foundation application which can be leveraged to build web applications quickly in J2EE 1.4 (in the likeness of AppFuse). Most of the commonly used feature will be made available (like form based authentication support, netbeans project enabled, custom ant build file created etc). A sample application source will be provided which will use the following frameworks/toolkits as reference implementation:
Oracle 10g XE (the database i will use for testing)JBoss 4.0.4GA (the Application server)Struts 1.2.9 (the web tier framework)Hibernate 2.x (the presentation tier framework)XDoclet 1.2.3 (the attribute oriented programming support library)EJB 2.1
Stateless Session Beans (J2EE 1.4) (synchronous request/response)Message Driven Beans (J2EE 1.4) (asynchronous)JAX-RPC 1.1 (webservice support)JMaki

Choosing your Linux distro

You can find a good comparison between any two Linux distros at http://polishlinux.org/choose/comparison/. For eg, this url compares the Ubuntu with Fedora core.

EasyUbuntu is an easy to use (duh!) script that gives the Ubuntu user the most commonly requested apps, codecs, and tweaks that are not found in the base distribution - all with a few clicks of your mouse.

Java vs .NET

I recently attended a presentation talk by a .NET developer in my team at workplace where he talked about the reasons why he thought M$ .NET is better than Java EE. Following were the points raised by him together with my views on them:
Java is slow in performance (both on server-side and rich client) as compared to .NET.I found this blog post which presents some stats which clearly show that Java (JRE 1.4.2) was more performant than CLR (.NET 1.1). But C# IL when compiled to native code using Ngen.exe did significantly improve performace. Here's another interesting article i could find which compares the Java 5.0 with .NET 2.0 (the two latest releases of the competing platforms as of this writing). The summary from the article is as follows:
Selection Sort algorithm implementation : .NET performs faster by 2:1 as compared to Java.Memory comparison: .NET is using more than twice the amount of memory Java uses to store the same amount of data – 19.9 MB versus a whopping 47.8. Since .…

Convergence of WS-Management and WSDM

JSR-262 which addresses support for Webservices Connector for the JMX Agents, is targeted for Java SE 7 (2008 spring). There are currently two competing webservices-based management standards: WS-Management and WSDM. There is currently an effort in progress to reconcile the two standards into one. But this reconciliation effort is going to take sometime to complete (and the guesstimate is it can be ready by 2008). The bottom layers of the convergence proposal are the existing standards WS-Transfer, WS-Enumeration, and WS-Eventing. JSR-262 chose to implement the Webservice connector using the existing WS-Management standard primarily because it seems to be the most backwards compatible approach possible. For reasons, read here. The idea behind this JSR-262 effort of providing a Webservice connector to the JMX agents is to enable management in hetrogeneous environments where the management host does not support JMX technology (say a management client written in C#). So once your JSR-7…

Sun Announces SCBCD 5.0 Beta

Sun has announced SCBCD 5.0 Beta exam on October 19th it seems. It does not require one to purchase a voucher to take a beta exam. Registration starts on 24th Nov, 2006. You can take this exam from 8th Dec, 2006 to 2nd Jan, 2007. The exam objectives are here. The only pre-requisite is you need to be an SCJP (any edition).

The recommended books/tutorials to cover the objectives for this exam are:
1. Mastering EJB 3.0 by Rima Patel Sriganesh, Gerald Brose, Micah Silverman.
2. Java EE 5.0 tutorial
And of course the specs .. the list of them is mentioned here.

Register early as there is a limit to the number of people who can take the free beta exam.

Easy Eclipse Distro

For all you eclipse fans, there is a good distro for eclipse available (called Easy Eclipse) aimed at making the installation easier for eclipse. It has a pre-zipped bundle of plugins and all version dependencies are taken care of plus there are separate versions depending on what you need eclipse for (making Swing/SWT apps, server-side programming, mobile application development, etc). In my own experience, knowing what plugins to install to say start/stop tomcat or weblogic server or to support javascript or xslt editing is a manual process and complicated by the issues involved with version dependencies. With Easy Eclipse, the job of identifying the right plugins has already been taken care of and you can start using eclipse in all its glory right after the install.

12/27/06: I used the EasyEclipse Server Java 1.2.1 distro yesterday for setting up my development environment for learning EJB 3.0 with JBOSS 4.0.5 GA. And this distro installs JBoss Eclipse IDE with Eclipse 3.2.1 platfo…

Joy of Tech - Linux Lovers

Image
When i bought my present PC for home, it came with Turbo Linux distribution. The PC is a Compaq make with AMD XP 2400+ processor. It was 2004 July when i bought it. I first decided to keep the Turbo Linux distribution. Later i experimented with a few more distributions (Fedora Core 2, SuSE 10.x, RH 9). It was a good setup and i was gradually getting used to the habit of doing common things from command line (like playing music using mplayer). It was a dream like phase for me as i saw the developer tools which came free (vi, xemacs, and GNU GCC toolchain, linux kernel sources) and felt very passionate about someday becoming a linux systems programmer geek :). Those days i used to be learning unix systems programming, linux kernel development and fundamentals of embedded systems programming - all of it in self-taught way. I read some books then like - Linux Kernel Development by Robert Love, Advanced Programming in the Unix Environment (almost completed it) by R Stevens, An Embedded Sof…

SCBCD likely to be updated for EJB 3.0

On a post in Javaranch.com, Valentin Crettaz commented that SCBCD is likely to be updated for EJB 3.0 and the new exam will be available by early next year (ie 2007). Of late, many have posted on Javaranch on whether its wise to take the present SCBCD exam (viz aligned to J2EE 1.3 version of EJB Spec 2.0) or wait for the upgrade when the exam aligns with Java EE 5.0 version of EJB Spec 3.0. Now the same question is being asked about the present SCDJWS 1.4 exam (aligned to J2EE 1.4 version of WS specs). Sun has made some major architectural changes to the erstwhile JAX-RPC 1.1 (so much so that the new stack is called JAX-WS 2.0) and also the other standards have evolved in the due course (like SOAP 1.1 obsoleted bySOAP 1.2, WSDL 1.1 obsoleted by WSDL 2.0 etc). But experts at Javaranch feel that an upgrade to the present SCDJWS 1.4 will take some time (it may even be upgraded by Java EE 6.0).
In my opinion, those planning to take SCBCD 1.3 may want to wait for the newer version of t…

$100 MIT Laptop

Seen above is the $100 laptop for kids in the third world countries. Dont you find its amazing ! And our Indian govt. said no to it.

More info regarding this laptop can be found at : http://laptop.media.mit.edu/.

My views: In my opinion, rather than simply writing off the $100 laptop the indian govt could have atleast introduced these to those children who dont sit under trees and do have a proper school where they could have used the laptop as a device to learn from better (and more funnier than their books). Many children in india leave education only because they never found studies interesting enough. I have seen child labors in my own state Bihar, India, where they chose to opt out of school just because they did not find it fun and so spent time away from school bunking classes. Providing those children with an interesting electronic device and showing them how to use it is all that will be needed to get them started using it. Also even if 10% of children pick up the basics, the k…

Reading of SNMP, SNMPv2, SNMPv3, and RMON 1 and 2 Third Edition by William Stallings

I have started reading this book on SNMP by William Stallings recently. I have read just 6 of 17 chapters till now. What i wanted was a complete but simplified (than RFC's) write up on SNMP protocol and some of the standard MIBs. I have worked in SNMP for almost 7 yrs now and whatever i learnt was on-the-job. So i needed one book which puts together the different pieces of information pertaining to SNMP-based network management in a coherent form. Much of what i read in this book is what i already knew but reading it from a book gives a different perspective. Like for eg, sysUpTime can be used to deduce if the agent has been restarted since the last poll or that the ifAdminStatus reflects the value set by management station to change the operational state of the interface but ifOperStatus reflects the current operational status (and is RO). So if ifAdminStatus is up(1) and ifOperStatus is down(2) then the interface has failed can be concluded. And so on.. Another book which i am p…

Rocky wallpaper collection

Image
boxing Sep 29, 2006 - 7 Photos
Here are some of my favorite star (Sly Stallone's) pics from his movie Rocky (which i adore - as i adore boxing sport) and someday in this lifetime i will want to look like the above pic ;) ... and will update this blog post then with my pics by his side. Just kidding! Enjoy this small collection for now.

Preparing for SCBCD 1.3

Sun certified Business Component Developer exam (SCBCD 1.3)
is the exam i am going to take next on the coming monday (30 th Sept, 2006).
This exam covers EJB 2.0 spec (of J2EE 1.3). I am going to prepare for it inthe following way:
1. First refer to my notes from Mastering EJB 3rd Edn book by Ed Roman et al (covers EJB 2.1 and not 2.0 as required by exam).
2. Read Head first EJB book by Kathy Sierra and Bert Bates.
3. Mocks from Enthuware's EJBPlus.

Thats all of it i will do (or rather i can do) with 1 week of preparation.

Update 30th Sept, 2006: I passed this exam with 85% (85.7% in fact ;) ). Read my post on javarach of the customary how-i-prepared-for-it.

H1B Visa Stamping Experience

I got my H1B visa stamped yesterday (8th Sept, 2006) at USA Consulate in Chennai, India. My appointment time was 8am in the morning but i was allowed in at 7am itself. Then i was asked to wait for my turn in a seated queue in the first building where the documents are verified before you are asked to proceed to the next building (where the actual visa interview happens). At about 7.30 i was asked to stand in the queue of the first building when all people who had their appointment at 8am where asked to stand in the queue. Here they verified the documents and matched the barcode on the visa fee receipt with the passport number as mentioned in their system and finally they took one barcode sticker from the yellow receipt and pasted it on the back of my passport. They also put one form which reflected at what stage i was in, in my visa stamping process (ie docs verified, finger printed, visa approved). Once the docs verification was done we were being asked to go to the next building. Th…

Book Review: JUnit in Action

Image
Well i dont have anything to add as of now as i just bought this book but as i read some reviews (especially the one on eXtremeComponents site) i decided to benefit by learning how to unit test from this book. Yes the contents are very impressive as it covers mock objects, stubs and in-container testing strategies using JUnit and derivatives of it. The author is also a creator of Jakarta Cactus web-testing framework.

Preparing for SCWCD 1.4

I have decided to take the SCWCD 1.4 (CX-310-081) exam and have booked a slot for taking the exam at the local prometric test center on 18th Sept, 2006. I had already read the book Head First Servlets and JSP by Bryan Basham, Kathy Sierra and Bert Bates before but it was some 10 months back that it did so, and i needed some time to recap on the theory. I am using MZ's WCD Study guide to prepare and practice using the exercises from Head First book. I plan to use Enthuware JWebplus mock exam together with the mock exam with the Head first book and the mock exam at JavaRanch.com.

Update 18th Sept, 2006: I have passed the exam today morning and could complete it 45mins earlier (ie i took 1hr 30mins of time to complete the exam). Refer to my post on javaranch about how i prepared for it and where i went wrong to end up with the low score of 82%.

Some good data grid JSP tag libraries

The best one (also best documented one) is http://extremecomponents.org/. I am yet to try it out though but it seems quite flexible and has recently integrated with DWR (http://getahead.ltd.uk/dwr) to provide AJAX support for the data grid. The data grid can include form components. Another good data grid enabling JSP tag library is the display tag library (http://displaytag.sourceforge.net/). I recently also experimented with the live grid example of openrico but due to its insufficient documentation i found it too time consuming to work with (http://openrico.org/rico/livegrid.page). For my project purposes, i settled with the extremecomponents data grid as it seemed atleast as flexible as others and was better documented.

Learning BPEL

After having passed the SCDJWS certification i was a bit confused as to what next to learn to gain more mileage with Webservices. For sometime i simply kept idlying my time at the javaranch.com webservices forum trying to answer some questions and keeping in touch and testing the depth of my knowledge on webservices. Well that process still continues but in the meanwhile i got to know about BPEL for WS orchestration and it got me interested. I found only one book which addressed only BPEL and not the whole paraphernalia of webservices which i had already learned/read in the course of getting certified. This was the book Business Process Execution Language for Webservices 2nd Edition by Matjaz Juric et al. Also i found this article from Sun quite informative.
I have today got the book and will update this post with a review of how i find it. Java ranch has a review on this book too and my first impression is - it covers exactly as much as i would want to read on BPEL to get my…

Editing blogs with Windows Live Writer

Microsoft just launched Windows Live Writer, a new publishing tool for WYSIWYG blog authoring on Windows Live Spaces, Wordpress, Typepad and other blogging services. Found this software via Digg and it looks pretty good so far. The Live Writer is pretty similar to the Word and so I’m not sure how this product will be positioned in the future. With all the blog editing tools in Office 2007, this is an interesting offering but I guess it could be the free tool that doesn’t have all the features of Word 2007.
My initial impressions of this tool are fairly positive. The WYSIWYG blog authoring is really good and allows you to edit in GUI mode or directly edit the HTML being generated. The image tool is pretty cool that will allow you to add images to your post that can uploaded to your blog directly.
Writer supports RSD (Really Simple Discoverability), the Metaweblog API, and theMovable Type API with more blog platforms and API coming in the near future.
Another feature that’s interesting is …

Learning Design Patterns

I have recently started reading the Head first design patterns book. I read about 150pages of the book sometime back and now i have to resume my reading of the book from where i left. This time around, i am planning to put the design patterns i learn about from the book in my notes which will make it handy for revision and referring later. From what i recollect now about my experience reading those first few pages from the book, i want to say that i liked the easy presentation style and humor in the book which makes an otherwise dry subject a little more interesting. I will update this post after making some more progress on the book. In short, this book only covers 14 of the 23 design patterns covered by GoF's book.
Updated 25 Oct, 2006: I had missed to be able to complete this book earlier and recently i have experienced a deep sense of grief on being at loss for proper words or ideas when given a design problem. I think after revising SNMP as thoroughly as i possibly could, le…

Book Review : AJAX in Action

Image
I have today completed the 1st of the 4 parts of this book and i must say that i loved reading it due to my growing interest in the AJAX methodology and the web application development, in general. Part 1 of the book talks about what and why about AJAX, introduces the framework and toolset and the core technologies you need to know about when working on AJAX. This part is divided into 3 chapters (introducing AJAX, simple example with code and importance of refactoring the AJAX Javascript code). Part 2 (this is where i am now in my reading) talks about the techniques to employ for coding the client and the server. Comprised of 2 chapters. Part 3 (which i am yet to read) discusses about enhancing user experince (usability stuff that you should consider while developing AJAX application), security and performance of AJAX application. Comprised of 3 chapters. Part 4 provides example applications using AJAX methodology like Dynamic double combo, type-ahead suggest, web portal with autosave…

My Studies so far...

I have read the following books in order so far since Nov 2005 when i made a move from embedded systems programming to the J2EE world: Head first servlets and JSP by Kathy Sierra & Bert Bates Mastering EJB 3rd Edn. by Ed Roman et al SCJP 5.0 Study Guide by Kathy Sierra & Bert Bates JBoss at Work: A Practical Guide by Tom Marrs & Scott Davis Struts: The complete reference by James Holmes (only first 10 chapts). Oracle University: Introduction to SQL J2EE Webservices by Richard Monson-Haefel Designing Webservices with J2EE 1.4 by Inderjeet Singh et alHead First EJB by Kathy Sierra & Bert BatesSNMP, SNMPv2, SNMPv3 and RMON 1 and 2, 3rd Edition, by William Stallings.
My plans are to complete the following books by November 2006: Head first design patterns (for sure - started 25 Oct) J2EE Design and Development by Rob Jhonson (May be) Network Management: Principles and Practice by Subramanian (read 2 chapts.)
Oracle University: Program with PL/SQL (Oracle 9i)
Together…

Preparing for SCDJWS

SCDJWS 1.4 is Sun Certified Developer for Java Web Services certification exam. I started preparing for this exam after taking the SCJP 5.0 exam earlier in May 2006. This exam covers alot of specifications (XML 1.0, XML Schema 1.0, WS-I BP 1.0a, J2EE 1.4 for WS 1.1, WSDL 1.1, SOAP 1.1, UDDI 2.0, JAX-RPC 1.1 to name a few). You can see the complete list at Valentin Crettaz's site. There isnt any certification guide available as of this writing for this exam so i followed the advices of people who have already taken this certification exam at JavaRanch SCDJWS Forum and following is my approach to prepare for the exam.

Again, as has become a standard practice for me, i started with a word document where i copy pasted the exam objectives and wrote down the reference material (name of the book and chapters) for each topic on the exam. In summary, following are the resources i am referring:
J2EE WebServices by Richard Monson-Haefel (RMH): all chapters + appendices E, F & G. I did not …

Learning Java Enterprise Edition (Java EE)

I started my learning of J2EE 1.4 late November 2005 with the book Head First Servlets and JSP by Kathy Sierra et al. It was a good book and i could understand what a MVC pattern means to the web application development. I took about 2 months to complete this book (in parallel i started developing a small application from my team in my place of work). I used the learnings from this book and by beginning April i could also read up Mastering EJB 3rd Edition by Ed Roman et al. It was excellent but a tome and i needed to revise the concepts from the beginning chapters by the time i could reach the end of the book. So i was not able to understand the sample application initially and did not give much effort to understanding in the first go as i thought i needed to make study notes to burn in the matter in the initial chapters. But reading the whole book in a go gave me some confidence in my approach to learning Java EE based development. Then i thought of taking the Sun certifications and …

Preparing for SCJP 5.0 Exam

While preparing for SCJP 5.0 exam, i did the following: Bought a certification guide (SCJP 5.0 Study Guide by Kathy Sierra & Bert Bates) Read the book from cover to cover The guide came with a ebook in pdf format on a CD with the book. I used the pdf document for copy pasting the contents i wanted to revise later into a word document notes i prepared. I first copied the 2 minute drills part (which was like a quick summary of essential parts of the chapter). Then i went to the relevant parts where i needed some examples copied from into my notes. I also copied the exercise examples to the respective sections of my notes. This really helps to see the kind of question on a topic you can get near to the notes on that topic. I did the above for all chapters and captured my notes in one word document which i took a print out of and then revised and kept adding any special question which i could not answer from one of the several mock exams found on the internet. As an end result, follow…

My tryst with AJAX

It all started with a question bank application that i was asked to build for our staffing team's use. Once an interface to add/remove/update questions to a database was created i was asked to build a web form to allow the interviewers to manage the questions they asked in an interview session together with the ratings assigned per question per candidate. Also the interface to be quick enough for the interviewer to find the right question to ask and update on the web form while conducting the telephonic interviews. AJAX seemed to answer some of the questions like not having to reload the pages thus giving a desktop application like usability to the interviewers. And i gathered that it also a hot term in the industry today. So i thought i will make use of the simple web form work as my learning platform for AJAX. I had bought the book AJAX in action sometime back but never got time enough to start reading it. About 600 pages of it can be completed in no less that 10 days. I thought…