2016-06-25 3 views
1

Я попытался развернуть и запускать Jetty от Ant-сценария, но получаю следующее сообщение об ошибке:развертывания Jetty: Невозможно скомпилировать класс для JSP

[jetty.run] 2016-06-25 09:16:54.333: Starting web application null 
[jetty.run] [main] WARN org.eclipse.jetty.annotations.ServletContainerInitializersStarter - 
[jetty.run] javax.servlet.ServletException: Not running on Jetty, WebSocket+CDI support unavailable 
[jetty.run]  at org.eclipse.jetty.cdi.websocket.WebSocketCdiInitializer.onStartup(WebSocketCdiInitializer.java:49) 
[jetty.run]  at org.eclipse.jetty.plus.annotation.ContainerInitializer.callStartup(ContainerInitializer.java:140) 
[jetty.run]  at org.eclipse.jetty.annotations.ServletContainerInitializersStarter.doStart(ServletContainerInitializersStarter.java:63) 
[jetty.run]  at 
... 

Он работает без развертывания, но с войной-файл Бывает. Что такое коррупция?

UPDATE:

Добавлено

<listener> 
<listener-class>org.jboss.weld.environment.servlet.Listener</listener-class> 
    </listener> 

    <resource-env-ref> 
    <description>Object factory for the CDI Bean Manager</description> 
    <resource-env-ref-name>BeanManager</resource-env-ref-name> 
    <resource-env-ref-type>javax.enterprise.inject.spi.BeanManager</resource-env-ref-type> 
    </resource-env-ref> 

в web.xml andweld банки к Lib. Теперь я получаю это:

java.lang.reflect.InvocationTargetException 
[jetty.run]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[jetty.run]  at  sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
[jetty.run]  at ... 
[jetty.run] Caused by: java.lang.IllegalStateException: Nothing to bind for name BeanManager 

UPDATE 2:

Хорошо, я не нуждался в дополнительных вещей в моей web.xml. Вместо этого я забыл добавить

<typedef name="webApp" classname="org.eclipse.jetty.ant.AntWebAppContext" classpathref="classpath" loaderref="jetty.loader"/> 

to build.xml. Теперь я могу развертывать и запускать причал, но не могу обрабатывать файлы JSP:

[jetty.run] [qtp1387380406-14] WARN org.eclipse.jetty.servlet.ServletHandler - 
[jetty.run] org.apache.jasper.JasperException: Unable to compile class for JSP 
[jetty.run]  at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:600) ... 

Почему это так?

ответ

0

Удалите с вашего проекта различные файлы cdi jetty cdi.

Те, предназначенные специально для использования jetty-distribution, являются неприемлемыми для embedded-jetty.

Используйте сварочные барабаны непосредственно в вашем военном файле вместе с различными рекомендованными конфигурациями, о которых сообщается the weld project documentation.

+0

Добавлены сварные банки и слушатель в мой web.xml. Теперь я получаю это: org.eclipse.jetty.webapp.WebAppContext - Не удалось запустить контекст ... Вызвано: java.lang.IllegalStateException: Ничего не нужно связывать для имени BeanManager – user2908112

+0

Im Я использую обмотанный причал с Ant? – user2908112