我当前正在使用NetBeans IDE,因此我想托管一个WebService并通过J2ME使用它。一切顺利(从编写Web服务类,部署Web服务器,获取WSDL的URL,创建Java ME Web服务客户端,然后最终调用方法)。

当前,我的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 Web Service客户端,输入此类的WSDL,然后编写以下代码行来调用Web服务:

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控制台应用程序中测试了我的代码行,并且该代码行之有效(连接到数据库,选择并打印结果)。结果应该是“成功”。但是,当我通过Web服务调用它时,总是会收到“失败”的信息...

如果有帮助,我从本教程中引用了很多内容。 http://nandokakimoto.wordpress.com/2009/03/15/creating-a-j2me-web-service-client/

有人对我可能搞砸的地方有任何线索吗? :(

最佳答案

很好...我忘了将驱动程序包含到我的Web应用程序中。我很烂,我知道。

10-08 08:40
查看更多