-
1. Re: Seam and (or vs) Tapestry 5
tony.herstell1 Aug 8, 2007 11:10 PM (in response to mgrouch)These are different paradigms.
I have used tapestry and Seam (JSF) and Seam has a number of significant advantages over tapestry in my opinion...
I would recommend you do a spike of your main program thread in both Seam and Tapestry and by then you would be able to tell for yourself.
A point to consider is that Seam/JSF is pretty much where Sun (JAVA EE) is going as even Seam is a reference implementation of a JSR (http://jcp.org/en/jsr/detail?id=299) so its very "mainstream" and transportable.
I hope this helps. -
2. Re: Seam and (or vs) Tapestry 5
tony.herstell1 Aug 8, 2007 11:12 PM (in response to mgrouch)Sorry...
> reference implementation
Thats a bit strong.. but it's helping form the spec I believe. -
3. Re: Seam and (or vs) Tapestry 5
norman.richards Aug 8, 2007 11:14 PM (in response to mgrouch)As far as I know, nobody has looked at Tapestry support. Seam core is more and more separate from JSF now (see the GWT support) that it wouldn't surprise me if it is close to being a reasonable thing. My personal recommendation is to stick with JSF. I have nothing bad to say about Tapestry, but JSF works really well now and has the momentum of standardization behind it improving it.
That being said, we'd definitely welcome anyone interested in tapestry integration to give it a shot. -
4. Re: Seam and (or vs) Tapestry 5
thejavafreak Aug 8, 2007 11:27 PM (in response to mgrouch)Yes you can. But you'll need to do some extra work integrating Tapestry with Seam.
-
5. Re: Seam and (or vs) Tapestry 5
mgrouch Aug 8, 2007 11:50 PM (in response to mgrouch)Seam doesn't support injection into servlets ans JSP lifecycle methods.
It only does it for JSF. Would it possible (or make sense) to have this type of functionality? -
6. Re: Seam and (or vs) Tapestry 5
norman.richards Aug 9, 2007 1:43 AM (in response to mgrouch)You can use the seam filter to make sure you have seam initialized around a servlet. I suppose it wouldn't take much effort to add another filter to handle bijection, but I'm not entirely sure why someone would want to do that.
-
7. Re: Seam and (or vs) Tapestry 5
mgrouch Aug 9, 2007 11:26 AM (in response to mgrouch)Tapestry has some advantages over JSF. One of them is performance.
AFAIK it compiles code against bean code so no reflection overhead +
more errors can be discovered at compile time compared to facelets.
JSF performance is one of the issues which prevents its wider adoption.
JSF also requires much more memory on server side.
Tapestry 5 seems to be major rewrite of tapestry so use annotations, etc.
So I wonder in which applications it would make sense to use it vs
Seam/JSF combo. -
8. Re: Seam and (or vs) Tapestry 5
norman.richards Aug 9, 2007 11:46 AM (in response to mgrouch)Based in my experience with production applications, JSF is not a significant performance concern. I don't know if that is true across the board, but that's my experience. Honestly, I would suspect the overhead of Seam itself is larger than the overhead of JSF, but again I don't see any performance issues in production apps because of it.
-
9. Re: Seam and (or vs) Tapestry 5
michael.yuan Aug 9, 2007 12:30 PM (in response to mgrouch)Reflection by itself should not introduce a big performance hit. As Norman said, Seam uses much more reflection than JSF. Yet, in our tests, adding Seam only decrease performance by 5% to 10%.
The big performance problem in JSF is the need to serialize objects. You can reduce that by using server side state saving but than you need more server memory and reduce clustering performance. However, as Norman said, we do not see "performance" as a big issue for JSF at all. It performs "good enough" for the vast majority of web applications.
Having said that, I'd love to see Seam integrated with other web frameworks because not everyone is sold on JSF. But given the resources we have, this type of integration will probably need to come from the community ... -
10. Re: Seam and (or vs) Tapestry 5
mgrouch Aug 9, 2007 5:42 PM (in response to mgrouch)We always use server side state saving but still observe slow performance with JSF. I'm pretty sure it is attributed to JSF (and not Seam). JSF needs to operate on a tree of components (do various searches on it) and there are 6 phases when it could do that. There seems to be some HTML reformatting happening on server side as well (by ajax4jsf). All of it makes it (in my experience) 5 times slower than same tasks with JSP.
(yes it is that bad).
All of it makes people to look for new alternatives. Tapestry 5 (which is new, annotation based) looks interesting as well as using Seam with no JSF. In JSF world pages are NOT COMPILED against beans so many errors can't be discovered at build time. -
11. Re: Seam and (or vs) Tapestry 5
michael.yuan Aug 9, 2007 5:48 PM (in response to mgrouch)So, mgrouch, are you volunteering to help us out with Tapestry integration? :) It should not be too hard since as Norman indicated, the Seam core has no dependency on JSF ...
Do you want to give it a try? We'd appreciate it. :) -
12. Re: Seam and (or vs) Tapestry 5
mgrouch Aug 9, 2007 6:26 PM (in response to mgrouch)My current work schedule makes it impossible. Might be someone from tapestry developers team would be interested in doing it...
-
13. Re: Seam and (or vs) Tapestry 5
mgrouch Aug 9, 2007 6:29 PM (in response to mgrouch)BTW in tapestry 5 they are building brand new IoC controller based on annotations and javassist byte code manipulation. Might be you guys
could convince them to stop doing it and just use Seam for it. -
14. Re: Seam and (or vs) Tapestry 5
epbernard Aug 9, 2007 6:36 PM (in response to mgrouch)"mgrouch" wrote:
All of it makes it (in my experience) 5 times slower than same tasks with JSP.
Do you mean your 200ms task involving html, ejb, database access now takes 1s, or do you mean your 200ms now takes 220ms?