2016-06-26 26 views
2

私はちょうど新しいmavenプロジェクトを作成し、インデックスコントローラを追加しました。その後、私はマネージドビーンの注釈を使用しました。しかし、私はこのメッセージを受け取ります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 Beanに置き換えられました。最終的にCDIにアップグレードする必要がありますので、今すぐ開始することもできます。 @ManagedBeanの代わりに、@ Namedを使用して、依存関係にcdi-api-1.2.jarを置くと、良いことになるはずです。

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

@Named 
@SessionScoped 
public class IndexController implements Serializable { 

}