You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Jose Gonzalez Gomez <jg...@opentechnet.com> on 2004/06/11 11:40:03 UTC

Modularized Applications in 3.1?

    In the following page from the Tapestry wiki

        http://wiki.apache.org/jakarta-tapestry/Tapestry31

    they mention modularized applications. Is this going to be / has 
been included in 3.1? It seems there is no reference to this version in 
the Apache download pages, so I guess the only way to test the ongoing 
work is to download the code right from the CVS, am I right?

    Regards
    Jose

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


RE: Modularized Applications in 3.1?

Posted by Mind Bridge <mi...@yahoo.com>.
If the application is separated into libraries on the principle "a separate
person = a separate library", even though what the programmers are doing is
really a part of one whole, you are definitely going to have problems.
Libraries are more or less designed to represent the "a separate purpose = a
separate library" approach. Basically, using libraries for the reasons shown
there is not that appropriate.

This is more of an issue with workflow, than with the application
modularization. It can be easily resolved with Ant, with CVS, or with a
number other tools. I am about to finish the doc on one such Ant tool which
will probably help with many such situations and will put it up for people
to use in the next few days.


-----Original Message-----
From: Julio C. Rivera [mailto:JulioC.Rivera@carm.es]
Sent: Friday, June 11, 2004 2:07 PM
To: Tapestry users
Subject: RE: Modularized Applications in 3.1?


See this thread
(http://www.caddr.com/macho/archives/tapestry-users/2004-1/3251.html) about
problems modularizing applications using libraries.

Regards.
   Julio.

At 12:22 11/06/2004, you wrote:
>At the moment the Wiki says:
>
><quote>
>Tapestry 3.0 expects all Tapestry pages and components in the application
>to be within a single directory
></quote>
>
>THIS IS *NOT* TRUE
>
>If the page/component is defined in the .application or .library file, the
>specification can be placed anywhere on the classpath. In this way the
>pages and components can be organized in different folders depending on
>their logical purpose. The "all files in one directory" approach was added
>only in 3.0 to make things easy for people who want to start quickly.
>
>There is another common falacy as well -- if defined in the .application
>file, all of the files of one page or component (.page/.jwc, .html, .java)
>can be placed in the same place, rather than have the .jwc in one, the
>.html in another, and the .java in yet another. If Tapestry is used for
>large scale development, that helps a lot.
>
>
>Back to modularized applications: You can organize Tapestry pages and
>components in libraries, like the default Contrib library, and then
>distribute those libraries in jars. This feature has been there for a long
>time (since 2.2, I think). All the web applications we produce consist of
>a multitude of libraries, among which a large number of Tapestry ones that
>contain shared components and pages. It seems to me that this qualifies as
>a modular approach.
>
>
>I think that what the Wiki essentially refers to is being able to place
>pages in different folders in the context, being able to use a different
>URL scheme, etc. Those features will be in 3.1, but they are not ready
>yet, I believe. Nevertheless, this does not preclude the modular
>organization of the application.
>
>-mb
>
>-----Original Message-----
>From: Jose Gonzalez Gomez [mailto:jgonzalez@opentechnet.com]
>Sent: Friday, June 11, 2004 12:40 PM
>To: Tapestry users
>Subject: Modularized Applications in 3.1?
>
>
>
>     In the following page from the Tapestry wiki
>
>         http://wiki.apache.org/jakarta-tapestry/Tapestry31
>
>     they mention modularized applications. Is this going to be / has
>been included in 3.1? It seems there is no reference to this version in
>the Apache download pages, so I guess the only way to test the ongoing
>work is to download the code right from the CVS, am I right?
>
>     Regards
>     Jose
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
>
>
>---
>Outgoing mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

*************************************************
Julio C. Rivera Riquelme
Unidad de Informática
Gerencia de Atención Primaria de Murcia
C\ Escultor Sanchez Lozano, 7
*************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Modularized Applications in 3.1?

Posted by Geoff Longman <gl...@intelligentworks.com>.
Right now that case causes Spindle to crash. I can prevent the crash but producing a valid build is going to be really tough if the restriction is relaxed.

Spindle walks the xml tree in a library file, resolves its child libraries and then its pages/components. That way the child libraries is fully resolved before any pages or components are resolved.

Spindle currently craches in a cycle because the parent is not finished being resolved, its Namespace object is not stored, so when the builder tries to resolve the child, the builder checks its store - not there - and tries to resolve the parent from scratch. You get into a loop and end up with a stack overflow.

I can get detect loops by storing the Namespace early with a (isFullyResolvedFlag). That fixes the stack overflow but doesn't make things any better 'cuz a half resolved Namespace will result in missing page/component errors.

Geoff


----- Original Message ----- 
From: "Mind Bridge" <mi...@yahoo.com>
To: "Tapestry development" <ta...@jakarta.apache.org>
Cc: <Ju...@carm.es>
Sent: Friday, June 11, 2004 8:16 AM
Subject: RE: Modularized Applications in 3.1?


> [Taking this to -dev]
> 
> There is one more issue in this post: at the moment libraries need to form a
> tree, rather than a graph -- there must not be cycles e.g. if lib A uses lib
> B, lib B cannot use lib A, since you are going to get A:B:A:B:A:B.....
> 
> I think this makes sense in a properly designed app, but nevertheless, is it
> desirable to relax that condition?
> 
> 
> -----Original Message-----
> From: Julio C. Rivera [mailto:JulioC.Rivera@carm.es]
> Sent: Friday, June 11, 2004 2:07 PM
> To: Tapestry users
> Subject: RE: Modularized Applications in 3.1?
> 
> 
> See this thread
> (http://www.caddr.com/macho/archives/tapestry-users/2004-1/3251.html) about
> problems modularizing applications using libraries.
> 
> Regards.
>    Julio.
> 
> At 12:22 11/06/2004, you wrote:
> >At the moment the Wiki says:
> >
> ><quote>
> >Tapestry 3.0 expects all Tapestry pages and components in the application
> >to be within a single directory
> ></quote>
> >
> >THIS IS *NOT* TRUE
> >
> >If the page/component is defined in the .application or .library file, the
> >specification can be placed anywhere on the classpath. In this way the
> >pages and components can be organized in different folders depending on
> >their logical purpose. The "all files in one directory" approach was added
> >only in 3.0 to make things easy for people who want to start quickly.
> >
> >There is another common falacy as well -- if defined in the .application
> >file, all of the files of one page or component (.page/.jwc, .html, .java)
> >can be placed in the same place, rather than have the .jwc in one, the
> >.html in another, and the .java in yet another. If Tapestry is used for
> >large scale development, that helps a lot.
> >
> >
> >Back to modularized applications: You can organize Tapestry pages and
> >components in libraries, like the default Contrib library, and then
> >distribute those libraries in jars. This feature has been there for a long
> >time (since 2.2, I think). All the web applications we produce consist of
> >a multitude of libraries, among which a large number of Tapestry ones that
> >contain shared components and pages. It seems to me that this qualifies as
> >a modular approach.
> >
> >
> >I think that what the Wiki essentially refers to is being able to place
> >pages in different folders in the context, being able to use a different
> >URL scheme, etc. Those features will be in 3.1, but they are not ready
> >yet, I believe. Nevertheless, this does not preclude the modular
> >organization of the application.
> >
> >-mb
> >
> >-----Original Message-----
> >From: Jose Gonzalez Gomez [mailto:jgonzalez@opentechnet.com]
> >Sent: Friday, June 11, 2004 12:40 PM
> >To: Tapestry users
> >Subject: Modularized Applications in 3.1?
> >
> >
> >
> >     In the following page from the Tapestry wiki
> >
> >         http://wiki.apache.org/jakarta-tapestry/Tapestry31
> >
> >     they mention modularized applications. Is this going to be / has
> >been included in 3.1? It seems there is no reference to this version in
> >the Apache download pages, so I guess the only way to test the ongoing
> >work is to download the code right from the CVS, am I right?
> >
> >     Regards
> >     Jose
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> >For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> >
> >---
> >Incoming mail is certified Virus Free.
> >Checked by AVG anti-virus system (http://www.grisoft.com).
> >Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
> >
> >
> >---
> >Outgoing mail is certified Virus Free.
> >Checked by AVG anti-virus system (http://www.grisoft.com).
> >Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
> >
> >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> >For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 
> *************************************************
> Julio C. Rivera Riquelme
> Unidad de Informática
> Gerencia de Atención Primaria de Murcia
> C\ Escultor Sanchez Lozano, 7
> *************************************************
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> ---
> Incoming mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
> 
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


RE: Modularized Applications in 3.1?

Posted by Mind Bridge <mi...@yahoo.com>.
[Taking this to -dev]

There is one more issue in this post: at the moment libraries need to form a
tree, rather than a graph -- there must not be cycles e.g. if lib A uses lib
B, lib B cannot use lib A, since you are going to get A:B:A:B:A:B.....

I think this makes sense in a properly designed app, but nevertheless, is it
desirable to relax that condition?


-----Original Message-----
From: Julio C. Rivera [mailto:JulioC.Rivera@carm.es]
Sent: Friday, June 11, 2004 2:07 PM
To: Tapestry users
Subject: RE: Modularized Applications in 3.1?


See this thread
(http://www.caddr.com/macho/archives/tapestry-users/2004-1/3251.html) about
problems modularizing applications using libraries.

Regards.
   Julio.

At 12:22 11/06/2004, you wrote:
>At the moment the Wiki says:
>
><quote>
>Tapestry 3.0 expects all Tapestry pages and components in the application
>to be within a single directory
></quote>
>
>THIS IS *NOT* TRUE
>
>If the page/component is defined in the .application or .library file, the
>specification can be placed anywhere on the classpath. In this way the
>pages and components can be organized in different folders depending on
>their logical purpose. The "all files in one directory" approach was added
>only in 3.0 to make things easy for people who want to start quickly.
>
>There is another common falacy as well -- if defined in the .application
>file, all of the files of one page or component (.page/.jwc, .html, .java)
>can be placed in the same place, rather than have the .jwc in one, the
>.html in another, and the .java in yet another. If Tapestry is used for
>large scale development, that helps a lot.
>
>
>Back to modularized applications: You can organize Tapestry pages and
>components in libraries, like the default Contrib library, and then
>distribute those libraries in jars. This feature has been there for a long
>time (since 2.2, I think). All the web applications we produce consist of
>a multitude of libraries, among which a large number of Tapestry ones that
>contain shared components and pages. It seems to me that this qualifies as
>a modular approach.
>
>
>I think that what the Wiki essentially refers to is being able to place
>pages in different folders in the context, being able to use a different
>URL scheme, etc. Those features will be in 3.1, but they are not ready
>yet, I believe. Nevertheless, this does not preclude the modular
>organization of the application.
>
>-mb
>
>-----Original Message-----
>From: Jose Gonzalez Gomez [mailto:jgonzalez@opentechnet.com]
>Sent: Friday, June 11, 2004 12:40 PM
>To: Tapestry users
>Subject: Modularized Applications in 3.1?
>
>
>
>     In the following page from the Tapestry wiki
>
>         http://wiki.apache.org/jakarta-tapestry/Tapestry31
>
>     they mention modularized applications. Is this going to be / has
>been included in 3.1? It seems there is no reference to this version in
>the Apache download pages, so I guess the only way to test the ongoing
>work is to download the code right from the CVS, am I right?
>
>     Regards
>     Jose
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
>
>
>---
>Outgoing mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

*************************************************
Julio C. Rivera Riquelme
Unidad de Informática
Gerencia de Atención Primaria de Murcia
C\ Escultor Sanchez Lozano, 7
*************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


RE: Modularized Applications in 3.1?

Posted by "Julio C. Rivera" <Ju...@carm.es>.
See this thread 
(http://www.caddr.com/macho/archives/tapestry-users/2004-1/3251.html) about 
problems modularizing applications using libraries.

Regards.
   Julio.

At 12:22 11/06/2004, you wrote:
>At the moment the Wiki says:
>
><quote>
>Tapestry 3.0 expects all Tapestry pages and components in the application 
>to be within a single directory
></quote>
>
>THIS IS *NOT* TRUE
>
>If the page/component is defined in the .application or .library file, the 
>specification can be placed anywhere on the classpath. In this way the 
>pages and components can be organized in different folders depending on 
>their logical purpose. The "all files in one directory" approach was added 
>only in 3.0 to make things easy for people who want to start quickly.
>
>There is another common falacy as well -- if defined in the .application 
>file, all of the files of one page or component (.page/.jwc, .html, .java) 
>can be placed in the same place, rather than have the .jwc in one, the 
>.html in another, and the .java in yet another. If Tapestry is used for 
>large scale development, that helps a lot.
>
>
>Back to modularized applications: You can organize Tapestry pages and 
>components in libraries, like the default Contrib library, and then 
>distribute those libraries in jars. This feature has been there for a long 
>time (since 2.2, I think). All the web applications we produce consist of 
>a multitude of libraries, among which a large number of Tapestry ones that 
>contain shared components and pages. It seems to me that this qualifies as 
>a modular approach.
>
>
>I think that what the Wiki essentially refers to is being able to place 
>pages in different folders in the context, being able to use a different 
>URL scheme, etc. Those features will be in 3.1, but they are not ready 
>yet, I believe. Nevertheless, this does not preclude the modular 
>organization of the application.
>
>-mb
>
>-----Original Message-----
>From: Jose Gonzalez Gomez [mailto:jgonzalez@opentechnet.com]
>Sent: Friday, June 11, 2004 12:40 PM
>To: Tapestry users
>Subject: Modularized Applications in 3.1?
>
>
>
>     In the following page from the Tapestry wiki
>
>         http://wiki.apache.org/jakarta-tapestry/Tapestry31
>
>     they mention modularized applications. Is this going to be / has
>been included in 3.1? It seems there is no reference to this version in
>the Apache download pages, so I guess the only way to test the ongoing
>work is to download the code right from the CVS, am I right?
>
>     Regards
>     Jose
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
>
>
>---
>Outgoing mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

*************************************************
Julio C. Rivera Riquelme
Unidad de Informática
Gerencia de Atención Primaria de Murcia
C\ Escultor Sanchez Lozano, 7
************************************************* 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Stop the back button

Posted by James Sherwood <js...@romulin.com>.
Hello,
    I have a site with a public and members side. Both are the same
application and you just log in and are shown a different menu and
graphics(done with conditionals)

    My page validation listener basically checks if you are in a members
only portion of the site and if you are, checks the visit to see if you are
logged in.

    This all works fine.  What I am trying to avoid is this:

When a member logs in, and then hits the logout button, I just do a
restart(clears the session).
This works fine but if you hit the browser's back button, you can get back
to the page they were on.
You cant navigate but you can read what is on the page.

Is there anyway to avoid this?

Thanks,

James



---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


RE: Modularized Applications in 3.1?

Posted by Mind Bridge <mi...@yahoo.com>.
At the moment the Wiki says:

<quote>
Tapestry 3.0 expects all Tapestry pages and components in the application to be within a single directory
</quote>

THIS IS *NOT* TRUE

If the page/component is defined in the .application or .library file, the specification can be placed anywhere on the classpath. In this way the pages and components can be organized in different folders depending on their logical purpose. The "all files in one directory" approach was added only in 3.0 to make things easy for people who want to start quickly.

There is another common falacy as well -- if defined in the .application file, all of the files of one page or component (.page/.jwc, .html, .java) can be placed in the same place, rather than have the .jwc in one, the .html in another, and the .java in yet another. If Tapestry is used for large scale development, that helps a lot.


Back to modularized applications: You can organize Tapestry pages and components in libraries, like the default Contrib library, and then distribute those libraries in jars. This feature has been there for a long time (since 2.2, I think). All the web applications we produce consist of a multitude of libraries, among which a large number of Tapestry ones that contain shared components and pages. It seems to me that this qualifies as a modular approach.


I think that what the Wiki essentially refers to is being able to place pages in different folders in the context, being able to use a different URL scheme, etc. Those features will be in 3.1, but they are not ready yet, I believe. Nevertheless, this does not preclude the modular organization of the application.

-mb

-----Original Message-----
From: Jose Gonzalez Gomez [mailto:jgonzalez@opentechnet.com]
Sent: Friday, June 11, 2004 12:40 PM
To: Tapestry users
Subject: Modularized Applications in 3.1?



    In the following page from the Tapestry wiki

        http://wiki.apache.org/jakarta-tapestry/Tapestry31

    they mention modularized applications. Is this going to be / has 
been included in 3.1? It seems there is no reference to this version in 
the Apache download pages, so I guess the only way to test the ongoing 
work is to download the code right from the CVS, am I right?

    Regards
    Jose

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
 

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.692 / Virus Database: 453 - Release Date: 5/28/2004
 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org