Я пытаюсь создать способ извлечения из хэш-таблицы идентификатора authorID для имени статьи, которое вводит пользователь. Вот код, который активируется на стороне клиента, когда пользователь нажимает на кнопку:не печатать в текстовое поле
public String getAuthorID() // returns a String
{
try
{
articleName = txtArticleName.getText();
argAuthorID = new Vector();// create vector for the args
argAuthorID.addElement(articleName);// name to search for to get AuthorID
// make the call to the server
authorIDVector = (Integer)client.execute("GetSize.sendAuthorID", argAuthorID);
System.out.println(argAuthorID);
}
catch (XmlRpcException exception) {
System.err.println("JavaClient: XML-RPC Consumer Fault #" +
Integer.toString(exception.code) + ": " +
exception.getCause() + "" + exception.toString());
} catch (Exception exception) {
System.err.println("JavaClient: XML-RPC Consumer Fault #" + exception.toString());
}
String StrAuthorID = Integer.toString(authorID); // Cast AuthorID to String
return StrAuthorID;
}
Это метод на стороне сервера:
public int sendAuthorID(String articleNameRequest) {
// get info from the hashtable
aNumber = (Integer) theHashtable.getAuthorID(articleNameRequest); // was this.
return aNumber;
}
Это код в класс, который содержит хэш-таблица:
public int getAuthorID(String articleName)
{
int intfoundit;
String foundit = (String)hashtab.get(articleName);
System.out.print(foundit);
intfoundit = Integer.parseInt(foundit);
System.out.print(foundit);
System.out.print(intfoundit);
return intfoundit;
}
Программа может извлекать идентификатор AuthorID, но не вводит его в текстовое поле. С помощью тестирования я обнаружил, что было брошено исключение этого кода:
catch (XmlRpcException exception) {
System.err.println("JavaClient: XML-RPC Consumer Fault #" +
Integer.toString(exception.code) + ": " +
exception.getCause() + "" + exception.toString());
Это ошибка, которая дается:
«JavaClient: XML-RPC Consumer Fault # 0: nullorg.apache. xmlrpc.XmlRpcException: java.lang.Exception: java.lang.NumberFormatException: Для ввода строки: «3377»»
UPDATE: убрана пространство перед идентификационным номером в хэш-таблице и не бросаться ошибка anym но он по-прежнему не вводит идентификационный номер в текстовое поле, а просто вводит '0'
Я только что сделал это, и он исправил проблему, но метод по-видимому, фактически не возвращает идентификационный номер по какой-либо причине –