В настоящее время я использую IDE NetBeans, поэтому я хочу разместить WebService и использовать его через J2ME. Все идет хорошо (от написания класса веб-службы, развертывания веб-сервера, получения URL-адреса для WSDL, создания клиента веб-службы Java ME, а затем, наконец, вызова методов).
В настоящее время мой WebMethod login()
выглядит так:
@WebMethod(operationName = "login")
public boolean login(@WebParam(name = "username") String username, @WebParam(name = "password") String password) {
boolean result = false;
System.out.println(username + password);
try {
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url + dbName, dbUsername, dbPassword);
Statement st = conn.createStatement();
ResultSet res = st.executeQuery("SELECT COUNT(*) FROM Account WHERE Username = "
+ "'" + username + "' AND Password = '" + password + "'");
res.next();
int i = res.getInt(1);
if (i == 1) {
result = true;
}
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
Итак, я перехожу к своему приложению J2ME, создаю клиент веб-службы Java ME, вводю WSDL для этого класса и пишу следующую строку кода для вызова веб-службы:
FirefighterService service = new FirefighterSerivce_Stub();
try {
if (service.login("admin", "admin"); {
System.out.println("success"); }
else {
System.out.println("failure"); }
} catch (Exception e) {
e.printStackTrace();
}
Это ДОЛЖНО работать. Я проверил свою строку кода в консольном приложении Java, и она отлично работала (подключение к базе данных, выбор, а затем печать результата). Результатом должен быть «успех». Но когда я звоню через веб-сервис, я всегда получаю "сбой" ...
Если это поможет, я много ссылался на этот урок. http://nandokakimoto.wordpress.com/2009/03/15/creating-a-j2me-web-service-client/
Кто-нибудь знает, где я облажался? (