这是使用Java在Bugzilla中创建新错误的代码。但我得到了以下错误。
BugCreator2.java:20:错误:找不到符号 factory.setHttpClient(HttpClient的); ^ 符号:方法setHttpClient(HttpClient) location:XmlRpcCommonsTransportFactor类型的变量工厂 注意:BugCreator2.java使用未经检查或不安全的操作。 注意:使用-Xlint重新编译:取消选中以获取详细信息。 1错误
我使用的Jar文件之后: 公地的HttpClient-3.0.1 Java的RT-JAR-存根-1.5.0 WS-公地UTIL-1.0.1 WS-公地UTIL-1.0.1-源 XMLRPC-3.0 XMLRPC-3.0-共同
如果所有这些都是必需的,我不知道。
import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.httpclient.HttpClient;
import org.apache.xmlrpc.XmlRpcException;
import org.apache.xmlrpc.client.XmlRpcClient;
import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
import org.apache.xmlrpc.client.XmlRpcCommonsTransportFactory;
public class BugCreator2 {
public static void main(String s[])
throws MalformedURLException, XmlRpcException {
HttpClient httpClient = new HttpClient();
XmlRpcClient rpcClient = new XmlRpcClient();
XmlRpcCommonsTransportFactory factory = new XmlRpcCommonsTransportFactory(rpcClient);
XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl();
factory.setHttpClient(httpClient);
rpcClient.setTransportFactory(factory);
config.setServerURL(new URL("http://URL/bugzilla/xmlrpc.cgi"));
rpcClient.setConfig(config);
// map of the login data
Map loginMap = new HashMap();
loginMap.put("login", "username@abc.com");
loginMap.put("password", "*********");
loginMap.put("rememberlogin", "Bugzilla_remember");
// login to bugzilla
Object loginResult = rpcClient.execute("User.login", new Object[]{loginMap});
System.err.println ("loginResult=" + loginResult);
// map of the bug data
Map bugMap = new HashMap();
bugMap.put("product", "Demo");
bugMap.put("component", "Demo_project");
bugMap.put("summary", "Bug created for test");
bugMap.put("description", "This is text ");
bugMap.put("version", "unspecified");
bugMap.put("op_sys", "Windows");
bugMap.put("platform", "PC");
bugMap.put("priority", "P2");
bugMap.put("severity", "Normal");
bugMap.put("status", "NEW");
// create bug
Object createResult = rpcClient.execute("Bug.create", new Object[]{bugMap});
System.err.println("createResult = " + createResult);
}
}
答案 0 :(得分:0)
经过多方努力,我才知道JAR版本存在问题。您需要使用精确的JARS,因为其他版本不支持某些方法。 使用的罐子: