У меня есть простой веб-сервис, использующий базу данных оракула. Когда я тестирую службу изнутри, она работает нормально, однако вызов веб-службы через мой клиент (на том же компьютере, но в другой WAR) вызывает invocationtargetexception. Наконец-то я обнаружил, что это проблема с созданием экземпляра OracleDriver. Он вообще не вызывает никаких исключений, поэтому я не могу понять, в чем ошибка.
Google только предоставил решение с использованием oracle.jdbc.driver.OracleDriver вместо oracle.jdbc.OracleDriver, но это, похоже, ничего не исправляет. Я использую jar-файл ojdbc14.jar, и, насколько я могу судить, он правильно включен в путь к классу для веб-службы ... поскольку он работает, когда я тестирую службу с помощью простого основного метода.
РЕДАКТИРОВАТЬ: InvocationTargetException генерируется AxisFault с сервера Axis. Invocationtargetexception - это класс-оболочка, и мои попытки извлечь исключение с помощью .getCause () всегда возвращают null.
Я развертываю службу с помощью jboss и включаю файл JAR драйвера в библиотеку для источника, но не для сервера. Включение драйвера в / jboss / server / default / lib разрешило это.