EE417 Home‎ > ‎

Frequently Asked Questions

Currently there are not many frequently asked questions listed below. However, I hope to add to them as the years progress. Please let me know if there are any questions that you feel should be added to this section. Queries regarding the content of the course should preferably be sent to the mailing list, in an effort to share resources with all module participants. The more frequent questions will be added to this FAQ list.

David

Questions

  1. Can you tell me what type of prerequisite skill level is required of Java in order to complete the Server-Side Development module? Is (C/C++/etc.) sufficient?
  2. What are the differences between the varying material formats linked from the main course page?
  3. I get the following warning when I attempt to compile the servlet examples: The serializable class HelloWorld does not declare a static final serialVersionUID field of type long? What is causing this and should I be concerned?
  4. I had some troubles installing the Tomcat plugin for Eclipse : I have unzipped the zip file into the plugins directory and then restart Eclipse but nothing seems to have changed in the Eclipse interface?

Question #1: "Can you tell me what type of prerequisite skill level is required of Java and other programming languages in order to complete the Server-Side Development module? Is (C/C++/etc.) sufficient?

Students who have no background in Java, but have C or C++, may find the module a little harder, but not by much. Students who have C or non object-oriented languages might find the concepts harder to handle.

In the end, it will come down to the student's individual judgment call on this. What I suggest is to work a little ahead to the Java Servlets and JSP sections and try and make your way through the material. These chapters provide some practical examples, as well as suggested examples for you to try. Try them and see how you get on! In addition I would suggest that you try some of the Java tutorials I have linked from the main course page to help you overall. Try these steps and see how you get on - I will be making various assumptions about students (knowing what an API is, being able to compile etc.) as I work through the subsequent material, so please carefully consider your options.

Question #2: "What are the differences between the varying material formats linked from the main course page?"

HTML: This is the principal view for students using the course material.  All of the course material, videos, PowerPoint slides and resources have been hyperlinked and made available in this format.  The format should display suitably on handheld devices and should be viewable the same as any normal web page.

Print Format: The print format is essentially the HTML format again, but without the navigation system.  If you are browsing any particular page and decide that you wish to print that page, you should select the 'Print Page' option at the very bottom of the page.  This will remove the navigation side and top bars and allow only the content to be printed (which is probably what you want).  

PowerPoint slides: have been provided and loosely labeled 'Lecture 1' up to 'Lecture X'. This is only a rough guideline as frequently we might cover two of these files in a particular 3-hour lecture, while at other times covering 75% of another file. These PPT files are not intended to be used exclusively - they are summarised bullet-points used for the live-lectures. Students have requested in the past that these lecturer slides be made available, as some students find them particularly useful for revision.  Warning: merely studying the PowerPoint slides will not cover all of the examinable material.  

Video Files: these are the recordings of the lectures as they take place in DCU.  These videos are typically made available within 24-48 hours after the lecture takes place (video rendering/editing takes time!).  They contain, in effect, the lecture.

Question #3: "I get the following warning when I attempt to compile the servlet examples: The serializable class HelloWorld does not declare a static final serialVersionUID field of type long? What is causing this and should I be concerned?"

This means you have a serializable class but have not declared the serialVersionUID field. As described at this link, "it is strongly recommended that all serializable classes explicitly declare serialVersionUID values, since the default serialVersionUID computation is highly sensitive to class details that may vary depending on compiler implementations, and can thus result in unexpected InvalidClassExceptions during deserialization.".

However, what does this mean to me? All I'm trying to do is get some simple servlets to compile!
Well it actually means very little. In the examples we are not attempting to serialise the servlets, so the WARNING isn't a major concern. When you write a servlet, you typically write "extends HttpServlet". javax.servlet.http.HttpServlet implements Serializable. Hence, your servlet *should* technically declare a serialVersionUID.

So what are my options?
You can do either of the following:
A) Ignore the warning - after all it's only a warning. Or turn the warning off in Eclipse     or 
B) Add the following line to your Servlet, just below your 'public class ...' line:
private static final long serialVersionUID = 1L;

This will make the warning go away, as you have now declared a SerialVersionUID.

Final Note: Earlier versions of the JDK didn't enforce the WARNING, so if you are using an "old" JDK, then you might not ever encounter this issue.

Question #4: "I had some troubles installing the Tomcat plugin for Eclipse : I have unzipped the zip file into the plugins directory and then restart Eclipse but nothing seems to have changed in the Eclipse interface."

 You should launch eclipse once using this option : -clean
Comments