У меня проблема с WSO2 Api Manager 1.7 SOAP API.
Я зарегистрировал много арендаторов в моем Api Manager, и я создал много API для каждого, и я создал API для супер супер администратора (tenant -1234).
Я создал клиент веб-сервиса из этого wsdl-url https://<.AM_IP>:<.AM_PORT>/services/API?wsdl
с командной строкой wsimport (Axis2).WSO2 get api list SOAP request
Если я звоню getAPIArtifactIDs
с полномочиями администратора Carbon Tenant, я могу получить список идентификаторов артефактов api.
Если я звоню getAPIArtifactIDs
операции с другими учетными данными арендатора У меня есть пустой список.
Как я могу решить эту проблему?
Это мой код:
System.getProperties().setProperty("javax.net.ssl.trustStore", "wso2carbon.jks");<br>
System.getProperties().setProperty("javax.net.ssl.trustStorePassword", "wso2carbon");<br>
System.getProperties().setProperty("javax.net.ssl.trustStoreType", "JKS");<br>
HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() {
@Override
public boolean verify(String hostname, SSLSession session) {
return true;
}
});
API api = new API();
APIPortType port = api.getAPIHttpsSoap11Endpoint();
BindingProvider bp = (BindingProvider)port;
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "https://<.AM_IP>:<.AM_PORT>/services/API.APIHttpsSoap11Endpoint");<br>
bp.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "admin");<br>
bp.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "admin");<br>
List<String> ids = port.getAPIArtifactIDs();
if(ids!=null && !ids.isEmpty())
for(String id : ids)
System.out.println(id);
Можете ли вы попробовать с клиентом soapui, убедитесь, что вы получили ответ с клиентами-арендаторами. если он работает с клиентом soapui, тогда вам нужно проверить свой код. – Jenananthan