Christophe Testi

Ranch Hand
+ Follow
since Oct 29, 2001
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
(keep public parts private until JForum day)
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt
Moderation Tools

Recent posts by Christophe Testi

Well I am getting confused as well... because the javaworld's article is actually a cut and past of the EJB 1.1 Spec Chapter 18 !!!
So looks like you can do it but you are not suppose too...
That's interresting.
Anyone tried to use sockets and EJB yet ?
Hi Lucy, that's a good point.
There is a good article on javaworld about that:

The following is a list of Java features that you should avoid, hence restricting their use in your EJB components' implementation code:

Using static, nonfinal fields. Declaring all static fields in the EJB component as final is recommended. That ensures consistent runtime semantics so that EJB containers have the flexibility to distribute instances across multiple JVMs.
Using thread synchronization primitives to synchronize multiple instance execution. By avoiding that feature, you allow the EJB container flexibility to distribute instances across multiple JVMs.
Using AWT functionality for keyboard input/display output. That restriction exists because server-side business components are meant to provide business functionality that excludes user interface and keyboard I/O functionality.
Using file access/ operations. EJB business components are meant to use resource managers such as JDBC to store and retrieve application data rather than the file system APIs. Also, deployment tools provide the facility for storing environment entry elements (env-entry) into the deployment descriptor, so that EJB components can perform environment entry lookups in a standardized manner via the environment-naming context. Thus, the need to use file system-based property files is mostly eliminated.
Listening to or accepting socket connections, or using a socket for multicast. EJB components are not meant to provide network socket server functionality; however, the architecture lets EJB components act as a socket client or RMI clients and thus communicate with code outside the container's managed environment.
Using the Reflection API to query classes that are not otherwise accessible to the EJB component due to Java's security rules. That restriction enforces Java platform security.
Attempting to create or obtain a class loader, set or create a new security manager, stop the JVM, change the input, output, and error streams. That restriction enforces security and maintains the EJB container's ability to manage the runtime environment.
Setting the socket factory used by the URL's ServerSocket, Socket, or stream handler. By avoiding that feature, you also enforce security and maintain the EJB container's ability to manage the runtime environment.
Starting, stopping, or managing threads in any way. That restriction eliminates the possibility of conflicts with the EJB container's responsibilities of managing locking, threading, and concurrency issues.
By restricting your use of features 10-16, you aim to plug potential security holes:

Reading or writing a file descriptor directly.
Obtaining security policy information for a particular code source.
Loading native libraries.
Accessing packages and classes that the usual rules of Java make unavailable.
Defining a class in a package.
Accessing or modifying security configuration objects (Policy, Security, Provider, Signer, and Identity).
Using the subclass and object substitution features of the Java Serialization protocol.
Passing the this reference as an argument or returning the this reference as a result. Instead, you must use the result of the getEJBObject() available in SessionContext or EntityContext.

Also in SUN EJB Specs 1.1 you can read the following:
In advanced cases, a session object´┐Żs conversational state may contain open resources, such as open sockets and open database cursors. A container cannot retain such open resources when a session bean instance is passivated. A developer of such a session bean must close and open the resources in the ejbPassivate and ejbActivate notifications.
So I'll go with the SUN EJB Specs It's probably not recommended because it adds more complexity to your code (you have to close and open your socket manually in case of passivation of the bean). But it is certainly doable.
Hope this helps,

[This message has been edited by Christophe Testi (edited November 15, 2001).]

Originally posted by Rahul Mahindrakar:
On the Javaranch forums we have tried our best to keep exam questions out. Many a times you will find threads missing or posts edited. However if you still find some please point them out so that they may be removed.

How often do you read this forum ??? Just curious
Sometimes to minimize the interactions between the web client and the web container, like for instance sending an http request to validate the data that you just entered in a form (let's say your address), it is better to use for instance javascript do to a first validation pass of your input data.
Does it make sense ?
Dear Ruilin,
I haven't looked at 'Petstore' yet but I remember that it is explained in details in the SUN blueprints (BTW everyone who try to pass the Architect certification should at least read that )

If you look at the table of contents, surprise !chapter 10 of the blueprints is dedicated to 'Petstore' ations/sample_application/index.html
[This message has been edited by Christophe Testi (edited November 14, 2001).]
1 year or as long as SCJEA certification exists, depends who you're asking the question to
There is an interesting analysis on EJB performances.
This could help to make some choice while designing FBN:
Look also at

Originally posted by faisal mahmood:
Do you only need to pay for part III or for both parts?
[This message has been edited by faisal mahmood (edited November 13, 2001).]

Faisal, you should start reading the SUN Enterprise Architect for J2EE pdf guide on SUN web site.
It clearly says that if you fail part 2 and 3 you will have to do part 2 again but not part 3, and it will cost you 150$
Regarding your question about the Registration # and the site, between us, I don't understand how that can help us to for the certification
Also we know that the feedback from SUN on your assigmement is pretty poor, basically it's just a rating with no explanation I guess they should give more explanations...

[This message has been edited by Christophe Testi (edited November 13, 2001).]
Until last June SUN had the following rule:
SCJP2 ---> SCJD2 ---> SCJEA
But they probably realized that this was not really coherent.
Being an Architect and a Developer are two very different jobs. Even if Architects used to be developers, I think the previous requirement was too restrictive.
A component is a physical and replaceable part of a system that conforms to and provide a set of interfaces.
It could be anything from a servlet, JSP, JavaBeans to an EJB.
Multi-tiers architectures are component based architectures.
Not anymore.
You can go directly for Architect.
Way to go Sanjay !
Great job. I am currious about part III, what is the level of the 4 questions asked ? Did you have enough time to answer all of them ?
I still can not beleive that you guys are spending so much time and energy trying to remove a link to the assignment -- which BTW IS NOT THE SOLUTION.
For god sake where is cheating involved here ??? This is sooo ridiculous. There are dozens of thread in this forum where you can find answers that have been asked in the exam, and this should be considered as cheating.
Reusing some architecture from Pet Store this could be also considered as cheating, ... but reading the content of the assignement... please come on ! it's a like reading the objectives of the exam, don't you think ???
Anyway I was glad to had this link to look at the assignement even before I got part 1. That gave me a good idea of what I should expect for part 2.
So in my opinion the problem is not in having this link available or not, the problem is to have SUN creating a set of new assignements, and this is where you should put you efforts into , rather than poluting this forum with dozens of post around a link that contained in my opinion 'the objectives' of the 2nd part.
I hope that in the futur the content level of this forum will improve a little bit...
And yes the link with the assignment has been removed (the link was )
... but I am sure that they are many other way to get an idea of what the assignement is, like simply asking a friend who got certified
my 2 cents,
[This message has been edited by Christophe Testi (edited November 11, 2001).]
Hi Lucy,
Please have a look at
In a few words using a digital signature does not mean that your document is encrypted, it's just a guarantee that your document has not been altered.
I received some emails regarding Simon's notes... Well I was refering to Simon Lee's web site
The following is the magic formula for success:
Deep understanding of EJB and architecture concepts + + + lot of web readings (, javaworld, javaranch ...)
= Part 1 easy
[This message has been edited by Christophe Testi (edited November 09, 2001).]