RewriteRegexRule был глючным до того, как Jetty 8.1 не позволил строке запроса работать.
Вот шаги, которые я предпринял для обновления моей установки Jetty 7:
1) Скачать копию Jetty8.1.5 и извлеките в подходящее место.
2) Скопируйте через конфигурацию из существующей установки Jetty 7
3) Получите глупую ошибку java.lang.String cannot be cast to org.eclipse.jetty.xml.XmlParser$Node
4) Найти поток рассылки определение проблемы как отсутствующего DOCTYPE в контекстных конфигах.
5) Поместить <!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
после <?xml...
строки перед <Context...
строкой.
6) Скопировать соответствующий файлфайлы для Railo CFML Servlet в каталог lib/ext
.
7) Получите загадочную ошибку: Caused by: java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lo
rg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/la
8) Отключите Railo's lib/ext/slf4j-api.jar
, который явно конфликтует с чем-то, что использует Jetty.
9) Jetty запускается, но отказывается обрабатывать контекст из-за другой ошибки: java.lang.NoSuchMethodError: org.objectweb.asm.ClassReader.accept
10) Ищите jar, связанный с org.objectweb.asm
;найдите его в lib/annotations
;не забудьте увидеть настройки, связанные с аннотациями в start.ini;отключить аннотации.
11) Наконец, Jetty успешно запускается и включает контекст.
12) Остановите Jetty, восстановите исходное правило перезаписи, перезапустите;это работает!
Теперь посмотрим, как работает перезапись контекста работает ...