2014-07-21 2 views
1

javaee7 jsf2.2 및 cdi 및 jetty-maven-plugin에 대한 종속성이있는 maven 프로젝트가 있습니다.maven 프로젝트와 jetty-maven-plugin 및 cdi가 작동하지 않습니다.

프로젝트는 cdi를 제외하고는 정상적으로 작동합니다. 어떤 구성 파일이 필요한지 그리고 어디에 넣을 지 파악할 수 없습니다. 이것에 대한 유일한 예제 프로젝트는 jetty6 및 jsf2.0이있는 곳을 찾을 수 있으며 그 중 일부는 작동하지 않습니다.

내 파일 구조에 대한 내 pom.xml 및 스크린 샷입니다.

file structure

어떤 도움 또는 작업 예제 프로젝트

<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
    http://maven.apache.org/maven-v4_0_0.xsd"> 
<!-- pom.xml specification version --> 
<modelVersion>4.0.0</modelVersion> 

<!-- project settings --> 
<groupId>de.beans</groupId> 
<artifactId>cdi-test</artifactId> 
<version>0.1</version> 
<name>test</name> 
<packaging>war</packaging> 

<!-- project module dependencies --> 
<dependencies> 
    <dependency> 
     <groupId>com.sun.faces</groupId> 
     <artifactId>jsf-api</artifactId> 
     <version>2.2.6</version> 
    </dependency> 
    <dependency> 
     <groupId>com.sun.faces</groupId> 
     <artifactId>jsf-impl</artifactId> 
     <version>2.2.6</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.enterprise</groupId> 
     <artifactId>cdi-api</artifactId> 
     <version>1.2</version> 
    </dependency> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-api</artifactId> 
     <version>7.0</version> 
    </dependency> 
    <dependency> 
     <groupId>org.jboss.weld.servlet</groupId> 
     <artifactId>weld-servlet</artifactId> 
     <version>2.2.3.Final</version> 
    </dependency> 
</dependencies> 

<!-- project maven plugins --> 
<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>3.1</version> 
      <configuration> 
       <source>1.7</source> 
       <target>1.7</target> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.eclipse.jetty</groupId> 
      <artifactId>jetty-maven-plugin</artifactId> 
      <version>9.2.0.v20140526</version> 
      <configuration> 
       <scanIntervalSeconds>1</scanIntervalSeconds> 
       <webApp> 
        <contextPath>/</contextPath> 
       </webApp> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-war-plugin</artifactId> 
      <version>2.4</version> 
      <configuration> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
은 크게 감상 할 수있다.

편집 : stackoverflow answer 은 위의 새 파일 구조를 볼 수 있습니다 :이 게시물에 설명 된대로 난 내 파일을 업데이트 한

.

INFO: WELD-000101: Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously. 
2014-07-21 09:15:40.682:WARN:oejuc.AbstractLifeCycle:main: FAILED or[email protected]3278af54: java.lang.NoClassDefFoundError: org/apache/catalina/core/ApplicationContextFacade 

내가가이 오류를보고하고 누락 된 클래스 데프 사용하지 않는 메신저 바람둥이의 일부임을 발견

지금 나는 다음과 같은 오류 메시지가 나타납니다.

예제 프로젝트는 정말 감사하겠습니다.

편집 2 :

여기 내 프로젝트의 github 저장소입니다.

github maven jetty cdi repo

+0

에서 해결 될 것입니다. "작동하지 않음"을 정의하십시오. 주사가 일어나지 않습니까? 그렇다면 코드를 보여주십시오. 추신 : 적어도 그 jee7 API 종속성에 대한 "제공된"범위가 누락되었습니다. – Gimby

+0

이것은 이미 답변되었습니다 - http://stackoverflow.com/questions/20483186/deploying-a-war-to-jetty-with-cdi/20505983#20505983 –

+0

나는 그 게시물에 파일을 추가하고 새로운 오류가 발생합니다. java.lang.NoClassDefFoundError : org/apache/catalina/core/ApplicationContextFacade – arkhon

답변

3

오류는 용접의 조합 최신 부두에 의해 야기된다. 나는 부두를 9.1.5로 바꿨다. 그리고 모든 것은 지금 멋지게 작동한다. 모든 제안을 주셔서 감사합니다.

관련 문제