2016-06-26 3 views
2

방금 ​​새 maven 프로젝트를 만들고 인덱스 컨트롤러를 추가했습니다. 그런 다음 managedbean 주석을 사용했습니다. 하지만이 메시지는 The type ManagedBean is deprecated입니다. 그래서 대안을 찾으려고했지만 어떤 해결책도 찾을 수 없었습니다. 모든 기사는 @ManageBean을 사용합니다. 그래서 나는 여기서 뭔가를 놓치고 있다고 생각합니다.ManagedBean 유형은 사용되지 않음

내 pom.xml 파일

<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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>asf.asdflksdfklj</groupId> 
    <artifactId>Demo-App</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 
    <name>Demo-App</name> 

    <dependencies> 
    <dependency> 
    <groupId>org.primefaces</groupId> 
    <artifactId>primefaces</artifactId> 
    <version>5.3</version> 
    </dependency> 
    <dependency> 
    <groupId>org.glassfish</groupId> 
    <artifactId>javax.faces</artifactId> 
    <version>2.3.0-m06</version> 
    </dependency> 
    <dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>javax.servlet-api</artifactId> 
    <version>4.0.0-b01</version> 
    </dependency> 
    </dependencies> 


    <build> 
    <plugins> 
    <plugin> 
    <groupId>org.eclipse.jetty</groupId> 
    <artifactId>jetty-maven-plugin</artifactId> 
    <version>9.4.0.M0</version> 
    </plugin> 
    </plugins> 
    </build> 


</project> 

및 인 IndexController는

package asf.asdflksdfklj.Controller; 

import javax.faces.bean.ManagedBean; 


@ManagedBean 
public class IndexController { 

    public String showHello(){ 
     return "hello world"; 
    } 

} 

그것은 정말 ManagedBean은 더 이상 사용되지 않습니다? 그렇다면이 코드를 작동시키기 위해 무엇을 사용해야합니까?

+0

이 질문과 대답이 도움이 될 수 있습니다 : http://stackoverflow.com/q/23116555 – DB5

답변

3

관리되는 Bean은 더 이상 사용되지 않으며 CDI 빈으로 대체됩니다. 결국 CDI로 업그레이드해야하므로 지금부터 시작할 수도 있습니다. @ManagedBean 대신 @Named를 사용하고 종속성에 cdi-api-1.2.jar을 넣는다면 잘 수행해야합니다.

import javax.inject.Named; 
import javax.enterprise.context.SessionScoped; 

@Named 
@SessionScoped 
public class IndexController implements Serializable { 

} 
관련 문제