我正在遵循一个相当有用的在线教程来创建一个使用 mysql 调用存储过程的肥皂服务器。这工作得很好,我得到的代码可以使用像 SoapUI 这样的程序正确响应。代码如下:
@WebService
public class test {
@WebMethod
public String login(String username, String password) throws SQLException {
String url = "jdbc:mysql://localhost:3306/test";
String DBusername = "test";
String DBpassword = "test";
Connection con = DriverManager.getConnection(url, DBusername, DBpassword);
Statement stmt = null;
String query = " CALL authorize_user('" + username + "','" + password + "')";
try {
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
String login = rs.getString("au_result");
if (login != null)
return login;
else {
return "Login Failed";
}
}
} catch (SQLException e) {
System.out.println("Error: " + e);
} finally {
if (stmt != null) {
stmt.close();
}
}
return "Login Failed";
}
public static void main(String[] args) {
test test = new test();
@SuppressWarnings("unused")
Endpoint endpoint = Endpoint.publish("http://localhost/testing", test);
}
}
因此,当您输入数据库中的用户名和密码时,它会返回一个肯定的结果。这只是测试代码,因为可能会按照现在的设置方式注入代码,但很快就会改变。
但是,我正在尝试找到一种为此服务器使用 SSL 的方法,而我能找到的唯一信息是如何在使用包装程序或某些 servlet 包装器创建肥皂服务器时使用 SSL。在这一点上我们不想走这条路,除非我们能找到一个非常非常好的理由来浪费时间学习新代码。我将如何在不使用任何第三方代码的情况下为此代码使用 SSL 连接?我们已经拥有一家信誉良好的公司的证书,该证书在我们的常规网站的服务器上运行。