Dave Cronin

Ranch Hand
+ Follow
since Apr 25, 2003
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Dave Cronin

This could cause problems, depending on what kind of application you are writing. One thing that may be unexpected is that it will catch every kind of RuntimeException, such as NullPointerException, ArrayIndexOutOfBoundsException. It is probably better not to catch these, since these exceptions are not recoverable. A lot of production code guideline do not allow catching Exception.

Also, the comment says it is a wrapper exception, but it has not actually wrapped the exception in the constructor argument.

Another point is that there is no logging, which may be very useful for tracing problems in log files.

Probably there is a lot more to say about correct exception handling.
15 years ago
Don't give up, getting 50% after only 3 months is good going.
15 years ago
EJB seems to be one of many approaches you can take. Options to take are JDBC and Data Access Objects, JDO (Java Data Objects), object-relation mapping tools like Hibernate and Toplink. There are arguments for and against all of these, and it would probably depend on the project using them. Lately EJB have been getting some bad press due to project which have used EJB and made mistakes with them, not understanding their limitations. One aspect that can cause problems is the use of EJB QL and container manager relationships. EJB QL is still very limited compared to SQL, and bulk operations are probably best done using SQL.
Congratulations - a very good score. I would agree the Mark Cade book is useful, but only as a starting point. There is no one book that covers this exam. However, general IT knowledge gained from working in IT would also help, together with reading books around syllabus topics.

the container needs to create a unique session for this client (e.g. online shooping),

Given that a shopping cart is a business operation, it seems to make sense to keep the session with an EJB. If you actually want to record the customer's choices between session, you'll have to do more than that and store it to a database, so entity beans or other data access methods may be required.

is the ejb referrence stored in an object on java client, or similar to web client, there should be some object on the application server to store referrence?

The Java client of a stateful session bean has a reference to it's very own bean instance - (one reason for controversy over scalability with stateful session bean).

I only know that web client use httpSession object to keep referrence to ejb object. HOw about java client? confusing.

The HttpSession uses cookies or url rewriting to maintain the link between web browser and the web server - no EJBs are involved here. You use a Java client to maintain a session with a stateful session bean. No need to get confused.
Congratulations - this exam is very useful to get, there is really no equivalent around, and is really to a lot of real world projects too.
There are trade-offs either way. There are three options:
session beans with DAOs,
entity beans with DAOs and BMP (Bean Managed Persistence)
or entity beans using CMP (Container Manager Persistence).
With DAOs you have to know both how to use JDBC well (not as easy as it seems) and how to use SQL. It is true that it gives you more control, and some projects use it for that reason. However entity beans with CMP has advantages of not needing to write database access code. The EJB container can optimise the beans in ways that it cannot using DAOs. Effectively the container writes its own DAOs and can handles them with optimisations like read-only, caching, finder access and more. Also most container provide useful extensions to EJBQL. So it depends what you want to do in the end.
I think comparisons need solid benchmarks - anyone have a good list?
So close - almost there. The IBM OOAD exam does take some studying, it's worth reading a few books on the topic areas. The whizlabs study guide is useful as well. The exam includes some questions on use cases and the software process, not directly OOAD, but still useful to know. The next time definitely a pass!
Another point is that the client code calling the EJB does not directly call the bean code that you develop. It actually calls, from the create() method, a class that the EJB container implements, subclassed from the your EJB. In this class the ejbCreate really does return a primary key. So you return null from ejbCreate because you don't need to worry about what kind of primary key gets returned.
The pass score for IBM 484 is 63%, and for IBM 486 it's 67%. (But the PRIME practice exam site has a different pass score of 57% for IBM 484 at http://ibmtesting.prime.prometric.com/)
A pass is a pass, it shows you know the subject area, any score above the pass is just a bonus. Anyway, I think you should keep on learning afterwards, so the score on the day is out of date straight away. I got 77% for 484, and 90% for 486, but I wouldn't claim to be an subject expert just on the basis of the scores - there is much more related material that the exam doesn't - and can't cover.
[ December 23, 2003: Message edited by: Dave Cronin ]
It doesn't look like anything is left for jCert. However, my reading is that the same set of jCert tests will still be used for the IBM Certified Enterprise Developer role, as listed on http://www-1.ibm.com/certify/certs/adedwssv5.shtml
The IBM 486 OOAD UML test has no equivalent competing test, and is a very good tests of knowledge in this area. Therefore I think test 486 is very much worth doing anyway. But as for test 484, it is pretty much equivalent to SCWCD and SCBCD together.
However, Sun and BEA are not doing themselves any favours by not offering job role certifications like Enterprise Developer.
Thanks Howard. There are various other books on object-oriented design I didn't mention, but the recent book Object Design (2003) by Rebecca Wirfs-Brock looked interesting enough to get a copy from Amazon. It covers the principles of design software objects very well. It doesn't match the IBM 486 syllabus as well as Larman's book, but then Wirfs-Brock's book is well worth a read anyway, and helped me to think in terms of objects better. For example the book covers the Double Dispatch design pattern very well using the game paper, scissors and rock. (Rocking on there!)
After doing this exam I think that good object-oriented design involves a lot of difficult concepts, and it's no wonder that a lot of projects don't get it quite right. However, it is worth persevering to understand OO since the concepts do make sense - eventually.
I took the IBM 486 OOAD with UML exam today, very pleased with the score as well. The topics on the exam are quite tricky, and took a fair amount of studying. The most useful study materials I used were:
UML and Patterns (Craig Larman)
UML Distilled (Martin Fowler)
Use Case Modeling (Bittner and Spence)
The Unified Modeling Language User Guide (Booch)
Whizlabs 486 Exam Simulator
Also of some use were:
Object Design (Wirfs-Brock and McKean)
The Unified Software Development Process (Jacobsen)
Developing Software with UML (Oestereich)
Writing Effective Use Cases (Cockburn)