Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google maps api 3 如何更改图标标记Gmap Primefaces?_Google Maps Api 3_Jsf 2_Primefaces - Fatal编程技术网

Google maps api 3 如何更改图标标记Gmap Primefaces?

Google maps api 3 如何更改图标标记Gmap Primefaces?,google-maps-api-3,jsf-2,primefaces,Google Maps Api 3,Jsf 2,Primefaces,大家好,我从Gmap Primefaces组件开始,想知道如何更改图标。 我依赖于Primefaces的展示: this.advancedModel.addOverlay(new Marker(coord1, "Konyaalti", "konyaalti.png", "http://maps.google.com/mapfiles/ms/micons/blue-dot.png")); this.advancedModel.addOverlay(new Marker(coord2, "Atatu

大家好,我从Gmap Primefaces组件开始,想知道如何更改图标。 我依赖于Primefaces的展示:

this.advancedModel.addOverlay(new Marker(coord1, "Konyaalti", "konyaalti.png", "http://maps.google.com/mapfiles/ms/micons/blue-dot.png"));
this.advancedModel.addOverlay(new Marker(coord2, "Ataturk Parki", "ataturkparki.png"));
this.advancedModel.addOverlay(new Marker(coord4, "Kaleici", "kaleici.png", "http://maps.google.com/mapfiles/ms/micons/pink-dot.png"));
this.advancedModel.addOverlay(new Marker(coord3, "Karaalioglu Parki", "karaalioglu.png", "http://maps.google.com/mapfiles/ms/micons/yellow-dot.png"));  
我已将图标下载到我的项目中,并已发送,但不起作用,标记图标是示例

StringBuilder ruta = new StringBuilder();
ruta.append(getContext().getRealPath(Constantes.DIVISOR));
ruta.append("resources/maps/images/");

StringBuilder bluedot = new StringBuilder(); 
bluedot.append(ruta);
bluedot.append("blue-dot");
bluedot.append(Constantes.EXTENSION_FORMATO_PNG);

StringBuilder pinkdot = new StringBuilder(); 
pinkdot.append(ruta);
pinkdot.append("pink-dot");
pinkdot.append(Constantes.EXTENSION_FORMATO_PNG);

StringBuilder yellowdot = new StringBuilder(); 
yellowdot.append(ruta);
yellowdot.append("yellow-dot");
yellowdot.append(Constantes.EXTENSION_FORMATO_PNG);

System.out.println("---> "+bluedot.toString());

//Icons and Data
this.advancedModel.addOverlay(new Marker(coord1, "Konyaalti", "konyaalti.png", bluedot.toString()));
this.advancedModel.addOverlay(new Marker(coord2, "Ataturk Parki", "ataturkparki.png"));
this.advancedModel.addOverlay(new Marker(coord4, "Kaleici", "kaleici.png", pinkdot.toString()));
this.advancedModel.addOverlay(new Marker(coord3, "Karaalioglu Parki", "karaalioglu.png", yellowdot.toString()));

是图像文件路径,但仍然不考虑标记的PrimeFo脸ts,它应该是什么???

Console:

D:\springsource\apache tomcat 7.0.53\webapps\geotermica\resources\maps\images\blue-dot.png

如果要指向文件系统上的文件,应使用
文件://
方案。见:

如果要创建相对URL以从Web服务器获取图像,则应使用而不是实际路径:

StringBuilder ruta = new StringBuilder();
ruta.append(FacesContext.getCurrentInstance().getExternalContext().getRequestContextPath());
ruta.append("/resources/maps/images/");

我不能让它工作。这似乎只适用于Google URL。如果您将生成的URL粘贴到浏览器中并加载了图像,则应能正常工作。您应该以类似
http://localhost:8080/yourapp/resources/maps/images/yourimage.png
我刚刚用这个简单的字符串解决了这个问题:markerType.add(“./resources/red dot.png”);检查是否使用了正确的构造函数和参数:
标记(LatLng LatLng、字符串标题、对象数据、字符串图标)
。这对我来说非常有效。我用它联系同一应用程序中的反向代理。