2013-04-09 1 views
0

Я переношу свое приложение с Jetty 7 на Jetty 8, и все идет не так хорошо. Битва в настоящее время находится в etc/jetty-webapps.xml. До этой миграции, наша конфигурация всегда установить значение «ложное»Я не могу получить Jetty8 etc/jetty-webapps.xml extractWars = «false» для работы

<Configure id="Server" class="org.eclipse.jetty.server.Server"> 
    <Ref id="DeploymentManager"> 
    <Call id="webappprovider" name="addAppProvider"> 
     <Arg> 
     <New class="org.eclipse.jetty.deploy.providers.WebAppProvider"> 
      <Set name="monitoredDirName"><Property name="jetty.home" default="." />/webapps</Set> 
      <Set name="defaultsDescriptor"><Property name="jetty.home" default="."/>/etc/webdefault.xml</Set> 
      <Set name="scanInterval">1</Set> 
      <Set name="contextXmlDir"><Property name="jetty.home" default="." />/contexts</Set> 
      <Set name="extractWars">false</Set> 
     </New> 
     </Arg> 
    </Call> 
    </Ref> 

При попытке бен/jetty.sh начать с этим значением, установленным на «ложь» Причал извергает исключения, как .. .

2013-04-08 17:33:03.380:INFO:oejd.DeploymentManager:Deployable added: /Users/bobk/work/workspace/DM_Server/build/distributions/device-management-1.6.5-DEVELOP-dev/webapps/root.war 
2013-04-08 17:33:04.526:WARN:oejw.WebAppClassLoader:EXCEPTION 
java.lang.IllegalArgumentException: !file: jar:file:/Users/bobk/work/workspace/DM_Server/build/distributions/device-management-1.6.5-DEVELOP-dev/webapps/root.war!/WEB-INF/lib/guava-14.0.1.jar 
    at org.eclipse.jetty.webapp.WebAppClassLoader.addClassPath(WebAppClassLoader.java:245) 
    at org.eclipse.jetty.webapp.WebAppClassLoader.addJars(WebAppClassLoader.java:282) 
    blah...blah...blah... 

... для каждого файла Jar в каталоге WEB-INF/lib моей WAR. Я могу заставить jetty.sh начать успешно загружать мой webapp, если я изменю значение extractWars в etc/jetty-webapps.xml от «false» до «true». Как я уже сказал, это значение было «ложным» с Jetty 6, и это разочаровывает, что он больше не работает.

Является ли «ложным» даже законным образом? Если это так, что еще мне нужно установить, отключить, включить в каталог etc /, файл jetty.conf или start.ini, чтобы заставить это работать?

Любая помощь очень ценится.

+0

Это как-то связано с этим: http://jira.codehaus.org/browse/JETTY-1531. Но свойства copyWebInf и copyWebDir, о которых он говорит, нигде не встречаются в классе Jetty 8 WebAppProvider. Argh. –

+0

2 дня и, сверчки. Google ничего не появляется. Единственная документация Jetty для случая «истина». Это делает менее полезный параметр, нет? –

+0

«! File:» часть сообщения об ошибке указывает, что URL-адрес не начинается с «file: //», чего нет. он начинается с «jar: file: /». Не уверен, как это поможет, но это, по крайней мере, немного переводит сообщение об ошибке. –

ответ

3

Боб,

Исправлена ​​ошибка трекера и все DOCO для молы-7,8 и 9 находится над в Eclipse, здесь: http://www.eclipse.org/jetty/

IIRC, в причалу-6, несмотря на то, extractWar значение ЛОЖЬ , under-the-cover причал извлекал и копировал каталог WEB-INF для преодоления проблем под окнами с горячей перераспределением. Так что, даже если вы считали, что не занимаетесь полной войной, по крайней мере, часть ее была в любом случае.

С причалом-7,8,9 мы подчиняемся настройкам extractWar, copyWebInf, copyWebDir точно. Значение по умолчанию - извлекать - каждая итерация спецификации сервлета поощряла извлечение, так как есть больше возможностей, которые лучше всего работают на распакованной войне.

Jan

+1

Итак, я думаю, вы говорите, что единственное значение, которое работает, является «истинным» и что все предыдущие Jetty мне лгали, принимая мою «ложную» настройку, но, тем не менее, извлекая WAR. Я как-то решил, что мне все равно, извлечет ли он это или нет, поэтому я собираюсь с «правдой», так как он останавливает стеки и кажется, что все работает. Должен признаться, что я недостаточно разбираюсь в документации Jetty и нашел единственный способ выяснить, что Jetty должен прочитать исходный код. В очередной раз благодарим за помощь. –

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

  • Нет связанных вопросов^_^