This problem occurs when trying to compile the gradebook tool with the IBM JDK. The cause of the problem is due to the use of XMLtransformer factory in the documentToString method.
line 248 of GradebookServiceInternalTest.java:
// Work around JDK 1.5 issue.
Transformer transformer = TransformerFactory.newInstance().newTransformer(); <--- fails on this line
ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
transformer.transform(new DOMSource(doc.getDocumentElement()), new StreamResult(byteOut));
error: Provider for javax.xml.transform.TransformerFactory cannot be found.
As show above, there was a workaround implemented in sakai 2.4 to deal with this problem. I tested the latest version of sakai still requires this workaround, and removing the workaround has no effect on the IBM JDK's compilation (the test still fails).
To correct this problem I suggest either researching why this workaround was needed and fixing the problem at its root, or, since the XMLtransformer is not used by gradebook production code, and is just being used by the test to play the role of an external site migration service, to rewrite the unit test to use a different service.
Marist/IBM Joint study