я получаю это исключение, когда пытаюсь ввести какой-либо параметр в мою веб-службу 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: нет необходимости подвергать цензуре любые показанные здесь данные, все они составлены