2016-05-10 60 views
0
public class MyModel { 

    private final com.google.gson.Gson gson = new Gson(); 
    private final SomeData someData = new SomeData(); 

    private class SomeData extends JsonModel() { 
    String text = "text"; 
    } 

    private class JsonModel() { 
    public String toJson() { 
     return gson.toJson(this); 
    } 
    } 

    public SomeData getSomeData() { 
    return someData; 
    } 
} 

假设MyModelmyModel在FTL访问,为什么myModel.someData.toJsonmyModel.getSomeData().toJson()失败,The following has evaluated to null or missing: myModel.someData.toJsonThe following has evaluated to null or missing: myModel.getSomeData().toJson()访问Java嵌套从FreeMarker的模板类

回答

2

JsonModel必须是公开的,否则其成员将不会公开。

+0

它总是会是一个愚蠢的错误。我认为你不能在同一个文件中标记两个顶级类,没有注意到这实际上是一个内部类。感谢您指出。 – Michael