2016-06-05 6 views
0

Ich möchte Daten aus MySQL-Datenbank abrufen über Web-Service in Java geschrieben mit SOAP und WSDL Ich habe den Code geschrieben und getestet in der Hauptfunktion und funktioniert gut, aber wenn ich es bereitstellen, wird das Ergebnis auf 0 gesetzt, wenn ich den Glassfish Server als Client benutze und hier ist der Code.Daten können nicht aus der Datenbank mit SOAP-Webdienst in Java mit WSDL (Glassfish Server) abgerufen werden

@WebService(endpointInterface = "javasamples.two.Users") 

public class UsersImpl implementiert Benutzer {

public int getUserCount() { 
    int numusers = 0; 
    String dbUrl = "jdbc:mysql://localhost:3306/javasql"; 
    String dbClass = "com.mysql.jdbc.Driver"; 
    String query = "Select count(*) FROM user"; 
    String userName = "root", password = "admin"; 
    try { 

    Class.forName("com.mysql.jdbc.Driver"); 
    Connection con = DriverManager.getConnection (dbUrl, userName, password); 
    Statement stmt = con.createStatement(); 
    ResultSet rs = stmt.executeQuery(query); 

    while (rs.next()) { 
     numusers = rs.getInt(1); 
     } //end while 
     con.close(); 
    } //end try 

    catch(ClassNotFoundException e) { 
     e.printStackTrace(); 
    } 

    catch(SQLException e) { 
     e.printStackTrace(); 
    } 
    finally { 

     return numusers; 
    } 

} 

}

und das Interface-Code ist

@WebService 

@SOAPBinding (style = Style.RPC) öffentliche Schnittstelle Benutzer {

@WebMethod 
int getUserCount(); 

}

Antwort

0

Ich denke, Sie sollten die Verbindung innerhalb des try-Schleife nicht in der schließlich ein in der Nähe!