2010-05-10 2 views
0

Могу ли я запустить войну Grails под Tomcat на машине без JDK (только JRE)?Могу ли я запустить войну Grails под Tomcat на машине без JDK (только JRE)?

У меня есть приложение Grails, которое отлично работает в grails run-war или на отдельном сервере tomcat на том же компьютере.

Когда я развертываю это .war на сервере с JDK, у меня нет проблем.

Когда я пытаюсь сделать это на сервере с только JRE, приложение не будет работать.

спецификации:

Grails приложение:

  • Grails 1.2.2.
  • groovyWS,
  • Шаблоны i18n

DEV шт:

  • Win XP sp3
  • 2gb баран
  • Athlon 64 х 2
  • Java: Строим 1.6.0_20-b02 (JDK)
  • кот: 6.0.24 (тест 1)
  • Tomcat 5.5 (тест 2)

сервера, которые не работают:

  • так: сервер окон 2003
  • сервер приложений: tomcat 2.2 как услуга,
  • java: 1.6.0.18, (ТОЛЬКО JRE)
  • wsclient: groovyws-0.5.1.jar (минимальный) (и все depenedncies добавленные вручную)

StackTrace

[ERROR] IOException during exec() of compiler "javac". Check your path environment variable. 
2010-03-18 15:55:23,522 [http-8080-1] ERROR dynamic.DynamicClientFactory - Could not compile java files for http://SOMEURL/SOMEWS.asmx?WSDL. 
2010-03-18 15:55:23,553 [http-8080-1] ERROR errors.GrailsExceptionResolver - "org.tempuri" doesnt contain ObjectFactory.class or jaxb.index 
javax.xml.bind.JAXBException: "org.tempuri" doesnt contain ObjectFactory.class or jaxb.index 
    at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:197) 
    at javax.xml.bind.ContextFinder.newInstance(Unknown Source) 
    at javax.xml.bind.ContextFinder.find(Unknown Source) 
    at javax.xml.bind.JAXBContext.newInstance(Unknown Source) 
    at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:349) 
    at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:196) 
    at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:175) 
    at groovyx.net.ws.AbstractCXFWSClient.createClient(AbstractCXFWSClient.java:198) 
    at groovyx.net.ws.WSClient.initialize(WSClient.java:107) 
    at groovyx.net.ws.IWSClient$initialize.call(Unknown Source) 
+0

Могу ли я запустить войну Grails под Tomcat на машине без JDK (только JRE) ?: вопрос будет: «Могу ли я запустить войну с веб-сервисами на машине без JDK»: ответ будет отрицательным. – jspairani

ответ

3

GroovyWS требует javac для динамического создания заглушек, поэтому для этого требуется JDK.

+0

«Могу ли я запустить войну с веб-сервисами на машине без JDK»: ответ будет отрицательным. как сказал Вандерсон, требуется jdk, другое дело, что оно должно быть на пути. – jspairani

0

потребность JSP, чтобы быть скомпилированы (даже если они в войне), поэтому для этого должен быть компилятор. Вы не можете просто использовать JRE. Это для Java-материала, для groovy его наиболее вероятно то же самое.

+0

, так что это может быть JDK, это не путь только java_home. (не могу проверить, парень @ отключает сервер на сегодня = /). Я догадался, что вопрос будет: Могу ли я использовать войну Grails с java_home не по пути? – jspairani

Смежные вопросы