I don't think so, but I've never tried it.  I use HiveMind for my
transaction/hibernate support.  I actually use the Spring classes inside
HiveMind.

-----Original Message-----
From: Payne, Matthew [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, April 19, 2006 10:50 AM
To: Tapestry users
Subject: RE: tapestry for a webwork developer

Since pages/actions in Tapestry are abstract, does this interfere with the
ability to put spring transaction advise on a page/action?

matt

 -----Original Message-----
From:   James Carman [mailto:[EMAIL PROTECTED] 
Sent:   Wednesday, April 19, 2006 5:42 AM
To:     'Tapestry users'
Subject:        RE: tapestry for a webwork developer

The reason that a lot of folks like to use HiveMind in their Tapestry
projects as opposed to Spring is because it's just so easy to get at the
internal guts of Tapestry via HiveMind.  Since Tapestry is
configured/assembled via HiveMind, you can inject the Tapestry stuff right
into your service implementation objects.  One reason Tapestry uses HiveMind
(besides the fact that the guy who wrote Tapestry also wrote HiveMind) is
because it supports configurations and Spring does not.  

The only reason that I would use Spring is for the Hibernate support (not a
big fan of Acegi yet, but maybe because I haven't really used it that much),
but I've already written HiveMind modules that use the Spring
hibernate/transaction classes.  So, I can have the best of both worlds.  I
don't have to write transaction management code (Spring has already done
that) and I get to use configurations.


-----Original Message-----
From: Nick Faiz [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, April 18, 2006 10:42 PM
To: Tapestry users
Subject: Re: tapestry for a webwork developer

Ive been using webwork 2 previously to this, my first project with  
Tapestry (4.0).

I think the weirdest thing was accepting the idea of using ASO's  
(Application State Objects), whereas in webwork 2 we coded to a  
stateless model. I still have to see how it scales but we're running  
with it for now.

I'm also still not sure how, or even if, Tapestry meets the needs of  
interceptors for pages and services alike. This was very clear in an  
xwork.xml file, thanks to interceptor stacks. If anyone can point me  
to an example of an interceptor which can be function within  
Tapestry's framework I would be grateful (please don't reply and  
suggest I use a ServletFilter - I mean Tapestry's framework).

Besides that there are differences - Tapestry is excellent at the  
modular component thing, Webwork 2 is a little messier but makes for  
a faster development path. I find that I'm often fussing about with  
bindings and the like in .page and .jwc files. On the other hand, the  
configuration effort might be worth it, given how easily I can drop a  
component in somewhere.

I find Hivemind to be very verbose and complex compared to Spring.  
The documentation for Hivemind is sometimes lengthy and indirect and  
can be frustrating. Hivemind is running well within our project, but  
whenever I seek to learn more about it's workings I find myself  
preferring to read the source code.

On the other hand, I'm really enjoying using Tapestry and Hivemind.  
If I work with it again I'd like to experiment with configuring  
Velocity or Freemarker at the template level and see how else I could  
customize it. I might, perhaps, try and involve Spring, rather than  
using Hivemind as the IoC framework.

Cheers,
Nick


On 15/04/2006, at 6:24 AM, Payne, Matthew wrote:

> We can use Tapestry 4.
> It looks like I need to take a look at the specifics of applying  
> these services.
> Thanks.
>
> Matt
>
>
>  -----Original Message-----
> From:         James Carman [mailto:[EMAIL PROTECTED]
> Sent: Friday, April 14, 2006 3:14 PM
> To:   'Tapestry users'
> Subject:      RE: tapestry for a webwork developer
>
> Matt,
> Are you guys stuck with Tap3?  If you're using Tap4, then you can use
> HiveMind services as the "guts" of your pages/components.  Then,  
> you can
> apply interceptors to those services much like you're describing.
> James
>
> -----Original Message-----
> From: Payne, Matthew [mailto:[EMAIL PROTECTED]
> Sent: Friday, April 14, 2006 3:11 PM
> To: tapestry-user@jakarta.apache.org
> Subject: tapestry for a webwork developer
>
> I recently started with a new company that appears to have chosen  
> tapestry
> as their framework.
> I've previously been swimming webwork over the last couple of  
> years.  I have
> to admit I have somewhat bias.
>
> I am digging around for a few good sample apps that use reasonably  
> decent
> practices with Tapestry 4. I took a look at "Better Petshop" (uses  
> tapestry
> 3).  Is there anything "Better"?
>
> At first glance I was a little concerned with how verbose things were.
> For instance, the "actions" duplicate all the getters/setters that  
> were in
> the main pojo they are exposing.
>
> e.g. instead of exposing get/set Customer, it
> had to copy all the properties to its action properties
> i.e.
> setGivenName(customer.getFirstname());
>         setFamilyName(customer.getLastname());
>         setAddress1(customer.getAddr1());
>         setAddress2(customer.getAddr2());
>         setCity(customer.getCity());
>         setStateOrProvince(customer.getState());
>         setCountry(customer.getCountry());
>         setPostalCode(customer.getZip());
>         setTelephoneNumber(customer.getPhone());
>
> Is this typical with Tapestry apps?
>
> Can't we just expose the main pojo without all this extra code?
>
> The other thing I was concerned about is that much of the  
> application's
> behavior is achieve via inheritance(e.g. the archaic struts way).
> OrderBillingPage-->ProtectedPage-->PetshopBasePage
>
> In webwork, I'd probably achieve the same behavior by adding a some  
> type of
> securityInterceptor to that actions config(the are ways to default  
> this to
> whole packages of actions).
>
> <action name="orderBilling" class="com.something.OrderBillingAction">
>             <interceptor-ref name="defaultStack"/>
>             <interceptor-ref name="security"/> <!--- checks for  
> user login
> and redirects to global result "LOGON" if needed -->
>             <result name="success">billing.jsp</result>
> </action>
>
> Does tapestry have equivalent interceptors that can be defaulted for
> sections of the application without having to resort to inheritance?
>
> Thanks,
>
> Matt
>
> This message, including any attachments, is intended only for the
> recipient(s)
> named above. It may contain confidential and privileged  
> information. If you
> have
> received this communication in error, please notify the sender  
> immediately
> and
> destroy or delete the original message. Also, please be aware that  
> if you
> are not
> the intended recipient, any review, disclosure, copying,  
> distribution or any
>
> action or reliance based on this message is prohibited by law.
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
> This message, including any attachments, is intended only for the  
> recipient(s)
> named above. It may contain confidential and privileged  
> information. If you have
> received this communication in error, please notify the sender  
> immediately and
> destroy or delete the original message. Also, please be aware that  
> if you are not
> the intended recipient, any review, disclosure, copying,  
> distribution or any
> action or reliance based on this message is prohibited by law.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>

Nick Faiz,
Developer
www.q9software.com



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

This message, including any attachments, is intended only for the
recipient(s) 
named above. It may contain confidential and privileged information. If you
have 
received this communication in error, please notify the sender immediately
and 
destroy or delete the original message. Also, please be aware that if you
are not 
the intended recipient, any review, disclosure, copying, distribution or any

action or reliance based on this message is prohibited by law.  


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to