我使用soapUI 和apache-cxf-2.7.2 创建了https Web 服务的客户端代码。有一个名为 MYService_BasicEndpoint_Client.java 的类包含此方法:
public static void main(String args[]) throws java.lang.Exception {
URL wsdlURL = MYServiceWcf.WSDL_LOCATION;
if (args.length > 0 && args[0] != null && !"".equals(args[0])) {
File wsdlFile = new File(args[0]);
try {
if (wsdlFile.exists()) {
wsdlURL = wsdlFile.toURI().toURL();
} else {
wsdlURL = new URL(args[0]);
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
MYServiceWcf ss = new MYServiceWcf(wsdlURL, SERVICE_NAME);
IMYService port = ss.getBasicEndpoint();
port.webserviceMethod();
}
但是当我运行它时,结果是 http 响应 401(未经授权),因为没有任何选项可以设置 https 网络服务的用户名和密码。但我可以在soapUI 中运行此服务的测试用例,因为可以选择为端点设置用户名和密码。如何在上面由 soapUI 和 apache-cxf-2.7.2 创建的代码中设置它们?