Java WebServices InvocationTargetException - PullRequest
0 голосов
/ 13 мая 2019

я получаю это исключение, когда пытаюсь ввести какой-либо параметр в мою веб-службу AddEmployee

По сути, я пытаюсь просто вставить некоторые данные в базу данных MS Access. Как мне кажется, лучше всего иметь класс Java, содержащий функции и веб-сервисы, которые вызывают эти функции с соответствующими параметрами, у меня есть отдельный веб-сервис для установления соединения с базой данных Я попытался сделать это без параметров, с фиктивными параметрами, без параметров и пустыми, проблема в самом веб-сервисе, функция работает просто отлично, и нет несоответствия типов данных между функцией и базой данных

Код веб-службы

@WebMethod(operationName="AddEmployee")
public String NouveauEmployee(@WebParam (name="Prenom Nom")String Nom,@WebParam(name="Matricule")Float Mat,@WebParam(name="Code Service")Float CodeSrv,@WebParam(name="Service")String Service,@WebParam(name="Code Emploi")String CodeEmp,@WebParam(name="Groupe Professionnelle")String GrpPro) {
    return EM.functions.NvEmploye("Marouane Mhaiti",1254,110,"OIS/C/M","W7845","OE/GC");
}

Код функции

public static String NvEmploye (String Nom,Integer Matricule,Integer CodeSrv,String Service,String CodeEmp,String GrpPro) {
    Connection con=conout;
    Statement sqlStatement;
    try {
        sqlStatement = con.createStatement();
    } catch (SQLException e) {
        return "Error when creating statement";
    }

    String commandString="insert into Personel ([Nom Prenom],[Matricule],[Code Service],[Service],[Code emploi],[Groupe professionnelle]) values";
    commandString+="('"+Nom+"',"+Matricule+","+CodeSrv+",'"+Service+"','"+CodeEmp+"','"+GrpPro+"')";
    try {
        sqlStatement.execute(commandString);
        return "Employee added";
    } catch (SQLException e) {
        return "error when executing statement";
    }
  }

это работает

@WebMethod(operationName="AddEmployee") public String NouveauEmployee() { return EM.functions.NvEmploye("Marouane Mhaiti",1254,110,"OIS/C/M","W7845","OE/GC"); }


Здесь я ожидаю, что из функции выскочит сообщение «Сотрудник добавлен», вместо этого он выдаст

WS00041: При вызове службы возникла исключительная ситуация с сообщением: null; Обратитесь к журналу сервера для более подробной информации Сведения об исключениях: java.lang.reflect.InvocationTargetException

в основном подача любого параметра вызывает это исключение, и я уверен, что ошибка в веб-сервисе, так как он не показывает «Ошибка при XXX» из предложений throw

PS: нет необходимости подвергать цензуре любые показанные здесь данные, все они составлены

1 Ответ

0 голосов
/ 15 мая 2019

не берите в голову людей, я нашел это, в основном просто сделаю функцию дизайна на NetBeans, я думаю, проблема была в том, что у меня были некоторые параметры, объявленные как Integer, а не int, не уверен, что это источник проблемы, но она была решена когда я использовал функцию, предоставляемую NetBeans.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...