我的應用程序:Netbeans(8.0.1),Apache TomcatWebservice with Return
我在這裏有一個Webservice和Webmethod。 用戶應該插入一個數字(Sozialversicherungsnummer(SVN))。他應該返回相應的名稱(「Nachname」)。數據庫中的表稱爲「kunden」。字段:「Sozialversicherungsnummer」和「Nachname」。
@WebMethod(operationName = "SVN-Abfrage")
public String svn(int SVN)
{
try
{
connection = DriverManager.getConnection(
DATABASE_URL, USERNAME, PASSWORD);
statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT Nachname FROM kunden WHERE Sozialversicherungsnummer='" + SVN +"'");
// if requested seat is available, reserve it
if (resultSet.next())
{
return resultSet.getString("Nachname");
} // end if
return "fehler";
} // end try
catch (SQLException e)
{
e.printStackTrace();
return ("1");
} // end catch
catch (Exception e)
{
e.printStackTrace();
return ("2");
} // end catch
finally
{
try
{
statement.close();
connection.close();
} // end try
catch (Exception e)
{
e.printStackTrace();
return ("3");
} // end catch
} // end finally
} // end WebMethod
我用SOAP UI測試Webservice。不幸的是,我的代碼存在錯誤。
我總是得到「3」作爲回報。當我刪除我的「最後」部分時,我得到「1」作爲回報。當我也刪除這個,我得到「2」作爲回報...不要緊,我插入:任何數字像「123」或從數據庫中的右邊「Sozialversicherungsnummer」應該工作。
我想從用戶那裏得到一個Integer,並返回一個相應的Name(「Nachname」)。更復雜,因爲我認爲: -/
如果有人可以幫助我會友好。
格爾茨
您能得到什麼?是否有錯誤或「找不到記錄」? – Bhaskara 2014-12-09 11:34:37
我更新了問題。 - >我總是得到「3」作爲回報。當我刪除我的「最後」部分時,我得到「1」作爲回報。當我也刪除這個,我得到「2」作爲回報...不要緊,我插入:任何數字像「123」或從數據庫中的右邊「Sozialversicherungsnummer」應該工作。 – user3497759 2014-12-09 22:33:04
嘗試直接在後端數據庫上執行該SQL語句。如果數據庫成功生成所需的結果集,那麼將其嵌入到Java代碼中,最後如果Java代碼成功,則實現您感興趣的Web服務。 – Tiny 2014-12-09 22:39:42