令牌“;”上的语法错误,。预期在JSP中

时间:2013-06-10 05:38:54

标签: jsp kendo-ui

令牌“;”上的语法错误,。预期 在ArrayList<String> data = new ArrayList<String>;

<%@page import="java.util.*"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@taglib prefix="kendo" uri="http://www.kendoui.com/jsp/tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<link href="resources/styles/kendo.common.min.css" rel="stylesheet"
    type="text/css" />
<link href="resources/styles/kendo.default.min.css" rel="stylesheet"
    type="text/css" />

<script src="resources/js/jquery.min.js"></script>
<script src="resources/js/kendo.web.min.js"></script>


</head>


<body>
    <%
        ArrayList<String> data = new ArrayList<String>;
        data.add("a");
        data.add("b");
        data.add("c");
    %>
    <kendo:datePicker name="datePicker"></kendo:datePicker>
    <kendo:calendar name="calendar"></kendo:calendar>

    <kendo:dropDownList name="dropdownlist">
        <kendo:dataSource data="<%=data%>"></kendo:dataSource>
    </kendo:dropDownList>
</body>
</html>

当我尝试这段代码时。在Eclipse中出现“令牌上的语法错误”;“,。expected”。

ArrayList<String> data = new ArrayList<String>;

3 个答案:

答案 0 :(得分:1)

使用new时,您正在调用构造函数。正如您所做的那样,构造函数不仅仅是类的名称。它就像一个方法,因此需要参数。

ArrayList的默认构造函数不需要参数,因此可以称为空(())。

您的代码应为:

ArrayList<String> data = new ArrayList<String>();
//                                            ^^--- added () here

答案 1 :(得分:1)

当然这个错误信息有点误导,因为你真正缺少的是构造函数参数列表的括号。

ArrayList<String> data = new ArrayList<String>();

我希望它有所帮助。

答案 2 :(得分:0)

是的错误本身只说“嘿,你错过了什么”,如果你想在ArrayList添加一些列表,你应该使用括号,以便将参数列表传递给构造函数。

ArrayList<String> data = new ArrayList<String>(); 

这里的空括号表示我们正在传递一个空的参数列表。