quick tickets dashboard尝试使用出错

大家好
尝试运行QUICK TICKETS DEMO部署在tomcat7上
下载并用MAVEN编译了war文件后用cargo部署在本地tomcat7上 接下来通过浏览器访问 localhost:8080时出错…
已经申请了api for rottentomato 并修改DataProvider中的apikey 问题依旧存在啊 求解


javax.servlet.ServletException: java.lang.ArrayIndexOutOfBoundsException: -1
	com.vaadin.server.VaadinServlet.handleServiceException(VaadinServlet.java:580)
	com.vaadin.server.VaadinServlet.service(VaadinServlet.java:343)
	com.vaadin.server.VaadinServlet.service(VaadinServlet.java:201)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)

root cause

java.lang.ArrayIndexOutOfBoundsException: -1
	java.util.ArrayList.elementData(ArrayList.java:371)
	java.util.ArrayList.get(ArrayList.java:384)
	com.vaadin.demo.dashboard.data.DataProvider.createTransaction(DataProvider.java:406)
	com.vaadin.demo.dashboard.data.DataProvider.generateTransactionsData(DataProvider.java:345)
	com.vaadin.demo.dashboard.data.DataProvider.<init>(DataProvider.java:53)
	com.vaadin.demo.dashboard.DashboardUI.<init>(DashboardUI.java:62)
	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	java.lang.Class.newInstance0(Class.java:374)
	java.lang.Class.newInstance(Class.java:327)
	com.vaadin.server.UIProvider.createInstance(UIProvider.java:33)

Demo中的数据是通过烂番茄(rotten tomatoes)的JSON API取得的。你需要去http://developer.rottentomatoes.com/申请一个API key,替换掉demo中DataProvider.java第156行中的apiKey。

谢谢回复 问题是我原文中也提到了…这个API我已经替换了 还是这个问题啊

  1. update the apikey in DataProvider.java line 155

                // Get an API key from http://developer.rottentomatoes.com
                String apiKey = "###############";
		        apiKey = "85ustfhetauu236gcg3uf6b7";
  1. update pom.xml

       <plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>2.5.1</version>
				<configuration>
					<source>1.6</source>
					<target>1.6</target>
					 <encoding>UTF-8</encoding>
				</configuration>
			</plugin>

2.Compile project

mvn clean install
  1. using Jetty
 mvn jetty:run 

http://localhost:8080

谢谢…虽然还是不行

从错误信息来看应该是没有取回数据,你有试过直接发请求吗?浏览器直接访问http://api.rottentomatoes.com/api/public/v1.0/lists/movies/in_theaters.json?page_limit=30&apikey=[you_api_key]

嗯 我试过的 浏览器显示一串关于电影的数据

我知道可能是什么错误了 这里的机器上网是通过代理 我只是在浏览器里设置了代理 可能还需要在tomcat那里处理一下 否则它不能联网