How to create a prog question?

Programming Task (ProgTask) exams are a new, innovative type of JavaBlackBelt exam.
Instead of just answering multiple choice questions, users actually program during an exam.

Concept

You write questions and send them in a jar file to JavaBlackBelt. This jar contains editable and NON-editable Java sources, solution files (text) and a JUnit test class.

NOTE: editable Java sources are noted in the manifest of the jar. These editable sources contain errors. These are the sources that exam-takers will receive -- the sources that they may edit.
When the exam-takers think the answer is correct, they can submit it.

The JUnit test we got from the question author will now run using the modifications the exam- taker submitted.

Writing questions

Like for multiple-choice exams, when you want to author a ProgTask question, first you choose the QuestDef for which you want to author a question.
If you want to choose among all categories you can also choose "author a prog question" in the "contribute" menu.

exam-taker edits the sources img

On the question edit page, you can download a sample project. This is a "Hello World" project that shows everything that your jar must contain. You can see more details in the readme file of the project
You can work in the same project or create another project into which you will copy the ANT script that creates the jar. BUT PLEASE, don't forget to remove all of the HelloWorld classes BEFORE creating the jar.
Make sure your Junit test contains a "suite" method like in the HelloWorld project.
In the build properties files, specify the editable files and the test class. These specifications will be copied automatically into the manifest.

The editable files MUST contain errors. The correct version(s) of the code must be provided in a solution file(s).

NOTE: every editable class must have a solution file. When your jar is created, put it in the dist directory of your project. Then you can upload the jar to JavaBlackBelt.

JavaBlackBelt admins will verify that your code (the solution version) compiles and runs, after which the question will be made available for questionnaires.