我在xhtml页面中有一个非常简单的javascript代码,但Glassfish不希望因内部错误而呈现它:
javax.servlet.ServletException: Error Parsing /basicuser/singletripcreation.xhtml: Error Traced[line: 14] Il riferimento di entità "callback" deve terminare con il delimitatore ';'.
第14行涉及的代码如下
<script language="Javascript">
function loadGoogleMapsScript()
{
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.google.com/maps/api/js?sensor=false&callback=visualizzamappa";
document.body.appendChild(script);
}
loadGoogleMapsScript();
</script>
第14行是“script.src = ....”
出了什么问题?!错误看起来像在字符串中。我这是一个编译错误,为什么编译器检查一个字符串?!? (是的,甚至在执行之前显示错误,如编译错误)
我怎么解决?!
非常感谢
---- @Mike
现在出现错误:
for (var x=0; x<indirizzi.length ; x++)
codifica_indirizzi(indirizzi[x], descrizioni[x]);
并说:
javax.servlet.ServletException: Error Parsing /basicuser/singletripcreation.xhtml: Error Traced[line: 47] Il tipo di elemento "indirizzi.length" deve essere seguito dalle specifiche di attributo ">" o "/>".
causa principale
“元素'indirizzi.length'的类型必须后跟特定的属性'&gt;'或'/&lt;'“
答案 0 :(得分:2)
这个答案告诉你问题以及如何解决它https://stackoverflow.com/a/14112363/212224
是URL中的&符号(&amp;)导致问题。这意味着...&amp; callback ... URL的一部分被视为XML元素。 &amp;符号应替换为&amp;所以全行14应为:
script.src = "http://maps.google.com/maps/api/js?sensor=false&callback=visualizzamappa";
如果您有任何其他字符导致类似问题,维基百科有一个XML实体名称列表:http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references