-1

List<String>JSFページで国とJavaを表示しようとすると、JSFページで非常に奇妙な問題が発生します。これはコードです:

 private List<String> listCountries;

    // Get the list with Countries
    public List<String> getlistCountries() { 
        // Generate List of Countries
        initlistCountries();
        return listCountries;
    }

    public void initlistCountries(){
        listCountries.add("Afghanistan");
        listCountries.add("Albania");
        listCountries.add("Algeria");
        listCountries.add("Andorra");
        listCountries.add("Angola");
        ......
    }

このコードは正しいですか?@PostConstructすでに使っているので使えません。

JSFページをロードすると、彼のエラーが発生します。

java.lang.NullPointerException
    at com.DX_57.AC_57.AddAccount.initlistCountries(AddAccount.java:344)
    at com.DX_57.AC_57.AddAccount.getlistCountries(AddAccount.java:339)
4

3 に答える 3

5

初期化していないlistCountriesので作成してください

 public void initlistCountries(){
        listCountries = new ArrayList<String>();
        listCountries.add("Afghanistan");
        listCountries.add("Albania");
        listCountries.add("Algeria");
        listCountries.add("Andorra");
        listCountries.add("Angola");
        ......
    }
于 2012-07-17T17:22:51.320 に答える
1

配列リストを初期化します。

private List<String> listCountries=new ArrayList<String>();
于 2012-07-17T17:23:06.837 に答える
1

listCountriesを初期化したようには見えません。

public void initlistCountries()
{
        listCountries = new ArrayList< String >(); // Add this line.

        listCountries.add("Afghanistan");
        listCountries.add("Albania");
        listCountries.add("Algeria");
        listCountries.add("Andorra");
        listCountries.add("Angola");
        ......
}
于 2012-07-17T17:24:11.660 に答える