Hi Mark,

Your suggestion worked perfectly, except for one small thing.  For some
reason moving the Window.open from the button click event, to the onSuccess
method, now creates a "pop up" window, instead of a new tab..  Its weird
because they are both being executed within the presenter class so i'm
unsure why its doing that.  Also since its now making a popup instead of a
new tab, google chrome setting need to be changed to allow popups.  Do you
know why moving window.open would all of a sudden make a pop up instead of
a new tab?

Thanks,

Joshua

On Wed, Feb 1, 2012 at 1:41 PM, Mark <mdshol...@gmail.com> wrote:

> The whole idea between AJAX is asynchronous operation, the client
> continues working while the server does work.  There's no telling how
> long the server will take to do its work so a Timer is not the best
> option.  Since you want the client to react when the server finishes
> you need to pass the workload to the server method and pass an
> AsyncCallback object.  In that object you put your Window.open() call
> in the onSuccess() method.
>
> Hope this helps.
>
> On Feb 1, 1:52 pm, Joshua Carey <jc11...@gmail.com> wrote:
> > I have a gwt application that calls a gwt servlet (from my presenter
> class)
> > to write a PDF file to disk, then in my presenter class I display the
> newly
> > created PDF using Window.open("my.pdf");.  The problem is that the
> > window.open executes before the pdf is finished writing to disk.  I would
> > like to know if there is a way to stall any further statements from
> > occurring until the pdf is finished writing.  Or is there a way to use
> some
> > sort of timer object that waits 5 seconds or more while the PDF is  being
> > created?  It would be nice to prompt the user a message box that says
> > "please wait while PDF is retrieved" and then when the PDF is finished
> > writing, we could automatically close the message box and execute the
> > window.open("my.pdf") command.  Here is the lines of code in the
> presenter
> > class:
> >
> > ButtonCell genericButtonCellType = new ButtonCell();
> > FieldUpdater<EOMDocument, String> previewUpdater = new
> > FieldUpdater<EOMDocument, String>()
> > {
> > @Override
> > public void update(int index, EOMDocument object, String value)
> > {
> > if (object.getByteBlob() == null) {
> > Window.alert("Sorry but the PDF you are requesting from the database is
> > empty. Please select another PDF to view!");} else {
> >
> > eventBus.writePdf(object.getByteBlob(), object.getIdocNumber());
> >         String blobURL =  GWT.getHostPageBaseURL() + "sp_pdf/" +
> > object.getPreviewBlobPath();
> >         Window.open(blobURL, "Search And Preview - PDF Review", null);
> >
> > }
> > }
> > };
> >
> > Thanks for the help.
> >
> > Joshua
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To post to this group, send email to google-web-toolkit@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-toolkit+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/google-web-toolkit?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to