There are still potential pitfalls there in T5. If your objects are in forms, and looped through, by default, they will be serialized into the form and when "reconstituted", they will not be attached to a context. As of T5.1, loop, grid, etc. will use ValueEncoder to do this job (or PrimaryKeyEncoder, but that's deprecated in 5.1). The nice thing about T5 is that you can contribute ValueEncoders for object types that will be used throughout the app, so you're not having to constantly specify things. The t5-cayenne integration library provides an implementation. By default, it stashes the object type and pk into the stored string, but it also calls out to an encryption service (default implementation just returns the string passed to it; you can use ServiceOverrides to contribute your own version) so you have the option of encrypting the stored strings according to whatever mechanism suites your needs, thereby avoiding storing raw pks into urls & form data. All in all, the T5/cayenne experience is much better than the T3/cayenne experience; can't say much about T4/cayenne since I skipped from T3 to T5, but I suspect that, on the whole, it was similar to T3/cayenne.

Cheers,

Robert


On Sep 15, 2009, at 9/158:23 AM , Michael Gentry wrote:

Nice.  Did you have any integration issues?  I'm just starting to use
Cayenne with T5 and it has been surprisingly smooth thus far, but I
still have lingering memories of the hoops I had to jump through with
T4 (especially looping over data objects) serializing my objects.

Thanks,

mrg


On Mon, Sep 14, 2009 at 12:26 PM, Borut Bolčina <borut.bolc...@gmail.co m> wrote:
Yes, we successfully deployed a T5 application (openid server (70K users and
rising) and much more) and yes it uses Cayenne 3M6. :-)

I am again gaining momentum to continue writing.

Cheers,
Borut


2009/9/14 Michael Gentry <mgen...@masslight.net>

Hi Borut,

I'm just curious if you are still using Tapestry 5 (and if using
Cayenne with T5)? I also liked your blog where you were writing about T5. I found that useful when I was just starting to read about T5 and
get started in it (I'm still learning, of course -- no expert here).

mrg


On Mon, Sep 14, 2009 at 4:07 AM, Borut Bolčina <borut.bolc...@gmail.co m>
wrote:
Hello,

I think web developers should be given an advice at
http://cayenne.apache.org/doc/web-applications.html that if using
Cayenne
Servlet Filter the web application can be brought to a halt if a
malicious
user sends lots of  cookie-less requests (every request bounds data
context
to a new session). We were testing our app with JMeter and found out we
can
not afford to use filter approach.

It would be of most value if some debates from the mailing list about how
to
use DataContext based on different web application needs would be at the http://cayenne.apache.org/doc/obtaining-datacontext.html. What I have in mind is a tiny cookbook, just two or three recipes, on why it is good to gave one data context shared for all users, some data context created for
each request, some saved in the session, when not to put dc in the
session
etc.

Should I open an issue in the JIRA?

Cheers,
Borut




Reply via email to