You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Lodorvonhal <lo...@aol.com> on 2012/08/17 17:41:10 UTC

tapestry by JEE standard

I'm currently writing a bachelor thesis about tapestry.
I'm trying to classify tapestry by JEE standard. But I can't find any
information about it. 
A tapestry application is based on the Java-Servlet-API, but unlike servlets
tapestry pages are no singletons. 
Could you please give me information about the classification of a tapestry
application?

Thank you very much!




--
View this message in context: http://tapestry.1045711.n5.nabble.com/tapestry-by-JEE-standard-tp5715543.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: tapestry by JEE standard

Posted by Thiago H de Paula Figueiredo <th...@gmail.com>.
On Fri, 17 Aug 2012 12:41:10 -0300, Lodorvonhal <lo...@aol.com>  
wrote:

> I'm currently writing a bachelor thesis about tapestry.

Nice! :) Count on us for questions, explanations, etc. ;)

> I'm trying to classify tapestry by JEE standard. But I can't find any
> information about it.

I'd call it a Java web framework built on the top of the Servlet API.  
Tapestry itself is a servlet filter (javax.servlet.Filter), not a servlet  
(javax.servlet.TapestryFilter). In addition, except in rare scenarios,  
Tapestry applications can be written without using the Servlet API  
directly.

> A tapestry application is based on the Java-Servlet-API, but unlike  
> servlets tapestry pages are no singletons.

Tapestry pages *are* singletons since version 5.2. The state of the pages  
is thread local, even being singletons, due to Tapestry's rewriting  
classes of the fly, which is transparent.

One think I'd suggest you for underestanding Tapestry is to *not* think in  
terms of servlets and servlet filters.

-- 
Thiago H. de Paula Figueiredo

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


Re: tapestry by JEE standard

Posted by Lenny Primak <lp...@hope.nyc.ny.us>.
It's a web framework. You can think of it as a replacement for JSF and to some extent, CDI



On Aug 17, 2012, at 10:41 AM, Lodorvonhal <lo...@aol.com> wrote:

> I'm currently writing a bachelor thesis about tapestry.
> I'm trying to classify tapestry by JEE standard. But I can't find any
> information about it. 
> A tapestry application is based on the Java-Servlet-API, but unlike servlets
> tapestry pages are no singletons. 
> Could you please give me information about the classification of a tapestry
> application?
> 
> Thank you very much!
> 
> 
> 
> 
> --
> View this message in context: http://tapestry.1045711.n5.nabble.com/tapestry-by-JEE-standard-tp5715543.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
> 

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


Re: tapestry by JEE standard

Posted by Thiago H de Paula Figueiredo <th...@gmail.com>.
On Fri, 17 Aug 2012 20:40:59 -0300, Jay Ginete <ki...@gmail.com>  
wrote:

> I have always thought that Tapestry5 was classified as a  
> "Compontent-oriented" web framework and not as "MVC" web framework.

Tapestry 5 is definetely a component-oriented framework. Whether it is  
also MVC or not depends on the meaning you give to the term MVC. It seems  
you're considering MVC as the same as request-oriented. I don't think that  
way.

According to Wikipedia and its sources, "Model–View–Controller (MVC) is a  
type of computer user interface that separates the representation of  
information from the user's interaction with it.[1][2] The model consists  
of application data and business rules, and the controller mediates input,  
converting it to commands for the model or view.[3] A view can be any  
output representation of data, such as a chart or a diagram. Multiple  
views of the same data are possible, such as a pie chart for management  
and a tabular view for accountants. The central idea behind MVC is code  
reusability and separation of concerns."  
(http://en.wikipedia.org/wiki/Model–view–controller) I think Tapestry fits  
in this description, even considering it itself doesn't implement business  
rules, just uses them. In other words, it can be used to implement the V  
and the C. And some components, by themselves, are implemented following  
the MVC pattern.

> I tend to think that each page in a Tapestry5 app is a single stand  
> alone app that has components within it that respond to events. I even  
> sometimes think of Tapestry5 apps as RIA without the "R" if you use the  
> "zone" component in almost (or all) of your use cases.

As far as I know (and I may be completely wrong, as always), the term RIA  
is usually used in the sense that view logic is placed mostly in the  
client, not in the server. Here's the Wikipedia definition: "A Rich  
Internet Application (RIA) is a Web application that has many of the  
characteristics of desktop application software, typically delivered by  
way of a site-specific browser, a browser plug-in, an independent sandbox,  
extensive use of JavaScript, or a virtual machine.[1] Adobe Flash, JavaFX,  
and Microsoft Silverlight are currently the three most common  
platforms,...". Tapestry can be used to create RIAs, but I wouldn't  
consider itself a RIA. In the Java world, I'd consider the single page  
frameworks RIAs: GWT, Vaadin, Echo2, Echo3, etc.

PS: I love tilapia (the fish). It's sold and eaten a lot in Capitólio,  
Minas Gerais, Brazil, where I grew up. :)

-- 
Thiago H. de Paula Figueiredo

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


Re: tapestry by JEE standard

Posted by Jay Ginete <ki...@gmail.com>.
I have always thought that Tapestry5 was classified as a 
"Compontent-oriented" web framework and not as "MVC" web framework. I 
tend to think that each page in a Tapestry5 app is a single stand alone 
app that has components within it that respond to events. I even 
sometimes think of Tapestry5 apps as RIA without the "R" if you use the 
"zone" component in almost (or all) of your use cases.


On 8/18/2012 3:46 AM, Thiago H de Paula Figueiredo wrote:
> On Fri, 17 Aug 2012 16:30:06 -0300, Lodorvonhal <lo...@aol.com> 
> wrote:
>
>> distributed systems have a particular architecture. Web applications 
>> can be classified according to the MVC-pattern. I know how that looks 
>> in Tapestry.
>
> Tapestry implements MVC: pages and components classes are the C, V are 
> their templates and M depends on the component (BeanModel for Grid, 
> BeanEditor, BeanDisplay, GridDataSource for Grid, SelectModel for 
> Select and Palette, etc).
>
> If you're talking abouth 3 layer architecture, Tapestry (the web 
> framework, also called tapestry-core) is in the view layer, while 
> Tapestry-IoC can be used in the other layers too.
>
>> my professor wants a classification by fat-clint or fat-server. The
>> structure of an application.
>
> The structure of the application is the structure of the application, 
> not of Tapestry. Tapestry(-core) isn't a full stack framework, just a 
> web framework so the structure of the application itself isn't 
> affected by the use of Tapestry.
>
> Tapestry is a framework that does most of its logic server-side, but 
> does provide some client-side processing too (input validation 
> out-of-the-box plus anything you write in JavaScript which is used by 
> pages and components).
>


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


Re: tapestry by JEE standard

Posted by Thiago H de Paula Figueiredo <th...@gmail.com>.
On Fri, 17 Aug 2012 16:30:06 -0300, Lodorvonhal <lo...@aol.com>  
wrote:

> distributed systems have a particular architecture. Web applications can  
> be classified according to the MVC-pattern. I know how that looks in  
> Tapestry.

Tapestry implements MVC: pages and components classes are the C, V are  
their templates and M depends on the component (BeanModel for Grid,  
BeanEditor, BeanDisplay, GridDataSource for Grid, SelectModel for Select  
and Palette, etc).

If you're talking abouth 3 layer architecture, Tapestry (the web  
framework, also called tapestry-core) is in the view layer, while  
Tapestry-IoC can be used in the other layers too.

> my professor wants a classification by fat-clint or fat-server. The
> structure of an application.

The structure of the application is the structure of the application, not  
of Tapestry. Tapestry(-core) isn't a full stack framework, just a web  
framework so the structure of the application itself isn't affected by the  
use of Tapestry.

Tapestry is a framework that does most of its logic server-side, but does  
provide some client-side processing too (input validation out-of-the-box  
plus anything you write in JavaScript which is used by pages and  
components).

-- 
Thiago H. de Paula Figueiredo

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


Re: tapestry by JEE standard

Posted by Lodorvonhal <lo...@aol.com>.
distributed systems have a particular architecture. Web applications can be
classified according to the MVC-pattern. I know how that looks in Tapestry.

my professor wants a classification by fat-clint or fat-server. The
structure of an application.

I guess that is not express this in just a few answer.

I have the book by Igor Drobiazko - "Tapestry 5 Die Entwicklung von
Webanwendungen mit Leichtigkeit!"

I will now explain in detail the procedure as a tapestry application.

It's hard to explain what I need. but I think I know how I can write it.




--
View this message in context: http://tapestry.1045711.n5.nabble.com/tapestry-by-JEE-standard-tp5715543p5715550.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: tapestry by JEE standard

Posted by Michael Prescott <mi...@gmail.com>.
When you say classification, what do you mean?

On 17 August 2012 14:50, Lodorvonhal <lo...@aol.com> wrote:

> many thanks @ all for the reply.
> I know that tapestry is a web framework. I meant the classification of the
> finished application. I think you have helped me already. many thanks.
>
> I try to describe a little bit.
>
> Let's see what my professor says. :)
>
> I am not a theorist. My Tapestry application is ready. Unfortunately, in a
> bachelor thesis must always be a theoretical approach may be included. :-|
>
>
>
>
>
> --
> View this message in context:
> http://tapestry.1045711.n5.nabble.com/tapestry-by-JEE-standard-tp5715543p5715548.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>

Re: tapestry by JEE standard

Posted by Lodorvonhal <lo...@aol.com>.
many thanks @ all for the reply.
I know that tapestry is a web framework. I meant the classification of the
finished application. I think you have helped me already. many thanks. 

I try to describe a little bit.

Let's see what my professor says. :)

I am not a theorist. My Tapestry application is ready. Unfortunately, in a
bachelor thesis must always be a theoretical approach may be included. :-|





--
View this message in context: http://tapestry.1045711.n5.nabble.com/tapestry-by-JEE-standard-tp5715543p5715548.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: tapestry by JEE standard

Posted by "tapestry.kung.fu" <ba...@gmail.com>.
Best way to start is by spending 25$ and get this book
http://www.indiegogo.com/tapestry5book

It explains everything you want to know. 

Tapestry Pages are Singleton. One Instance of Page is used between multiple
threads.  Page can either save data in application session OR page session.
Application session is not recommended unless it is absolutely necessary to
do so because your application might be running in cluster environment. When
one node of cluster goes down, all sessions are replicated to other server.
Page session is probably implemented by help of ThreadLocal. Each Thread has
it's own share of memory. If you declare any variable with final of static
in your page, those variable will be visible to all threads. You can also
choose to declare variable such that they are discarded immediately after
thread is served. 

I would recommend you to start reading book and subscribe on this mailing
list. Also go back and look at historical threads. There is lot to learn.
Tapestry is using black magic ( :D ) inside it's guts called as Plastic. You
should visit Howard's video session talking about Plastic which is very
important piece to know. 

You also want to understand how spring bean injection work. It will give you
some basic idea why tapestry came up with IOC ( similar like tapestry,
goose, other frameworks which injects beans... IOC solves some of the
problem those other framework couldn't solve. ). 

Hopefully this leads you in right direction. 

Best of luck. 



--
View this message in context: http://tapestry.1045711.n5.nabble.com/tapestry-by-JEE-standard-tp5715543p5715545.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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