1

JSF2.0 と Jboss 1.7 を使用する Primefaces 3.5 i の Gmap コンポーネントを使用するプロジェクトで問題があります。したがって、問題はページ x.xhtml にあります。コンポーネント gmap がありますが、gmap は Bean からのモデル マップを表示しません。Bean 内のデータは正しいです。gmaps 用の Google API が含まれていますが、マーカーはその唯一のマップでは機能しません。

私はこの例を使用しています-> PrimeFaces Gmap

この例から、ページからソースを表示してマーカーを見つけますが、私のページでは見つかりません。マネージド Bean はセッション スコープです。

手伝ってくれてありがとう

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;
}  

}

4

1 に答える 1