Java (Eclipse) 中的 WSDL 连接问题
WSDL Connection Issue in Java (Eclipse)
我正在尝试连接到 WSDL 文件并不断收到此错误:
Bad auth String (could not parse username/password): String index out of range: -1
我能够毫无错误地连接到本地 WSDL 文件,但现在我正在尝试连接外部服务器上的文件。我获得了用户名和密码,但不确定如何传递这些参数。
这里是我输入登录凭据的地方:
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage soapMessage = messageFactory.createMessage();
String loginPassword = "myusername:mypassword";
soapMessage.getMimeHeaders().addHeader("Authorization", "Basic " + loginPassword);
另一方面,我在 Soap Request 之后和 Soap Response 之后打印语句,这似乎有效。 Bad auth String (could not parse username/password): String index out of range: -1
我知道这是更安全的输入用户名和密码的方法,但此时我只是想成功拨打电话。
基本身份验证的用户名密码是 Base 64 编码的。希望这会有所帮助。
我有一个用于 Inputstream 的基本身份验证示例:-
public static InputStream getInputStream(String location) throws IOException {
URL url = new URL(location);
URLConnection uc = url.openConnection();
String username = "";
String password = "";
String userpass = username + ":" + password;
String basicAuth = "Basic "
+ javax.xml.bind.DatatypeConverter.printBase64Binary(userpass
.getBytes());
uc.setRequestProperty("Authorization", basicAuth);
return uc.getInputStream();
}
另一种非常不安全的方法是 http://user:password@www.example.com。仅在开发人员环境中使用它。
我正在尝试连接到 WSDL 文件并不断收到此错误:
Bad auth String (could not parse username/password): String index out of range: -1
我能够毫无错误地连接到本地 WSDL 文件,但现在我正在尝试连接外部服务器上的文件。我获得了用户名和密码,但不确定如何传递这些参数。
这里是我输入登录凭据的地方:
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage soapMessage = messageFactory.createMessage();
String loginPassword = "myusername:mypassword";
soapMessage.getMimeHeaders().addHeader("Authorization", "Basic " + loginPassword);
另一方面,我在 Soap Request 之后和 Soap Response 之后打印语句,这似乎有效。 Bad auth String (could not parse username/password): String index out of range: -1
我知道这是更安全的输入用户名和密码的方法,但此时我只是想成功拨打电话。
基本身份验证的用户名密码是 Base 64 编码的。希望这会有所帮助。
我有一个用于 Inputstream 的基本身份验证示例:-
public static InputStream getInputStream(String location) throws IOException {
URL url = new URL(location);
URLConnection uc = url.openConnection();
String username = "";
String password = "";
String userpass = username + ":" + password;
String basicAuth = "Basic "
+ javax.xml.bind.DatatypeConverter.printBase64Binary(userpass
.getBytes());
uc.setRequestProperty("Authorization", basicAuth);
return uc.getInputStream();
}
另一种非常不安全的方法是 http://user:password@www.example.com。仅在开发人员环境中使用它。