我的版本爲3.0.M3的Primefaces有問題。 我使用gmap和prime p:ajax.I想要做的事情是當用戶在Gmap上點擊標記時點擊標記。帶Primefaces GMap OverlaySelect事件的NullPointer
這裏是代碼
<p:tabView effect="slide" effectDuration="normal" style="width:1050px;height:450px" >
<p:tab title="blabla">
<h:panelGrid colums="1">
</h:panelGrid>
</p:tab>
<p:tab title="blabla" >
<h:panelGrid colums="1">
<h:form id="mapId">
<p:gmap id="asd" center="39.000409,35.201554"
zoom="#{mapBean.modelMap.zoomLevel}"
type="ROADMAP"
style="width:1000px;height:400px"
model="#{mapBean.emptyModel}"
widgetVar="map" >
<p:ajax event="overlaySelect" listener="#{mapBean.onMarkerSelect}"/>
</p:gmap>
</h:form>
</h:panelGrid>
</p:tab></p:tabView>
和我ManagedBean
public void onMarkerSelect(OverlaySelectEvent event) {
Marker marker = (Marker) event.getOverlay();
if (marker!=null) {
System.out.println(marker.getId());
}
System.out.println("Clicked");
modelMap.setZoomLevel(modelMap.getZoomLevel()+1);
}
Managed Bean的聲明
@ManagedBean(name="mapBean")
@RequestScoped
public class MapBean implements Serializable
我在onMarkerSelect
方法服用NullPointerException
(event.getOverlay();
)
您是否嘗試升級到M4或RC1? – spauny 2011-12-16 09:33:03
我有完全相同的問題。 – Simeon 2012-06-06 08:09:06
嘗試了幾個primefaces的版本(所有從3.1到3.3)我有同樣的問題與他們所有人。 – Simeon 2012-06-06 08:19:21