2013-05-31 58 views
1

我对使用JSF2.0和Jboss 1.7的Primefaces 3.5的Gmap组件的na项目有问题。所以问题是在页面x.xhtml我有组件gmap但gmap不显示来自bean的模型映射。数据在bean中是正确的。我包括gmaps谷歌API,但标记不工作其唯一的地图。Primefaces Gmap标记问题

我使用这个示例 - >PrimeFaces Gmap

从这个例子我认为从页面源,并找到一个标记,但在我的页面犯规find.Managed豆的会话范围。

感谢您的帮助

x.xhtml:

<p:ajax event="overlaySelect" listener="#{mapIskanjeBean.onMarkerSelect}" /> 

    <p:gmapInfoWindow> 
     <p:outputPanel style="text-align:center;display:block;margin:auto:"> 

       <p:graphicImage value="/img/#{mapBean.marker.data}" height="150"/> 
       <br /> 
       <h:outputText value="#{mapIskanjeBean.marker.title}" /> 

     </p:outputPanel> 

    </p:gmapInfoWindow> 
</p:gmap> 

mapIskanjeBean管理的bean:

public class MapIskanjeBean implements Serializable { 

private static final long serialVersionUID = 1L; 

private MapModel advancedModel; 

private Marker marker; 

public MapIskanjeBean() { 
    advancedModel = new DefaultMapModel(); 

    //Shared coordinates 
    LatLng coord1 = new LatLng(46.377291, 15.885323); 
    LatLng coord2 = new LatLng(36.883707, 30.689216); 
    LatLng coord3 = new LatLng(36.879703, 30.706707); 
    LatLng coord4 = new LatLng(36.885233, 30.702323); 
    LatLng coord5 = new LatLng(36.883333, 30.799323); 

    //Icons and Data 

    advancedModel.addOverlay(new Marker(coord1, "Konyaalti", "zelenjava.png", "http://maps.google.com/mapfiles/ms/micons/blue-dot.png")); 
    advancedModel.addOverlay(new Marker(coord2, "Ataturk Parki", "http://maps.google.com/mapfiles/ms/micons/pink-dot.png")); 
    advancedModel.addOverlay(new Marker(coord4, "Kaleici", "kaleici.png", "http://maps.google.com/mapfiles/ms/micons/pink-dot.png")); 
    advancedModel.addOverlay(new Marker(coord3, "Karaalioglu Parki", "karaalioglu.png", "http://maps.google.com/mapfiles/ms/micons/yellow-dot.png")); 
    advancedModel.addOverlay(new Marker(coord5,"hepan","http://maps.google.com/mapfiles/ms/micons/pink-dot.png","http://maps.google.com/mapfiles/ms/micons/pink-dot.png")); 


} 

public MapModel getAdvancedModel() { 
    return advancedModel; 
} 

public void onMarkerSelect(OverlaySelectEvent event) { 
    marker = (Marker) event.getOverlay(); 
} 

public Marker getMarker() { 
     System.out.println("vzame marker"); 
    return marker; 
} 

public void setAdvancedModel(MapModel advancedModel) { 
     System.out.println("nastavi model"); 
    this.advancedModel = advancedModel; 
} 

public void setMarker(Marker marker) { 
    this.marker = marker; 
} 

}

+0

你能不能展示整个标签(你错过了第一行)? – gawi

+0

问题是一个谷歌地图API包含在page.my错误:) – GrofMonteCristo

回答

1

那么,你的代码看起来没问题。 但是,如果这些图像的路径错误,标记将不会显示出来。 所以你可以看看图标路径是否正确!

好运气!

+0

问题是在标记列表,谢谢! – GrofMonteCristo