Form refresh

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Form refresh

MaryRuth Lawrence

Hi,

 

I have 2 questions and both these questions refer to the java-properties example in the resources/apps folder:

 

  1. Is there a way to refresh the form (on the client side) based on a value that comes in from a processor? For example, in the “java-properties” example, the name, value pairs that are generated in the SystemProperties.java are propagated to its corresponding view.xsl and are accessible as "/properties/property/value" or "/properties/property/name”. Is there a way to refresh the form automatically (on the client machine) based on the return value of this query?
  2. Next question is how do I know immediately if there has been a change to OUTPUT_DATA (xml that is generated by the generateData in SystemProperties.java). For example, lets say that SystemProperties.java instantiates a Java Bean and gets the properties of the Bean (example: getName(), which is equal to “X”) to be sent as the name/value to view.xsl file. Is there a way to know (in the corresponding view.xsl automatically) if the getName() has returned a different value, that is, getName() now returns a “Y”.

 

Thank you,



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Form refresh

Erik Bruchez
Administrator
 >    1. Is there a way to refresh the form (on the client side) based on a
 >       value that comes in from a processor? For example, in the
 >       “java-properties” example, the name, value pairs that are
 >       generated in the SystemProperties.java are propagated to its
 >       corresponding view.xsl and are accessible as
 >       "/properties/property/value" or "/properties/property/name”. Is
 >       there a way to refresh the form automatically (on the client
 >       machine) based on the return value of this query?

This particular example doesn't have a form at all. The process goes
as follows:

* model.xpl runs and produces the data for the page view
* view.xspl formats the data for the web browser
* And that's it.

In general, you cannot "push" data automatically from the server to
the client (web browser), although there are some pseudo-push systems
like Comet that do just that but are not that easy to setup.

In most cases, refreshes on the browser can be handled much more
easily by having the browser periodically check the data on the
server. This is doable with XForms and a bit of JavaScript that
regularly sends events.

 >    2. Next question is how do I know immediately if there has been a
 >       change to /OUTPUT_DATA/ (xml that is generated by the generateData
 >       in SystemProperties.java)/./ For example, lets say that
 >       SystemProperties.java instantiates a Java Bean and gets the
 >       properties of the Bean (example: getName(), which is equal to “X”)
 >       to be sent as the name/value to view.xsl file. Is there a way to
 >       know (in the corresponding view.xsl automatically) if the
 >       getName() has returned a different value, that is, getName() now
 >       returns a “Y”.

If using XForms and using the periodi refresh strategy, doing an
instance replacement should just do the trick. The new data will
replace the old data, and the client will update the data on screen.

But do do this, you would have to build a slightly different example
which uses XForms.

-Erik

--
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/





--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws