Я развертываю WAR на сервере Tomcat 6 или Tomcat 7 в окне Windows 2003 Server. Ошибка выглядит примерно так:Tomcat развертывание войны Grails с проблемами класса Path
java.lang.Exception: Error initializing iSec web service proxy: Unable to create JAXBContext for generated packages: "com.integrity_apps" doesnt contain ObjectFactory.class or jaxb.index.
, которого я получал ранее, когда tools.jar не был в classpath моего приложения. Я запускал приложение grails из STS с веб-контейнером по умолчанию, и я смог исправить это, переустановив JUST JDK с помощью tools.jar в каталоге lib и убедившись, что JAVA_HOME установлен правильно.
Я пробовал те же шаги на сервере - только установка JDK, следя за тем, чтобы JAVA_HOME указывал на него, и сбросил мою WAR в контейнере Tomcat. Я все еще получаю ошибку. Может ли кто-нибудь предположить, почему это может произойти?
В качестве дополнительного адресата я заметил, что если на сервере я запускаю Tomcat7.exe из командной строки напрямую (JAVA_HOME устанавливается как системная переменная), ошибка исчезает. Если я запустил его из диспетчера служб, ошибка вернется. Thanks
Я думаю, что это что-то из tools.jar или rt.jar, то есть зависимость JAXB. Я не думаю, что написал код, явно требующий ObjectFactory. Я добавил файл datapoint о попытке запустить его на сервере win2003. – Derek
ObjectFactory неявно используется инфраструктурой JAXB. Ваша новая точка данных, по-видимому, предполагает, что при запуске из командной строки и из диспетчера служб используется другая установка JVM? Я думаю, что, возможно, одна установка вашего JVM содержит классы пакета «com.integrity_apps», а другая - нет. – Alvin