Mark Garland

Ranch Hand
+ Follow
since Nov 11, 2006
Merit badge: grant badges
For More
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 Mark Garland

Hi all,

Having exceeded their own timescales by some way, I re-chased and have now been told "this will be reviewed next month".

I'm rapidly losing faith in these guys.

I'll keep you posted.

Hi Sundeep - thanks for the tip. It's something to work with.

However, I've had some success!
I was just called from somebody from Oracle who told me (and emailed me confirmation) that the certification team have acknowledged and are aware that the exam topics are not sufficiently detailed, and that it is something they are actively working on. He suggested a couple of weeks, but could be a month, and has promised to update me once the topics are amended.

I hope that his predictions are correct and that this provides some reassurance to people on here.


Hi Joe,

Yes - just over an hour ago. And totally useless it was too.

Irina, from Edenrollment (my University representative) has been helpful and has said:

Hi Mark

We have forwarded your training queries to our Education Advisers who will contact you with more information

Best regards

However, the people at suncert_ww (The OCP - Certification Team) have just sent me the same response. It's like they didn't even read my mail.

Hi Mark,

Please refer to the course contents and exam topics while preparing for the exam. Regarding the training requirements you can also call a representative at 1.800.529.0165 Oracle University will be better able to assist you with questions on training.

OCP Team

I've gone back with this, but with a 5 day SLA, I'm not hopeful. I'm really disappointed with these responses and this service is surprisingly appalling!

Hi OCP Team,

With respect, I'm not convinced that your response addresses my question.

For training, Irina (the person I originally emailed) is getting an Education Adviser to contact me - so this is hopefully sorted.

However, with respect to the exam topics, I am well aware that I need to refer to them when preparing for the exam. However, my concern (and the concern of a number of people on various forums) is that the exam topics for this exam are just 14 lines compared with (a normal) 5 pages for version 5 of the exam. To me, these exam topics look incomplete? I'd appreciate it if you could look into this further, as without fuller and less vague exam topics, preparing for and taking the exam is just not feasible.


Sorry to not be more helpful - but I'll keep trying!

Hi Satish,

Almost word for word the response I got. (I've had to wrap the URLs in a code tag, because the forum thought I was using an abbreviation for 'please'! :-)

Hi Mark,

Thank you for writing to Oracle Certification Program.

For all your queries regarding training requirements please visit to contact your local Oracle University representative for further guidance. You can also call a representative at 1.800.529.0165 Oracle University will be better able to assist you with questions on training.
Regarding Exam Oracle Certified Expert, Java Platform, Enterprise Edition 6 Web Services Developer is already released in production version. Please visit our website
for more details.

OCP Team

I responded with:

Hi OCP Team,

Thank you for your response.

With respect to training requirements and availability, I originally contacted my local Oracle University representative (Edenrollment - copied), who forwarded my request on to you!

With respect to the exam - are you sure it is released in production? The Exam Topics are just 14 lines, compared with (a normal) 4 pages for the version 5 of the exam?


Mark Garland

And got:


Will keep you posted.

I'm looking for these detailed exam topics too. I've emailed the OCP Team pointing out that the older version 5 exam has over 4 pages of detailed exam topics, and yet this exam (CX-310-232) has just 14 lines.
They've got a 5 day SLA, and I'll let you know if they respond with anything useful.
Hi Henry, Jeanne and Ulf,

Thank you for looking at this issue so fairly and in such depth.

In relation to the above topics:
- Embarrassment - For Henry, I would suggest that it is possible to feel embarrassed when a moderator taps you on the shoulder, even privately, although Like Jeanne, I can't think of a better way than a private IM. A "prevention rather that cure" strategy of documenting the rule in question is the best I can think of, and this has been done now by Jeanne - so I think we're in the best position possible for this.
- No Guidance In This Area - Solved by Jeanne.
- Not Asking - This is the one that gives me the most trouble. I'd suggest that you have a dichotomy here. On the one hand, you want this forum to be a friendly place where people can feel welcome, and to have the rights to personalise how their account looks. Further to this, you want to encourage people to give up their own time to answer questions of others - this isn't a place where people just come to ask the moderators questions - you actually want people to feel like they "belong" here and even "own" a bit of the success by giving up their time to help people they've never met.
On the other hand, you want to moderate the forum to quite a fine level, and whereas before I felt after 5 years and helping a number of people I was "part" of this forum - by having my account modified without my permission for such a minor infraction, it is very clear to me that my status here is simply that of "guest". Naturally, this would go against encouraging contribution.
The best analogy I can think of is the difference between a community centre (where everyone plays a part, everyone has a say, and everyone gets involved) and a shop (where the owner can change the rules at their whim and boot you out when they feel like it).
I'm not niave though - forums can deteriorate amazingly quickly without moderation - but it comes down to discretion, and this is where IMO Ulf got it wrong. If I had been spouting racist material on a forum - then you cannot afford the time to politely ask me to reword my posts - immediate action is required. But for a signature that was 5 lines instead of 2, in this instance - politely asking the person is the right route here. By not doing this, I now feel as a "guest" in your "shop" who no longer has control over my own account.
- Not Being Able To Respond - Thanks again for agreeing to look into this.

I feel that I've explained my case as best I can (it's not the easiest thing to word), and together I feel that we've covered all of the above points and consider the issue resolved.
I am happy however to answer any further questions/comments that you may have.

Finally, I would reiterate that this is an excellent place, thanks largely to the hard-working volunteers like yourselves, and would encourage you to keep it up!


12 years ago
Hi Jeanne,

Thank you for taking the time to respond to my message, and so quickly! Also, thank you for congratulating me on my pass, and for your signature suggestions.

I do understand that a moderator's job is difficult (and I probably would want that role), and I also understand that your list of rules cannot be entirely exhaustive (or you'd be there all day writing them!) - although I think that your linked-to article is a great addition - thanks!
I also understand that some control is needed on signatures - otherwise they would end up out of control and would detract from the messages on this forum.

My irritation on this issue was from the following points:
- Embarrassment. I think that the word "upset" was too strong - I wasn't sat here with my head in my hands and tears streaming! However, I do try very hard to follow the rules of this forum where I can, and so being pulled up by an administrator/moderator (even one as polite as Ulf, and even in the discrete way that he rightly chose) is never a nice thing. It's a bit like if your neighbour or the local policeman knocked on your door and asked you to park your car differently - I don't think anyone could help being embarrassed.
- No guidance in this area. Following on from the above - without guidance in this area, I'd 'broken' or 'not followed' a rule or convention that I didn't know existed. This has now been solved by your link, which will hopefully stop more people falling foul - thanks.
- Not asking. This is probably the bit that irritated me the most. Whilst I'm not the most active poster on the forum, I have been here for the best part of 5 years and have taken pride in being able to help others where possible. My signature is part of *my* identity on this forum, and is set the way I want it. "Ulf calmly asked you to use a shorter 2-3 line signature." - no, I'm afraid this isn't what he did. What he did, was he changed a detail about my account, that is important for my identity, without my permission. I'd respectfully ask you to just think how you would feel if I changed your signature without your permission. A much better alternative, which would perhaps show a little more respect, would be if Ulf sent me a message saying "Could you please change your signature because...." - however to just change it without my permission, especially for an undocumented convention, is quite offensive.
- Not being able to respond. I tried to respond to Ulf to solve this issue in a discrete way which showed him respect, and was unable to do this because he doesn't accept personal messages. So, not only has my signature been changed without my permission for reasons I didn't understand, but I am unable to respond to question why or ask for further details.

I don't want to come across as simply moaning - this is an excellent place, thanks mainly to hard working volunteers like Ulf. However, from my perspective, this was handled quite badly and I'm hoping that there are some lessons that can be learned for future interactions.

I really hope the above is useful. Thanks for your time,

12 years ago

I recently passed a SCBCD exam, and being rather proud of my achievement, I added a line to my signature:

28/06/06 - SCJP - 69%
05/06/07 - SCWCD - 92%
28/02/08 - IBM DB2 v9 Fundamentals (Exam 730) - 87%
18/11/08 - IBM DB2 v9 DBA (Exam 731) - 89%
26/02/11 - SCBCD - 88%

I've since received the below message:

Hi Mark-

I changed your signature, as it was taking up so much vertical space as to distract from the actual content. You're free to change it, but please restrict it to no more than 2 lines.

Thanks and regards,
Ulf Dittmer
JavaRanch Moderator

I did try to respond to Ulf, as I am not entirely happy with how this has been handled. I drafted the below message, but unfortunately I cannot reply as Url is "not accepting personal messages".

Hi Ulf,

I have to admit that I'm a little surprised and disappointed by this message.

Would you mind pointing out where on the Javaranch/Coderanch site I can find guidance on the recommended sizes and shapes of signatures? I've had a look here: but couldn't find anything of relevance?



I don't want to annoy/upset Ulf as he has been unfailingly polite and extremely helpful in the past, but I would like a chance to discuss how this was handled so that we can perhaps improve things in the future?
I'd also like someone to point out the guidance that I can't seem to find - and if it doesn't exist, would respectfully suggest that something needs to be drafted before more members fall foul and become upset/embarrassed as I have.


12 years ago
Hi E Robb,

I'm reading the same book, although I don't think I'm as far as you are yet.

AFAIK (and I'm willing to be corrected here), javax.persistence is for the Java Persistence API - this is the API that can be used for storing entities in a Database. It's an API that has been derived for providers to then supply implementations to (e.g. Hibernate or TopLinks), and you can use it to get a consistent API regardless of the provider, for storing your Entities in a database.

However, if you are using WebServices, then this is the wrong API. Perhaps something like AXIS2/JAX-RPC/JAX-WS might be more useful if you are trying to get information from WebServices instead?

Hope that helps,

12 years ago
Hi all,

I've just come back from the exam centre and can hardly believe it. I'm very happy with 88%.
In the same way as I did here for the SCWCD exam I thought I would add a few notes about my story.

For those looking closely at my signature, you'll note a gap between certifications (in fact, my SCWCD exam was taken almost 4 years ago). After it, I almost immediately started SCBCD preparation, however a few weeks in I was approached by my employer with a requirement that they needed some people trained up on IBM's DB2. At first I was reluctant, however I knew very little about databases (i.e. concepts such as sequences were new) so I thought that I'd go for it - whilst Oracle training could be seen as better in terms of employment prospects, a lot of the concepts are transferable and the employer was willing to pay for DB2 training. On reflection, I think it helped with SCBCD preparation - especially the JPA element.

After becoming a DB2 DBA, I restarted my SCBCD preparation. I started with Mastering Enterprise Java Beans because - well it was FREE! Sadly, this didn't turn out so well as there was something I didn't get on with when reading this book. Skimming back through it now it looks a decent book and I admire the authors for putting it out there as a free PDF, but for me, something just didn't work. Perhaps it's more of an advanced book than a beginner's book.

I then moved on to EJB3 In Action and this book was excellent. It takes you right from the basics - which is what I needed - and covered virtually everything needed for the exam. I also asked a number of questions on this forum, and in some cases, the actual authors were replying. This is highly commendable and shows their dedication to their students.

Finally, I moved onto Pro EJB3 which is another excellent book. I did sometimes feel that some of the concepts were covered much too deeply for the exam, but feel that this is by design. I suspect that the authors were writing an excellent reference manual on JPA, not a study guide for the exam. I know that I'll be keeping this book near by for when doing future JPA work.

Aside from books, I also started a personal project. It's totally over-engineered, but it allowed me to shoe-horn in all sorts of things from the exam and to have fun with them. You can really think that you know something, until you are sat at the keyboard and you go blank when trying to remember an element name for example. Then out come the books and its a new fact that's remembered for next time.

Also, I'd like to thank the people on this excellent forum. I've asked numerous questions and there are always people who are willing to take the time to think them through, give simple answers and to often provide references where more information can be found. Please keep it up!

Towards the end of my preparation, I searched the net for practice exam questions and worked through these where possible.

Finally, don't get a cold two weeks before the exam. It makes studying almost impossible!

Scores below:

EJB 3.0 Overview..........................................................100%
General EJB 3.0 Enterprise Bean Knowledge....................100%
EJB 3.0 Session Bean Component Contract & Lifecycle......85%
EJB 3.0 Message-Driven Bean Component Contract..........50%
Java Persistence API Entities..........................................100%
Java Persistence Entity Operations..................................80%
Persistence Units and Persistence Contexts......................83%
Java Persistence Query Language...................................83%
Security Management.....................................................100%

Questions: 54/61.
Passing Score: 59%
My Score: 88%

Thanks again!

Hi Christophe,

Thank you very much for your time and very useful reply.

I think the key sentence is here: "However, it is also possible to include a client module (a JAR file) in an EAR file. This JAR file is only used on the client side; you configure this client module using the application-client.xml deployment descriptor. This scheme makes it possible to package both client and server side modules together. The server looks only at the parts it is interested in (based on the application.xml file) and the client looks only at the parts it is interested in (based on the application-client.xml file). " taken from your link here:

That makes perfect sense - thank you for your help,

Hi Christophe,

Thanks for your very quick response.

What you've said makes a lot more sense, but the book would disagree. See the attachment.
Perhaps a new Errata?

Thanks for your help,


I'm reading about packaging on pg. 391 of EJB3 in Action.

It mentions "Enterprise Java applications need to be assembled into specific types of JAR files before they can be deployed to an application server." and then goes on to list the various types of archive, including CAR - Client Application Archives.

It then shows an example EAR, which includes a packaged CAR.


My question, is that if CARs are for Clients, and contain thick clients, why would you be packaging them inside an EAR? I understand that putting it in the EAR might keep everything together, however what does the Application Server do with it (presumably nothing as the code is for clients)?


(I thought it might be better to revive an old thread on this than start my own as this person has a similar question.)

Alexey Saenko wrote:The @DeclareRoles annotation specifies all roles which are used in the given class (or method). Also it is possible to specify the roles list in DD. In case there is no specified roles neither in DD nor with @DeclareRoles annotations, the container builds the list automatically by inspecting the @RolesAllowed annotation.

If the container builds the list automatically, what's the point of the @DeclareRoles annotation. Seems like unnecessary duplication to me?

I just wanted to ask about the missing Optional flag on @OneToMany, and why it doesn't exist?
Checking here: confirms that it definitely isn't present like on the other tags.

Reading EJB3 In Action, for OneToOne, they give the example of BillingInfo to a User.
A User may have 1 instance of BillingInfo, however they don't have to.
BillingInfo must have a User, or there's no point storing it.
So, on the User class, @OneToOne is used and on the BillingInfo class "optional=false" is used. Pg. 244, "This means that a BillingInfo object cannot exist without a related User object".
It also means, that the user's @OnetoOne has a defaulted optional flag of true, so a user can exist without BillingInfo.
Ok - happy.

Moving on to OneToMany they use the example of an Item and Bids.
An Item may have many bids.
Bids must related to an item or they make no sense.
So, on the Item class, a collection of Bids is used, and we're told that @ManyToOne's are always the owner (makes sense from a db point of view), so Item has the mappedBy element.
However, there is no way to set the optional flag, and I don't know why that is.
I would have suggested that if optional was 'false', it would mean the relationship wasn't optional, therefore if a item exists, it must have bids.
and I would have suggested that a true value would say that an Item can exist without bids.

Skipping forward to ManytoMany, it seems as if when you are referencing a collection, the optional flag disappears. I wonder if it is because you always have the relationship, but you just end up with an empty collection if (for example) there are no bids on an item. The relationship is always optional when referencing a collection?

Hope that makes sense - it's quite difficult to get your head around!