Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.0.3
-
Fix Version/s: 1.1-beta-1
-
Component/s: XMLRPC Interface
-
Labels:None
-
Complexity:Intermediate
-
Number of attachments :
Description
I'm writing a small application that's intended to consolidate all build goals and arguments for all our projects in continuum:
Client:
—
String address = "http://continuumhost:8000/continuum";
ProjectsReader reader = new ProjectsReader(new URL(address));
for (Project project : reader.readProjects()) {
// reader.refreshProject(project);
List<BuildDefinition> defs = project.getBuildDefinitions();
if (defs != null && defs.size() == 1) {
for (BuildDefinition def : defs) {
def.setGoals("clean deploy site:site site:deploy eclipse:eclipse scm:checkin");
def.setArguments("--batch-mode --non-recursive -Dincludes=\".project .classpath .settings\" -Dmessage=\"continuum checkin of generated eclipse files\"");
}
}
else {
System.out.println("Project " + project.getId() + " " + project.getName() + " has not exactly one build");
}
reader.editProject(project);
—
Exception:
—
Exception in thread "main" org.apache.xmlrpc.XmlRpcException: java.lang.NoSuchMethodException: org.apache.maven.continuum.xmlrpc.DefaultContinuumXmlRpc.updatenullProject(java.util.Hashtable)
at org.apache.xmlrpc.XmlRpcClientResponseProcessor.decodeException(XmlRpcClientResponseProcessor.java:102)
at org.apache.xmlrpc.XmlRpcClientResponseProcessor.decodeResponse(XmlRpcClientResponseProcessor.java:69)
at org.apache.xmlrpc.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:72)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:193)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:184)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:177)
at org.apache.maven.continuum.rpc.ProjectsReader.editProject(ProjectsReader.java:127)
at SampleClient.main(SampleClient.java:55)
—
It doesn't matter wether or not "reader.refreshProject(project);" is active. Am I doing something wrong here or is this a bug? The documentation only shows how to read a project...
Now, the projec can be edited