to make it working and it has been days already.
YouTubeService youTubeService = new YouTubeService("Kentotube",
"AI39si6jy0tlZnAZYjc5S51NA3f3nKODkl8uctZs81jZaxS9gcJgCwGoCbrTrzC9i2EaC4l4MjOm17zA273J_iFpDpIc6KahcQ");
log.debug("weh? : " +
youTubeService.getProtocolVersion().getVersionString());
VideoEntry videoEntry = new VideoEntry();
YouTubeMediaGroup mg = videoEntry.getOrCreateMediaGroup();
mg.setTitle(new MediaTitle());
mg.getTitle().setPlainTextContent("My Test Movie");
mg.addCategory(new MediaCategory(YouTubeNamespace.CATEGORY_SCHEME,
"Autos"));
mg.setKeywords(new MediaKeywords());
mg.getKeywords().addKeyword("cars");
mg.getKeywords().addKeyword("funny");
mg.setDescription(new MediaDescription());
mg.getDescription().setPlainTextContent("My description");
mg.setPrivate(false);
mg.addCategory(new
MediaCategory(YouTubeNamespace.DEVELOPER_TAG_SCHEME, "mydevtag"));
mg.addCategory(new
MediaCategory(YouTubeNamespace.DEVELOPER_TAG_SCHEME,
"anotherdevtag"));
videoEntry.setGeoCoordinates(new GeoRssWhere(37.0,-122.0));
// alternatively, one could specify just a descriptive string
// newEntry.setLocation("Mountain View, CA");
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(getContext().getServletContext().getRealPath(DESTINATION_DIR_PATH));
stringBuilder.append("/");
stringBuilder.append(getCurrentUser().getId());
stringBuilder.append("/");
realPath = stringBuilder.toString();
log.debug(realPath + getFileNameValue());
File videoFile = new File(realPath + getFileNameValue().replaceAll("
", "_"));
log.debug("................. : " + videoFile.getFreeSpace());
MediaFileSource ms = new MediaFileSource(new File(realPath +
getFileNameValue().replaceAll(" ", "_")), "video/quicktime");
videoEntry.setMediaSource(ms);
String uploadUrl =
"http://uploads.gdata.youtube.com/feeds/api/users/default/
uploads";
try {
VideoEntry createdEntry = youTubeService.insert(new URL(uploadUrl),
videoEntry);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
------------------------------------ this is the error stack trace
om.google.gdata.util.InvalidEntryException: Bad Request
Invalid Request
at
com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:
594)
at
com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse(GoogleGDataRequest.java:
563)
at
com.google.gdata.client.http.HttpGDataRequest.checkResponse(HttpGDataRequest.java:
552)
at
com.google.gdata.client.http.HttpGDataRequest.execute(HttpGDataRequest.java:
530)
at
com.google.gdata.client.http.GoogleGDataRequest.execute(GoogleGDataRequest.java:
535)
at
com.google.gdata.client.media.MediaService.insert(MediaService.java:
400)
at
com.gf.cloud.stripes.bean.video.VideoFormActionBean.save(VideoFormActionBean.java:
100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at net.sourceforge.stripes.controller.DispatcherHelper
$6.intercept(DispatcherHelper.java:467)
at
net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:
158)
at
com.gf.cloud.stripes.interceptor.DataSourceSelectorInterceptor.intercept(DataSourceSelectorInterceptor.java:
43)
at
net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:
155)
at
com.gf.cloud.stripes.interceptor.HomePageInterceptor.intercept(HomePageInterceptor.java:
23)
at
net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:
155)
at
net.sourceforge.stripes.controller.BeforeAfterMethodInterceptor.intercept(BeforeAfterMethodInterceptor.java:
113)
at
net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:
155)
at
net.sourceforge.stripes.controller.ExecutionContext.wrap(ExecutionContext.java:
74)
at
net.sourceforge.stripes.controller.DispatcherHelper.invokeEventHandler(DispatcherHelper.java:
465)
at
net.sourceforge.stripes.controller.DispatcherServlet.invokeEventHandler(DispatcherServlet.java:
278)
at
net.sourceforge.stripes.controller.DispatcherServlet.service(DispatcherServlet.java:
160)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at net.sourceforge.stripes.controller.DynamicMappingFilter
$2.doFilter(DynamicMappingFilter.java:374)
at
net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:
247)
at
net.sourceforge.stripes.controller.DynamicMappingFilter.doFilter(DynamicMappingFilter.java:
361)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
at
com.gf.cloud.container.SqlSesionFilter.doFilter(SqlSesionFilter.java:
30)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
102)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
298)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
852)
at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:
489)
at java.lang.Thread.run(Thread.java:680)
--
You received this message because you are subscribed to the Google Groups "YouTube APIs Developer Forum" group.
To post to this group, send email to youtube-api-gdata@googlegroups.com.
To unsubscribe from this group, send email to youtube-api-gdata+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/youtube-api-gdata?hl=en.
No comments:
Post a Comment