If another request is not an issue I'd prefer GWT-RPC. I'd be surprised if
there was no PHP "port".

On Fri, Jun 25, 2010 at 11:09 AM, Ben Harris <bharri...@gmail.com> wrote:

> That is a better solution, but they might not want the extra round
> trip time of requesting the data after the page has been sent down the
> wire.
>
> On Jun 25, 5:04 pm, Chris Boertien <chris.boert...@gmail.com> wrote:
> > You might want to take a look at this:
> http://code.google.com/webtoolkit/doc/latest/tutorial/JSON.html
> >
> > Although the examples there are using a servlet for the server-side,
> > that is not a requirement. The server simply needs to be accessible at
> > the requested URL and output the formatted JSON.
> >
> > The basic idea is to make a request to the server and have the server
> > send back the json data structure. You can then eval, or use a js json
> > parser, and setup Overlay types so you get to use the objects like
> > regular java objects.
> >
> > 2010/6/24 Jaroslav Záruba <jaroslav.zar...@gmail.com>:
> >
> >
> >
> > > I believe the module loads on document's load event, therefore pausing
> PHP
> > > does not help indeed.
> > > You can load the JSON using JsonpRequestBuilder. That means another
> > > (XHR)request to server. If that's an issue I'd try to output the JSON
> using
> > > PHP as you do now, but not into <script/> element. I would hide it
> within
> > > the page and afterwards convert that JSON-string into a JS-object in
> GWT.
> > > Or you could place the JSON-string into a <script/> element using GWT,
> tthat
> > > should fire the addTreeItems-method right away.
> > > When I needed to load some data from (3rd-party) server I created my
> > > receiving JS-function and the <script/> element with src-attribute by
> myself
> > > in onModuleLoad. It worked. And I guess that's similar to what the
> > > JsonpRequestBuilder does, but I did not know that class before. I'm
> quite
> > > new to GWT.
> > > That's also kind of disclaimer: I'm not sure whether the above is the
> best
> > > and most elegant solution. :)
> > > On Fri, Jun 25, 2010 at 3:25 AM, barbe...@muohio.edu <
> barbe...@muohio.edu>
> > > wrote:
> >
> > >> Thanks, that makes sense. However, do you have any suggestions on how
> > >> I might work around it? I want to be able to load all of the data on
> > >> startup, so I have called the PHP function that calls the javascript
> > >> function in the <body> of the .php file. I tried to throw in a PHP
> > >> sleep to delay the javascript from being called, but the sleep seems
> > >> to also delay the loading of the module, thus really giving me no
> > >> benefit. Any other suggestions would be great.
> >
> > >> On Jun 24, 8:47 pm, Jaroslav Záruba <jaroslav.zar...@gmail.com>
> wrote:
> > >> > It seems that your <script/> might get evaluated/executed before the
> > >> > module
> > >> > has finished loading and therefore your function window.addTreeItem
> > >> > might
> > >> > not exist yet.
> > >> > Several workarounds for that are possible I think.
> >
> > >> > On Thu, Jun 24, 2010 at 9:39 PM, barbe...@muohio.edu
> > >> > <barbe...@muohio.edu>wrote:
> >
> > >> > > Hi everyone,
> >
> > >> > > I am faced with a situation in which I must pass variables read in
> > >> > > from a database table using PHP to my GWT application. I am doing
> this
> > >> > > by using PHP to read in the data(which are Strings), and then
> calling
> > >> > > a JSNI function from my GWT application like so:
> >
> > >> > > $result = mysql_query("SELECT * FROM sampleTreeTable");
> >
> > >> > > while($row = mysql_fetch_array($result)) {
> > >> > >       $temp = $row['treeItem'];
> > >> > >       echo "<script language=javascript>addTreeItems('$temp');</
> > >> > > script>";
> > >> > > }
> >
> > >> > > I know that my echo statement works, because when I call other
> locally
> > >> > > defined javascript functions in the place of addTreeItems, they
> > >> > > execute just fine. It is only the JSNI function addTreeItems that
> does
> > >> > > not seem to execute.
> >
> > >> > > The function addTreeItems is defined in the Java source code for
> my
> > >> > > GWT application as follows:
> >
> > >> > > public void serverAdd(String s) {
> > >> > >       //some code
> > >> > > }
> >
> > >> > > public native void setShowTrigger(TreeTest x)/*-{
> >
> > >> > >          $wnd.addTreeItem = function(s) {
> >
> > >> > >  x...@com.treetest.tomproject.client.treetest
> ::serverAdd(Ljava/lang/
> > >> > > String;)(s);
> >
> > >> > >          };
> > >> > >  }-*/;
> >
> > >> > > When running my GWT application in development mode, accessing
> > >> > > addTreeItems through the html file works just fine, most of the
> time
> > >> > > anyways. Sometimes when I first start debugging it will not
> execute,
> > >> > > but if I refresh the page it always executes just fine.
> > >> > > The real problem occurs once I compile my application and deploy
> it to
> > >> > > my web server. I seem to be unable to call addTreeItems once my
> > >> > > application is deployed. Once I deploy my GWT generated html file,
> I
> > >> > > change the file from a .html to a .php file so that I can add the
> PHP
> > >> > > code, and everything still works just fine except my JSNI
> addTreeItems
> > >> > > method.
> >
> > >> > > So basically, I am completely lost on this issue. Anyone have any
> idea
> > >> > > how to accomplish what I am trying to do? I know I could use RPC
> to
> > >> > > connect to the database and do most all of this within my GWT
> > >> > > application, but the requirements of this project stipulate that I
> > >> > > avoid doing so. Any help at all would be great.
> >
> > >> > > --
> > >> > > 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-tool...@googlegroups.com.
> > >> > > To unsubscribe from this group, send email to
> >
> > >> > > google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@googlegroups.com>
> <google-web-toolkit%2Bunsubs
> > >> > > cr...@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-tool...@googlegroups.com.
> > >> To unsubscribe from this group, send email to
> > >> google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@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-tool...@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > > google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@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-tool...@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@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-tool...@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