所以我想找到一种通过身份验证动态调用Web服务操作的方法。
这是我发现的。
答案 0 :(得分:2)
以下是如何使用apache cxf创建动态Web服务客户端的示例,避免“未找到名称操作”未经检查的异常并使用身份验证。
DynamicClientFactory dcf = DynamicClientFactory.newInstance();
Client client = dcf.createClient("WSDL Location");
AuthorizationPolicy authorization = ((HTTPConduit) client.getConduit()).getAuthorization();
authorization.setUserName(
"user name"
);
authorization.setPassword(
"password"
);
Object[] res = client.invoke(new QName("http://targetNameSpace/", "operationName"), params...);
System.out.println("Echo response: " + res[0]);
名称空间的新QName修复了异常。
享受。