PrimeFaces GMap忽略模型标记,不显示标记

时间:2015-12-08 20:46:04

标签: java google-maps jsf primefaces

我在PrimeFaces 5.2中使用GMap时遇到问题 我试图用一个标记显示一个地图窗口,但标记没有显示,我一直在没有标记的情况下得到空白地图。经过调查,我发现显然XHTML文件中的模型标签被忽略了。即使我填写完全废话(如model =“#{asdfasdf}),它甚至不会抛出错误。

我的代码片段:

XHTML

        <p:outputPanel id="mapPanel" style="text-align:center;width:400px">
            <p:gmap id="map" rendered="#{testRecordsView.showMap}"
                model="#{GMapView.simpleModel}" zoom="10" type="ROADMAP"
                center="#{testRecordsView.selectedTest.lat}, #{testRecordsView.selectedTest.lng}"
                style="width:400px;height:400px" />
        </p:outputPanel>

GMapView.java

@ManagedBean
public class GMapView implements Serializable {

private static final long serialVersionUID = -2238997881933594120L;

private MapModel simpleModel;

@ManagedProperty("#{testRecordsView}")
private TestRecordsView dtView;

@PostConstruct
public void init() {
    System.out.println("MAPMAPMAP");
    simpleModel = new DefaultMapModel();

    LatLng coord1 = new LatLng(dtView.getSelectedTest().getLat(), dtView.getSelectedTest().getLng());

    // Basic marker
    simpleModel.addOverlay(new Marker(coord1, "test"));
}

public MapModel getSimpleModel() {
    System.out.println("Map: " + simpleModel + " !");
    return simpleModel;
}

public void setDtView(TestRecordsView dtView) {
    this.dtView = dtView;
}

}

GMapView中的打印件永远不会发生,如果我在类中的某处放置断点,它们也不会被激活。显然整个班级从未被召唤过。以前有人有这个问题吗?

1 个答案:

答案 0 :(得分:0)

这一行:

model="#{GMapView.simpleModel}" zoom="10" type="ROADMAP"

在开始时把g放在小写字母中;-)

model="#{gMapView.simpleModel}" zoom="10" type="ROADMAP"

你去吧。