我有一个基本的 SOAP 服务端点,实际上是 SAP ECC,它提供了一个服务。我已经使用 SOAPUI 4.5 测试了该服务,并且使用 HTTP Auth 可以正常工作,从外观上看是先发制人的。我看到一个出站“Authorization:Basic BASE64”并且服务做出了适当的响应。
我现在正试图将其滚动到 Java 中。我认为我会采用 SAAJ 方法:
SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
SOAPConnection soapConnection = soapConnectionFactory.createConnection();
String url = "http://SAPSERVER:8006/sap/bc/srt/rfc/sap/z_lookup_generic_prototype/300/z_user/z_user_binding";
SOAPMessage message = messageFactory.createMessage();
SOAPMessage response = connection.call(message, url);
但是我找不到添加 HTTP 身份验证的方法。我相信 SAAJ 提供了控制 SOAP 消息的方法,但是如何添加身份验证呢?是否有任何替代方案值得考虑?