Description
while trying to integrate gmaps3 in our webapp i had issues with the wicketstuff-gmap3 stuff ( - we need a client-id for our request) ...
so i have:
public static final String GMAP_API_URL = "%s://maps.google.com/maps/api/js?v=3&sensor=%s&client-id=%s"; response.render(JavaScriptHeaderItem.forUrl(String.format(GMAP_API_URL, schema, sensor, clientid)));
the rendered result of this is:
<script type="text/javascript" src="http://maps.google.com/maps/api/js?v=3&sensor=false&client-id=...."></script>
so the requestparameters are encoded
which is happening in the JavaScriptUtils Helper:
public static void writeJavaScriptUrl(final Response response, final CharSequence url, final String id, boolean defer, String charset) { response.write("<script type=\"text/javascript\" "); if (id != null) { response.write("id=\"" + Strings.escapeMarkup(id) + "\" "); } if (defer) { response.write("defer=\"defer\" "); } if (charset != null) { response.write("charset=\"" + Strings.escapeMarkup(charset) + "\" "); } response.write("src=\""); response.write(Strings.escapeMarkup(url)); response.write("\"></script>"); response.write("\n"); }
but ... is this right to escape the url?
when i open the above mentioned script, google tells me i have no parameter "sensor" ... which i can understand as ther is only a parameter amp ...