Jens Voss

Greenhorn
+ Follow
since Jun 20, 2001
Merit badge: grant badges
For More
Cows and Likes
Cows
Total received
In last 30 days
0
Forums and Threads

Recent posts by Jens Voss


Today, I took the SCWCD exam and passed with a 92% score (with deductions as I had expected in the security, tag libs and J2EE pattern areas).
That result is a lot better than I had expected after getting only 68% on the Mock exam in the HFSJ book, but what was really helpful in the "real" exam was
1. the additional amount of time and
2. the fact that the question always specified the exact number of answers to be checked.

I could perhaps have done yet a little bit better if I had realized earlier that the HFSJ book (as great as I think it is) is not sufficient for knowing all the answers to all possible questions in the exam, something that I had unfortunately noticed too late (after I had already scheduled the exam) for completely reading and unerstanding everything in the Servlet, JSP and JSTL specs.

I would like to thank the authors of the HFSJ book - I think they have done an excellent job at writing something that is both instructive and enjoyable from start to end! My only suggestion for improvement would be to maybe make it a little clearer in the beginning of the book that on the exam you may encounter numerous questions for which, in addition to the book, you should have read the above mentioned specifications.
Thanks also to the participants of this forum; your answers (as well as questions!) have been very helpful for me!

Cheers,
Jens
15 years ago
Hi everyone,

Today I saw that I passed the B&S SCJD exam with 391 points.

A big "Thank you" to everyone in this forum; even though I did not ask an awful lot of questions here, simply by following some of the threads I think I got many valuable insights (and warnings of possible traps).

The results in the different categories were:

General Considerations (maximum = 100): 100
Documentation (maximum = 70): 70
O-O Design (maximum = 30): 30
GUI (maximum = 40): 31
Locking (maximum = 80): 80
Data store (maximum = 40): 40
Network server (maximum = 40): 40

I honestly don't know what the assessors didn't like about my GUI; I think it was clear, intuitive and very user-friendly (I provided keyboard shortcuts for everything, so the whole system could be operated entirely without the mouse); perhaps the fact that I used a GUI based on tabs (via JTabbedPane) as opposed to a menu was what they didn't like (even though I documented this choice in my choices.txt file and argued why I considered it the better alternative).

Other than that, my implementation was quite straight-forward; I used a couple of design patterns: Strategy (for the three different modes of execution), Facade (for the Data class), Singleton (for file access manager and lock manager classes), MVC (in the GUI).
For the network protocol I used Sockets; mostly because of personal taste, I could just as well have done RMI.

I did allow myself quite some time for the exam; I started off coding in April and spent about 3 to 4 hours per week - with that speed, I was more or less finished implementing in August. After that I completed the Javadoc and produced the online help system and then gave the application to some colleagues who found two small bugs and suggested a few improvements, so I went into a second implementation phase and then submitted my solution about four weeks ago (and took the exam another two weeks later).

Again, thanks to everyone for smart questions and smart answers and to Andrew for writing up all the essentials in his very good book!

Best regards,
Jens

Originally posted by Jeffry Kristianto Yanuar:
I used socket connection too, I thought I'm the only one who likes to burdening myself by using socket .



Hi Jeffry,

no, I'm with you too - I am using sockets as well, and I don't think it's that much of a burden
It may be just a matter of personal taste, but I like sockets much more because I think it is easier to contol (and customize) communication behavior.

Good luck with whatever is left with your assignment!

Regards,
Jens
Congratulations, great score!
I am not throwing a DuplicateKeyException at all in my implementation because I use the recNo (i.e. the record's position in the db file) as the primary key.

The alternative would have been a compound key consisting of the contractor name and location, but in that case the declaration of the update() method would be problematic because updating the primary key field could also cause a uniqueness violation; however the method does not declare that Exception (at least not in my B&S version (2.1.1)).

In contrast to that, the recNo of a record never changes because I don't physically delete records but just set them to "logically deleted" via the deleted flag.

Regards,
Jens
B&S, v.2.1.1, about 80% done (until last week, I was at about 90%, but did some refactoring and now need to update the documentation )

Regards,
Jens
[ June 20, 2008: Message edited by: Jens Voss ]
Congratulations, 381 is a really impressive score!



Regards,
Jens
16 years ago

Originally posted by John Donoghue:

If you want to make sure some resource is correctly handled (like shutting a file), take a look at addShutdownHook() in java.lang.Runtime. This registers methods that run as the JVM shuts down, regardless of how the shut-down is initialized (closing the GUI, the user pressing Cntl-C etc.). The SCJD book by Monkhouse & Camerlengo contains a nice description of it.



Just a little comment here: You cannot be a hundred percent certain that a registered shutdown hook is ever executed either. If you shut down the process using kill or end it via the Windows Task Manager, the shutdown hook will be bypassed, too!

Regards,
Jens


1) The requirements for the GUI functionality in the B&S state that it must allow CSRs to search contractors and book a specific record. Now, is it necessary (for the purpose of the exam) to offer the CSRs a "Remove book" functionality as well?


Since a system without an "unbook" functionality would be close to unusable, I would definitely recommend to implement it, too.


2) In the Search part of my GUI, the user can search for all records or for records that exactly match values specified by the user regarding the name and/or location fields. Then, I�m thinking of putting two comboboxes, one containing the names of all contractors and one containing all the locations, and the user simply selects one or both of the comboboxes e clicks a search button. Consequently, the search operation is less error-prone, as opposed to simply offering a textfield input control. Any shortcoming with this solution?


Yes, it it very impractical when dealing with thousands of contractors in hundreds of locations (which we should suppose B&S is aiming at )
So I think it is wiser to stick with simple text fields.


3) The DB file description says: "(...) you should assume that customers and CSRs know their customer ids. The system you are writing does not interact with these numbers, rather it simply records them." I don�t know if I understood this specification..., In my GUI, a CSR selects a register in the table, clicks a "Book" button and the application shows a dialog asking for the "customer id number", which will be used to book the selected register in the database file. Is this solution OK with the above specification?



Sounds okay with me.

Best regards and lots of fun with the assignment,
Jens
[ April 22, 2008: Message edited by: Jens Voss ]
I have a web application with JSPs that is running on Tomcat. I would like to debug the application in an IDE, but for that I need debug information in the compiled servlets.
Does anyone know of a way to tell Jasper to compile the JSPs with debug information?
Thanks,
Jens
22 years ago
JSP
Hello Timothy,
if you want to send an http request to a servlet from an applet (or, for that matter, from any other Java application), you might want to use the com.oreilly.servlet.HttpMessage class; that is doing a lot of what you programmed in your applet yourself.
Gru�,
Jens
23 years ago
Hi,
Does anyone know whether there exists a tool that searches Java code for non-public methods and fields that are never used?
Gru�,
Jens
I am using the JDBC-ODBC bridge to extract data from MS Excel (.xls) files via the Windows Excel-ODBC-driver. I would like to do the same on Solaris, and I am wondering whether there exists some (free or commercial) Excel-ODBC-Driver for Solaris.
Has anyone ever come across one?
Thanks in advance,
Jens