ADF Faces and Server-Side-Push

Some of you already know that ADF Faces does Server-Side-Push, with its ADS (Active Data Service) facility. It is a very feature rich offering that has cool stuff, under the hood. Over the last release we also improved our documentation.

To mention only a few features, ADS supports HA/fail-over since 2008, but that is unfortunately not (yet) mentioned in the documentation.. Another cool thing is that it doesn’t waste the “open connection limitation” from some browsers, as it shares an “active channel” for the push content. Therefore only one window is “talking” with the server and it basically dispatches the streamed-up content to all registered (slave) windows.

The key concept of the ADS solution is that it is pretty much model driven right now and therefore doesn’t force the page author to do (much) sit-ups… Once you have a working implementation of our ActiveDataModel interface, you get active data for free, with our table component (<af:table value=”#{myBean.activeModelImplementation}” />), for instance. For the last release we also offered a convenience implementation, called the Active Data Proxy. That is a pretty nice option to also connect your existing model (and/or enterprise Java, like JPA) with the ADF Faces Push-Solution (meaning ADS). I will post some examples and use-cases, done with the “proxy” here soon…

By default ADS uses (HTTP) STREAMING as its transport mechanism. However the solution also supports LONG-POLLING and POLLING (periodic polling). For the last release we added the LONG-POLLING support. Before that we offered POLLING (still supported πŸ˜‰ ) as an alternative transport option, as HTTP-STREAMING can have some issues with (legacy) infrastructure (e.g. HTTP 1.0 proxy-servers). A big benefit is that the used transport-option is transparent for the developer, as the ADS subsystem handles that for you. That means the <af:table> component, for instance, just receives the new data; regardless if ADS does STREAMING, LONG-POLLING or even (periodic) POLLING.

ADS (and ADF Faces, of course) has a ton of cool features. You just need to explore them πŸ˜‰

To get started, get a copy of our latest (November 2009) release of JDeveloper and read the documentation πŸ™‚


Posted in adf, ajax, comet, java, jdeveloper, jsf, oracle, Oracle ADF Faces
4 comments on “ADF Faces and Server-Side-Push
  1. mangun says:

    I’ve been working on this ADS and it surely is interesting. I’ve developed a program to update a table component as the changes are made in the database. However, I also require to update a text field using ADS. This is not possible using the proxy framework. Have you got any sort of an idea how I can do this?


  2. […] of the ADF Faces table component (which supports data virtualization and Ajax-based scrolling) and active data (our Comet/push solution) were particularly well […]

  3. […] Faces has great and flexible support for Comet with its ADS facility. This post quickly describes you to push data from a backend to your client. […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: