Managed Bean の実装および構成

この例では、JSF アプリケーションは、以下のタスクの実行に Managed Bean が必要です。
  • Web アプリケーションの開始時に IVL ファイルをロードする
  • グラフィック・ビューを表示するためにマネージャー・ビューを作成する

Managed Bean の実装

Java 実装ファイルを作成するには、以下の手順に従います。
  1. パッケージ・エクスプローラー・ビューで、src フォルダーを右クリックし、「新規」>「クラス」を選択します。
    ソース・フォルダー・パスを表示している Eclipse の「新規 Java クラス」ウィンドウ。
  2. 「名前」フィールドに SupportBean と入力し、「終了」をクリックします。
  3. src フォルダーに配置されている新規作成したファイル SupportBean.java を開き、SupportBean クラスを実装します。以下に例を示します。
    import ilog.views.IlvManager;
    import ilog.views.IlvManagerView;
    import java.net.URL;
    import javax.faces.context.FacesContext;
    
    public class SupportBean {
    
    	private IlvManagerView managerView;
    
    	public SupportBean() {
    		initManagerView();
    	}
    
    	/**
    	 * Initializes the manager view with the current ivl file.
    	 */
    	protected void initManagerView() {
    		if (managerView == null) 
    			managerView = new IlvManagerView();
    		URL ivlURL;
    		try {
    			ivlURL = FacesContext.getCurrentInstance().getExternalContext().getResource("/java2d.ivl");      
    			IlvManager manager = managerView.getManager();
    			manager.setFileName(ivlURL);
    			managerView.fitTransformerToContent();
    			managerView.setKeepingAspectRatio(true);  
    		} catch (Exception e) {
    			e.printStackTrace();
    		}    
    	}
    
    	/**
    	 * Returns the manager view.
    	 * @return The manager view.
    	 */
    	public IlvManagerView getView() {
    		return managerView;
    	}
    }
    
SupportBean クラスは、Web アプリケーションのルート・フォルダーに配置されているファイル java2d.ivl をロードし、このファイル用のマネージャー・ビューを作成します。

Managed Bean の構成

ここでは、JViews JSF コンポーネントがこのクラスにアクセスできるように、このクラスを Managed Bean として宣言する必要があります。
クラスを Managed Bean として宣言するには、以下の手順に従います。
  • WebContent/WEB_INF フォルダーに配置されているファイル faces-config.xml を開き、以下のコード例の太字で示したコードを追加します。
    <?xml version="1.0" encoding="UTF-8"?>
    
    <faces-config
        xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
        version="1.2">
        
    <managed-bean>
        <managed-bean-name>support</managed-bean-name>
        <managed-bean-class>SupportBean</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
      </managed-bean>
    
    </faces-config>
    
これで、Managed Bean が実装され、構成されました。