First look of KiteDesk

34 views
Skip to first unread message

Jeff Hutchinson

unread,
Mar 31, 2012, 10:18:59 PM3/31/12
to kitede...@googlegroups.com
KiteDesk team,

Let me first start off by saying that I was surprised and impressed when I first saw KD.  I just started randomly clicking around and this application has a lot of depth even in Beta.

The initial load of KD took quite a while.  I ended up taking a Saturday nap before checking again.  But then I was like, "wow, that's impressive!".  The second time it loaded quickly.

I randomly dragged a shortcut of Pinnacle Studio to KD.  The first attached screenshot shows the dialog that was brought up.  I clicked 'Upload' and the screenshot shows the error I received. 

Here's as much of the stack trace I was able to retrieve:


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: com.google.sitebricks.routing.EventDispatchException: Exception [ServiceForbiddenException - "Files must be uploaded using the resumable upload mechanism."] thrown by event method [public com.google.sitebricks.headless.Reply com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request) throws java.lang.Exception]

at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:597)
(See below for entire trace.)

    com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:71)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:89)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

com.google.sitebricks.routing.EventDispatchException: Exception [ServiceForbiddenException - "Files must be uploaded using the resumable upload mechanism."] thrown by event method [public com.google.sitebricks.headless.Reply com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request) throws java.lang.Exception]

at com.google.gdata.client.http.H





KiteDesk-DragShortcutToKD-1.jpg
KiteDesk-DragShortcutToKD-2.jpg

Jeff Hutchinson

unread,
Apr 1, 2012, 12:15:58 AM4/1/12
to kitede...@googlegroups.com
I'm using Win7Pro, 64-bit, i7, 24GB, Firefox 11

Jared Rodriguez

unread,
Apr 1, 2012, 5:22:36 AM4/1/12
to kitede...@googlegroups.com
Jeff,

Thanks for the feedback.  While in Beta, we have not yet taken the step of merging all of our different JavaScript files into a single compressed file.  That might be while the load took so long, although we have not seen it take more than a a minute.  I am taking this as a task this week, to try and get everything into a nice, fast download.

As for the error you are seeing on upload, the exception seems chopped off.  Can you tell me what file type you were attempting to upload?  Were you saving it to a Google or Dropbox account?  If there is any more of the exception that you can see, please send it my way.

Thanks,

Jared
--
Jared Rodriguez


Jeff Hutchinson

unread,
Apr 1, 2012, 5:25:16 PM4/1/12
to kitede...@googlegroups.com
The file type is actually a Windows shortcut (.lnk).  The software is Pinnacle Studio 14.  I'm sure it's not supposed to work but I would expect a more user friendly error message.

I'm using a Google account without a gmail address


Full stack trace:

 
 
Upload complete.
HTTP Status 500 -


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: com.google.sitebricks.routing.EventDispatchException: Exception [ServiceForbiddenException - "Files must be uploaded using the resumable upload mechanism."] thrown by event method [public com.google.sitebricks.headless.Reply com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request) throws java.lang.Exception]

at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:597)
(See below for entire trace.)

    com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:71)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:89)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

com.google.sitebricks.routing.EventDispatchException: Exception [ServiceForbiddenException - "Files must be uploaded using the resumable upload mechanism."] thrown by event method [public com.google.sitebricks.headless.Reply com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request) throws java.lang.Exception]

at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:597)
(See below for entire trace.)

    com.google.sitebricks.routing.DefaultPageBook$MethodTuple.call(DefaultPageBook.java:709)
    com.google.sitebricks.routing.DefaultPageBook$MethodTuple.call(DefaultPageBook.java:696)
    com.google.sitebricks.routing.DefaultPageBook$PageTuple.callAction(DefaultPageBook.java:575)
    com.google.sitebricks.routing.DefaultPageBook$PageTuple.doMethod(DefaultPageBook.java:559)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.fireEvent(WidgetRoutingDispatcher.java:137)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.bindAndReply(WidgetRoutingDispatcher.java:90)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.dispatch(WidgetRoutingDispatcher.java:73)
    com.google.sitebricks.DebugModeRoutingDispatcher.dispatch(DebugModeRoutingDispatcher.java:63)
    com.google.sitebricks.SitebricksFilter.doFilter(SitebricksFilter.java:50)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.sitebricks.HiddenMethodFilter.doFilter(HiddenMethodFilter.java:74)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:64)

    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:89)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

java.lang.reflect.InvocationTargetException
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.lang.reflect.Method.invoke(Method.java:616)
    com.google.sitebricks.routing.DefaultPageBook$MethodTuple.call(DefaultPageBook.java:702)
    com.google.sitebricks.routing.DefaultPageBook$MethodTuple.call(DefaultPageBook.java:696)
    com.google.sitebricks.routing.DefaultPageBook$PageTuple.callAction(DefaultPageBook.java:575)
    com.google.sitebricks.routing.DefaultPageBook$PageTuple.doMethod(DefaultPageBook.java:559)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.fireEvent(WidgetRoutingDispatcher.java:137)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.bindAndReply(WidgetRoutingDispatcher.java:90)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.dispatch(WidgetRoutingDispatcher.java:73)
    com.google.sitebricks.DebugModeRoutingDispatcher.dispatch(DebugModeRoutingDispatcher.java:63)
    com.google.sitebricks.SitebricksFilter.doFilter(SitebricksFilter.java:50)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.sitebricks.HiddenMethodFilter.doFilter(HiddenMethodFilter.java:74)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:64)

    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:89)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

com.google.gdata.util.ServiceForbiddenException: Files must be uploaded using the resumable upload mechanism.
<errors xmlns='http://schemas.google.com/g/2005'><error><domain>GData</domain><code>ServiceForbiddenException</code><internalReason>Files must be uploaded using the resumable upload mechanism.</internalReason></error></errors>

    com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:597)
    com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse(GoogleGDataRequest.java:563)
    com.google.gdata.client.http.HttpGDataRequest.checkResponse(HttpGDataRequest.java:552)
    com.google.gdata.client.http.HttpGDataRequest.execute(HttpGDataRequest.java:530)
    com.google.gdata.client.http.GoogleGDataRequest.execute(GoogleGDataRequest.java:535)
    com.google.gdata.client.media.MediaService.insert(MediaService.java:400)
    com.kitedesk.service.google.GoogleFileServiceImpl.copyAttachment(GoogleFileServiceImpl.java:1376)
    com.kitedesk.service.google.GoogleFileServiceImpl.copyAttachments(GoogleFileServiceImpl.java:1303)
    com.kitedesk.service.DesktopServiceImpl.copyAttachments(DesktopServiceImpl.java:1044)
    com.kitedesk.web.sitebricks.MailRest.copyAttachments(MailRest.java:80)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.lang.reflect.Method.invoke(Method.java:616)
    com.google.sitebricks.routing.DefaultPageBook$MethodTuple.call(DefaultPageBook.java:702)
    com.google.sitebricks.routing.DefaultPageBook$MethodTuple.call(DefaultPageBook.java:696)
    com.google.sitebricks.routing.DefaultPageBook$PageTuple.callAction(DefaultPageBook.java:575)
    com.google.sitebricks.routing.DefaultPageBook$PageTuple.doMethod(DefaultPageBook.java:559)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.fireEvent(WidgetRoutingDispatcher.java:137)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.bindAndReply(WidgetRoutingDispatcher.java:90)
    com.google.sitebricks.routing.WidgetRoutingDispatcher.dispatch(WidgetRoutingDispatcher.java:73)
    com.google.sitebricks.DebugModeRoutingDispatcher.dispatch(DebugModeRoutingDispatcher.java:63)
    com.google.sitebricks.SitebricksFilter.doFilter(SitebricksFilter.java:50)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.sitebricks.HiddenMethodFilter.doFilter(HiddenMethodFilter.java:74)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:64)

    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:89)
    com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.22 logs.
Apache Tomcat/7.0.22

Jeff Hutchinson

unread,
Apr 3, 2012, 6:52:25 PM4/3/12
to kitedesk-beta
I also get this stack trace when dragging a JPG file from Windows
Explorer to KD. I even checked "Convert text from PDF and image files
to Google documents".



HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented
it from fulfilling this request.

exception

javax.servlet.ServletException:
com.google.sitebricks.routing.EventDispatchException: Exception
[InvalidEntryException - "We're sorry, a server error occurred. Please
try again."] thrown by event method [public
com.google.sitebricks.headless.Reply
com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request)
throws java.lang.Exception]

at
com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:
594)
(See below for entire trace.)


com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:
71)

com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163)

com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58)
com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:
89)

com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163)

com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58)

com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:
118)
com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

com.google.sitebricks.routing.EventDispatchException: Exception
[InvalidEntryException - "We're sorry, a server error occurred. Please
try again."] thrown by event method [public
com.google.sitebricks.headless.Reply
com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request)
throws java.lang.Exception]

at
com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:
594)
(See below for entire trace.)

com.google.sitebricks.routing.DefaultPageBook
$MethodTuple.call(DefaultPageBook.java:709)
com.google.sitebricks.routing.DefaultPageBook
$MethodTuple.call(DefaultPageBook.java:696)
com.google.sitebricks.routing.DefaultPageBook
$PageTuple.callAction(DefaultPageBook.java:575)
com.google.sitebricks.routing.DefaultPageBook
com.google.gdata.util.InvalidEntryException: We're sorry, a server
error occurred. Please try again.
<errors xmlns='http://schemas.google.com/g/2005'><error><domain>GData</
domain><code>InvalidEntryException</code><internalReason>We're sorry,
a server error occurred. Please try again.</internalReason></error></
errors>


com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:
594)
Upload complete.

Jack Kennedy

unread,
Apr 4, 2012, 8:39:03 AM4/4/12
to kitede...@googlegroups.com
Thanks Jeff, 

We opened a ticket and we are reviewing the issue.

The stack trace is very helpful.

Thanks again,
Jack
--
Jack Kennedy
CEO - KiteDesk


Jared Rodriguez

unread,
Apr 4, 2012, 9:29:47 AM4/4/12
to kitede...@googlegroups.com
Jeff,

Just tried the upload with jpg in my dev environment and everything seems cool.  Have not tried it on production yet though.  Is there any chance that you can directly email me the jpg you used so that I can try it and see if there is some odd issue we are having deciphering it?  If so, send it to my ja...@kitedesk.com so that you don't have to post it to the group.

Jared

On Tue, Apr 3, 2012 at 6:52 PM, Jeff Hutchinson <je...@simadog.com> wrote:



--
Jared Rodriguez


Jeff Hutchinson

unread,
Apr 5, 2012, 9:42:43 PM4/5/12
to kitedesk-beta
Jared,

I think you're on to it. Using Photoshop Elements, I took a raw Sony
JPG and saved it at it's original size (2484 KB) and a downsized
version (251 KB). The downsized version doesn't give the error. The
'upsized' version does. Try using a JPG as large as 2.5 MB.

After dragging the 'downsized' file to KD and double clicking on it in
the KD 'My Documents', it opens it as a KD Document and doesn't show
the image. I sent a screenshot to your kitedesk email.
Thanks,

Jeff

Jared Rodriguez

unread,
Apr 6, 2012, 7:57:44 AM4/6/12
to kitede...@googlegroups.com
Jeff,

I jsut tried uploading a 3.5 MB file and it worked like a champ.  I am not on production, so there might be a difference there.  I will be rolling the version I am testing against to production today, please let me know if the problem persists.

As for the jpg opening as a doc, that would happen if you clicked the OCR box in the upload dialog.  What that will do is try to run the image through Google's OCR processing and then save it as a document instead of as an image.  Is there any chance you had that box clicked?

Jared
--
Jared Rodriguez


Jeff Hutchinson

unread,
Apr 7, 2012, 7:47:58 PM4/7/12
to kitedesk-beta
Jared,

Prod and Dev must be different with regards to file size. The stack
trace I'm now getting for the over sized JPG file contains this
exception:

"com.google.gdata.util.InvalidEntryException: Sorry, this file is too
big. We can only convert files up to 2 MB in size."



HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented
it from fulfilling this request.

exception

javax.servlet.ServletException:
com.google.sitebricks.routing.EventDispatchException: Exception
[InvalidEntryException - "Sorry, this file is too big. We can only
convert files up to 2 MB in size."] thrown by event method [public
com.google.sitebricks.headless.Reply
com.kitedesk.web.sitebricks.MailRest.copyAttachments(com.google.sitebricks.headless.Request)
throws java.lang.Exception]

at
com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:
594)
(See below for entire trace.)


com.kitedesk.web.OpenAuthenticationFilter.doFilter(OpenAuthenticationFilter.java:
71)

com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163)

com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58)
com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:
89)

com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163)

com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58)

com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:
118)
com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

com.google.sitebricks.routing.EventDispatchException: Exception
[InvalidEntryException - "Sorry, this file is too big. We can only
convert files up to 2 MB in size."] thrown by event method [public
com.google.gdata.util.InvalidEntryException: Sorry, this file is too
big. We can only convert files up to 2 MB in size.
<errors xmlns='http://schemas.google.com/g/2005'><error><domain>GData</
domain><code>InvalidEntryException</code><internalReason>Sorry, this
file is too big. We can only convert files up to 2 MB in size.</
internalReason></error></errors>


com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:
594)

com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse(GoogleGDataRequest.java:
563)

com.google.gdata.client.http.HttpGDataRequest.checkResponse(HttpGDataRequest.java:
552)

com.google.gdata.client.http.HttpGDataRequest.execute(HttpGDataRequest.java:
530)

com.google.gdata.client.http.GoogleGDataRequest.execute(GoogleGDataRequest.java:
535)
com.google.gdata.client.media.MediaService.insert(MediaService.java:
400)

com.kitedesk.service.google.GoogleFileServiceImpl.copyAttachment(GoogleFileServiceImpl.java:
1376)

com.kitedesk.service.google.GoogleFileServiceImpl.copyAttachments(GoogleFileServiceImpl.java:
1303)

com.kitedesk.service.DesktopServiceImpl.copyAttachments(DesktopServiceImpl.java:
1020)

Jared Rodriguez

unread,
Apr 8, 2012, 6:25:15 AM4/8/12
to kitede...@googlegroups.com
Did you have the ocr checkbox checked in  the upload dialog.  I wonder if the issue as a big file with that option.  Trying it now.
--
Jared Rodriguez


jrodr...@kitedesk.com

unread,
Apr 8, 2012, 6:54:11 AM4/8/12
to kitede...@googlegroups.com

That is the issue.  I just fixed it.  If a file is over Google's OCR size limit, then I turn the OCR option off for just that file when uploading.

-- -- -- -- --


Sent using KiteDesk

Reply all
Reply to author
Forward
0 new messages