Bruce Yu

Greenhorn
+ Follow
since Feb 22, 2002
Merit badge: grant badges
Cows and Likes
Cows
Total received
In last 30 days
0
Forums and Threads

Recent posts by Bruce Yu

Hi,
Below is a link to Resources on Job Search/Company Research, Labour Market Info and MORE, especially for new/current graduates.
http://www.bm-one.com/Resource/career.html
Check it OUT!
Bruce
22 years ago
Congrats, buddy!
I knew you passed the test even before you posted your result!
I passed the exam with the same score yesterday, and thanks for your long post!

Bruce
ust cleared ibm test 488 with 73%(passing score is 57%). This is the lowest score I got among other tests I took this year: scjp, ibm 283, 486, 483, scea-I. I felt it was the most difficult java certs I took since I had little VAS 4.0 experienc and I was not well prepared. Now my j2ee certs tour will be closed except the scea-II/III
Below is my experience to prepare for 488:
1. Didn't read any red books.
2. Did read most the articles listed onmy web page. It is really helps especially for the part 7 & 8 in the test.
3. For the people without WAS experience, you should deploy some toy projects in the product following the instructions of the tutorials, at least doing it in your brain like me. Ater doing that, I am confident to assemble and deploy my j2ee apps on client sites without errors(maybe). Since I couldn't download WAS with my 28.8k modom, even I could download it, I couldn't install it on my computer(65 RAM with Win95 OS). I got 11 ouf of 15 questions in part 7 & 8.
3. Took ibm 488 sample test and whizlab's trial test. Thanks Axel for your long post, it helps alot! I think these 83 sample questions are enough. Reading articles is more important in term of learning new technology and passing the test quickly.
There are some discussion taking which test (488/158), I think it depends: 488 is the best one for me since:
1. It is faster for me taking test 488 than taking 158 since I had some experience in developing j2ee app with VAJ 3.5 last winter, it really save some of my precious time to play soccer . I got 4 out of 8 questions in part 6 - VAJ, it is faire since I didn't spend any time on it.
2. If you got IBM certified Enterprise Developer under your blet, who cares the difference between Visualage based or WSAD based? I really enjoy JCert's "Certified Once, Recognized Everywhere"! Switching an ide is a simple task. After using VAJ for some time, I tried Jbuilder by myself and just felt comfortable using it with little learning curve. Plus the market may need more migration ejb projects currently.

I think that JCert Level 3 + SCEA is best combination of J2EE certs path.

Bruce
-------------------
ICED
www.bm-one.com

Originally posted by Axel Janssen:
Bruce,
thank you very much, too.
I will progress in small steps now.
Only changed question 1. You were right!
With question 40 I am quite sure that my original answer was right.
comp/env/jdbc/ is the recommended space, but its not more than a recomendation. And as the logical name of the ressource is travel and not "jdbc/travel" the correct declaration is comp/env/travel.
Will check 4) later.
regards Axel


Axel,
Did you find correct answer is "jdbc/travel" ? The logical name of the resource means data source name, so you should put data source name under comp/env/jdbc as the best choice for this question.
And glad that you realized the correct answer for Question 4. your insight is appreciated.
Bruce

Originally posted by Axel Janssen:

But: Transient does not work in EJB. In EJB transient fields do n.o.t to be set to their initial values after deserialization. They can contain arbitrary values, when the bean is activated! (Monson-Haenffel 3, p 361f.)
Are connections serializable? This might explain why method should throw NotSerializableException.



I think the connection reference can be acquired in ejbActivate() method -- set the tranient field in this method. I remember that the connection should set transient in entity bean in an article some time ago, but forgot which article I read.
Anyway, I will check Monson-Haenffel's tonight.

Bruce
Axel,
Thank you very much for your long list. It helps a lot!
I got 100% on session 1, so pick up two answers different from yours.
1)
On a project, web client requests are serviced by a servlet controller that uses the Command pattern.
The request is forwarded from Command classes to JSPs which respond with XML. Given this architecture,
the BEST way to work with EJBs is to have the:
a) Command classes retrieve the required data from the EJBs, passing the data to the JSPs.
b) Command classes retrieve the required data from the EJBs, passing the data to the JSPs as an XML file.
c) JSPs retrieve the required data from the EJBs
b)
-----------------------
Answer is: a
Since the controller servlet uses the Command/Mediator pattern to process the requests. In Jsp file, the response data can be trasfer to xml format. If passing the data as an xml file by servlet, its functionality is too much.
4)
A developer is writing a BMP Entity Bean that caches a reference to a database connection in a private field. The bean also
holds
references to two other objects, neither of which is serializable. Those two referenced objects are created from the
persistent
state of the bean. Which of the following MUST the developer do to handle the passivation requirements for this entity bean?
a) Make the database connection reference field transient.
b) Make the fields that hold the references to the non-serializable objects transient.
c) Create a writeObject(ObjectOutputStream) method on the entity bean which throws an instance of
java.io.NotSerializableException.
d) Create a writeObject(ObjectOutputStream) method on the entity bean which translates the object references into
serializable form.
e) Create a readObject(ObjectInputStream) method on the entity bean which translates the serialized data back into the
previously held
object references.
c), e)
[not sure, please explain!!!]
-----------------------------------
The answer should be a & b.
database connection reference should never be persisted since it is machine dependent.

For session 7:
40)
A self-service airline application needs to define a JDBC resource reference for a DB2 travel database in the deployment
descriptor.
Assuming that the logical name of the resource is "travel", what is the correct declaration?
a) java:comp/env/jdbc/travel
b) java:comp/env/travel
c) java:jdbc/env/db2/travel
d) java:comp/env/jdbc/db2/travel

b)
---------------
answer is a)
java:comp/env/jdbc/ is a recommended place to put jndi reference for jdbc driver.
I will check other questions soon.
And thanks again to answer my transaction questions!

Bruce
I agree that d is correct. But I think b could also be a correct answer.
Anyway, I feel these transcation questions in ICE488 are difficult.
I have other 3 transcation questions, could anyone show the correct answers and reasoning.
25)
While executing a method on a Session bean configured with TX_BEAN_MANAGED, an IllegalStateException is thrown when trying to commit a transaction that spans multiple business method calls on the Session bean. A cause of this problem may be that:

a) The Session bean is declared as stateless.

b) At some point an exception has occurred and the transaction has been rolled back.

c) An Entity bean accessed in the scope of the transaction marked the transaction for rollback.

d) The Session bean method that starts the transaction was never called.

Single select
28)
While testing a Session bean configured with "Bean Managed", a developer discovers that a TransactionRolledBackException is being thrown by a call to a method on an Entity Bean. The Session bean, prior to calling the method, explicitly started the transaction. Possible causes for the exception are that the:

a) entity bean method is throwing a checked exception.

b) entity bean method is throwing an un-checked exception.

c) entity bean is configured with a transaction attribute of "Not Supported".

d) entity bean method is throwing an exception and the entity bean is configured with a transaction attribute of "Requires New"


Multiple Select - Please select all of the correct answers (this question has 2 correct choices).

29)
The following sequence of method calls occurred on a CMP Entity bean instance when a Session bean invoked its businessMethod1() and businessMethod2() methods from the same Session bean method in IBM WebSphere Application Server, Advanced Single Server Edition for Multiplatforms:

entityBean.ejbActivate() entityBean.ejbLoad() entityBean.businessMethod1()
entityBean.businessMethod2() entityBean.ejbStore() entityBean.ejbPassivate()

Assuming that the session bean is configured with TX_REQUIRED, what MUST be TRUE about the scenario that generated these method calls?

a) The business methods are NOT configured with TX_REQUIRES_NEW.

b) Any persistent state changes that occur as a result of businessMethod1() are in the same transaction scope as changes made by businessMethod2().

c) Any persistent state changes that occur as a result of businessMethod1() are in a different transaction scope than changes made by businessMethod2().

d) ejbStore() will write the resultant state of the Entity bean to the persistent store.

Multiple Select - Please select all of the correct answers (this question has 2 correct choices).

Thanks,
Bruce
Axel, Thank you very much for your apply.
Your analysis gave me some hint. I did the ICE again and got the correct answers: b & c.
for a or b, at first I thought a was OK since WAS could make stateful session bean persistant OR programmer could code themself for the stateful session bean to persist its state.
for c or d, make references to node specific resources was not good since if it couldn't provide failover in case server down or for load balance issue. But this test is for Single Version WAS, it should be thought that way. I am not sure if I am on the right track.
Another qurestion on ejb transaction:
26) While testing a BMP Entity Bean, a developer discovers that a transaction rollback does not cause a rollback of the changes made to the bean as it should. Which of the following should the developer suspect?
a) The ejbPassivate() method has a bug.

b) The ejbStore() method has a bug.

c) The ejbCreate() method has a bug.

d) The datastore does not support JTA.

e) The transaction does not implement javax.transaction.UserTransaction.
Multiple Select - Please select all of the correct answers (this question has 2 correct choices).

What is correct answer and why?
Thanks a lot!

Bruce
An ICE 488/158 Question:
Given the design goal of having an application be able to be configured as robust as possible, which techniques should the developer AVOID in their design?
a) Use persistent HttpSessions to manage application state data.
b) Use Stateful Session EJBs to manage application state data.
c) Make references to node specific resources
d) Make all resource references via either java:comp/ JNDI reference or EJB environment values.
(2 correct answers)
What is the correct answers and why?

BTW, I created a resource page on my home page.
Thanks,

Bruce
Axel,
Thanks for your information. You are right, ibm will not show the same or similar questions in its real test. I already knew it when I took ibm 283 this March. I felt I couldn't pass it when I were not sure the exact answers for many questions in the test.
Good luck for your next try!
Bruce
Hi Axel,
Thanks for your information, it is a great feedback for anyone preparing for the test. I just wondering if there is any difference between 488 and 158 except the VisualAge/WAStudio part? I am currently preparing for 488 now and feel it is difficult.
By the way, did you do the IBM sample test for 488? How is your result?
Bruce
[ May 17, 2002: Message edited by: Bruce Yu ]
Congrats and good luck to part 2/3 !!
Bruce
comments on bill lubx's points:
-----------------------------------------------------------------------------------------
"If there is a "quick and dirty" way, we probably reduce the reputation of SCJA"
"but remember SCJA is not a cheep stuff, even it doesn�t have any Pre-requiremnt"
-----------------------------------------------------------------------------------------
I realized the sentence "This certification is for anyone who wants to be a J2EE architect" which was on the link page yesterday -- not good enough since it sounds like advertising for SUN (sorry, I have a little bit advertising and marketing background before), thanks for your points. I already expand it. My initial intention is to show it is great and fair to give any one a chance to take a test instead of checking if s/he has J2EE work experience for "five" years (just joking). i.e. If only considering "5 years work experience on J2EE" as a pre-requirement to take the scea test, it is "sterotype" in a organizational behivior jargon. It is also same to consider a person as a J2EE architect without real experience only since s/he passed scea.

But speaking of "quick and dirty" way, don't blame the people passed the test even they did it quickly since more and more people passed this test currently. "dirty" is not good, but "quick" is great. I think almost all the people follow the sun's rules and law.
I would like to see more and more people passed the test quickly. First of all, J2EE community need more fresh blood even than before. It shows people's commitment to j2ee, their capability, enthusiasm and energetic. Secondly, In information era, the technology changing so fast, it is the reality for the developers who want to pursue excellence: Progressing Rapidly or Fading Away. When are you ready to learn web service?
How about "we probably reduce the reputation of SCJA"? -- Again, you can't blame the developers passed it quickly since most all of the people follow the law and rules. "reputation of SCJA" is determined by SUN, and it is SUN's responsibility to keep the reputation (Sun already did it --i.e. changed mark scheme for part 2 in April 2002).
But from SUN's perpective, SCJA also a marketing tool to attract more people to consume J2EE product. Making it too cheap or too expensive would resulting just no one want to buy this "product", even drive the target customers way to its competitor.

Bruce
Hi Bill,
You maybe misunderstand what I am saying. If you go to the security part on my link page, you will found a lot of reading there including book chapter on java security. That covers most topic. And reading all the links which is so time consuming, but it is quite a previous learning opportunity to start mastering the java security issue for me. i.e. if you only want to pass the test, you don't need reading the long, dry chapter 13 of "Inside the Java 2 Virtual Machine" -- which is quite beyond the topic. I listed the link of the chapter there to expect people preparing for the test to learn more about java security, not just reading quick introduction articles to pass the test.
And I think I can't find more great materials to really study legacy issue. So asking any body if there is great article/chapters for it.
Passing a test can not make people become real architect, test itself is dull and easy. It is more important and difficult that what can movitate people to have appetite for continual learning and professional growth in the field.
Bruce
I just updated my link page for part 1, 2 and 3.
www.bm-one.com/Se/scea.html
I got good recources for the security, after reading the links, I got 100% on security even I knew little about it before.
But I could not find some good online article for architecture, protocol, legacy. Anyone found some good online articles/books for these three parts that you feel help a lot for the test even you knew little about the concept before?
I will keep updating this page.
Bruce
[ May 06, 2002: Message edited by: Bruce Yu ]
[ May 06, 2002: Message edited by: Bruce Yu ]
[ May 06, 2002: Message edited by: Bruce Yu ]