You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Rich M <ri...@moremagic.com> on 2011/03/11 20:40:43 UTC
tapestry-upload and zones?
Hi,
I've been working on Image file upload and display. With the help of a
previous thread, I was able to get a fully working test component that
could have a client upload a file from a form, and then have the file
saved on the server and rendered back to the client in the browser.
I've moved on to integration of this concept into my actual application.
I'm having an issue capturing the UploadedFile in any event handlers on
a page where the form is within a Zone. The form is also within a Block
that is delegated in case that factors in at all.
When the form is submitted, the UploadedFile object is null, and thus I
cannot handle the object.
In my test component, the UploadedFile object resolves to a reference to
the Image file uploaded by the client (had they uploaded one and no
exception occurred). I did another sanity check by integrating the
upload component into another form for the same Entity in my application
that is not within a Zone or Block. The UploadedFile object was valid in
this page as well after form submit, leaving me to think there is
something about the Zone or Block that is interfering with the results I
expected.
This is how I have been using the Upload component
Page:
@Property
private UploadedFile uploadedFile;
public void onSuccess(){
if(uploadedFile == null){
log.debug("Image file was not provided");
}else{
imageManager.saveImage(uploadedFile);
}
}
TML:
<input t:type="upload" t:id="uploadedFile" />
Also since I'd had a couple threads recently where I had forgot to use
the t:zone attribute properly, I tried out t:zone on the upload
component to sanity check that as well, but that did not appear to
change anything.
Is anyone familiar with what challenge(s) I may be facing here in
getting the upload to work?
Thanks,
Rich
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
Re: tapestry-upload and zones?
Posted by Rich M <ri...@moremagic.com>.
Looking through it seems like some browsers (Firefox 3 at the least)
have started working file uploads into their APIs so they can be used in
AJAX, but I don't believe the cross-browser coverage for that is good
enough yet.
I was reading into the IFrame solution when I happened upon a comment
from someone saying you can return a 204 No Content HTTP Response to
prevent a page refresh. Preventing a page refresh would be good enough
for my page to continue otherwise functioning asynchronously while still
allowing for file uploads.
I was able to implement this. I took the upload component out of the
AJAX form and created a separate form for it in the block. This form
calls an onSuccess method that handles the UploadedFile and then returns
a NoContentStreamResponse I wrote up:
public class NoContentStreamResponse implements StreamResponse {
@Override
public String getContentType() {
return "text/plain";
}
@Override
public InputStream getStream() throws IOException {
return new ByteArrayInputStream(new byte[]{});
}
@Override
public void prepareResponse(Response resp) {
resp.setStatus(204);
resp.setContentLength(0);
}
}
So while it is not exactly asynchronous, it does prevent page refresh
(which for me was the main point anyway, avoiding the page render
life-cycle), avoids using an i-frame and the extra code wiring to make
that work, and more importantly it works. Thought I'd share it in case
anyone else comes across a situation similar to mine.
On 03/11/2011 04:08 PM, Rich M wrote:
> Oh... I did not realize that. Great reference, I'll see what I can
> figure out, thanks!
>
> On 03/11/2011 03:17 PM, Thiago H. de Paula Figueiredo wrote:
>> File uploading doesn't work with AJAX without faking it using iframes
>> or using Flash. It doesn't matter if you're using Tapestry or not,
>> this is a limitation of AJAX itself. See this:
>> http://stackoverflow.com/questions/543926/is-it-possible-to-use-ajax-to-do-file-upload.
>>
>>
>> On Fri, 11 Mar 2011 16:40:43 -0300, Rich M <ri...@moremagic.com>
>> wrote:
>>
>>> Hi,
>>>
>>> I've been working on Image file upload and display. With the help of
>>> a previous thread, I was able to get a fully working test component
>>> that could have a client upload a file from a form, and then have
>>> the file saved on the server and rendered back to the client in the
>>> browser.
>>>
>>> I've moved on to integration of this concept into my actual
>>> application. I'm having an issue capturing the UploadedFile in any
>>> event handlers on a page where the form is within a Zone. The form
>>> is also within a Block that is delegated in case that factors in at
>>> all.
>>>
>>> When the form is submitted, the UploadedFile object is null, and
>>> thus I cannot handle the object.
>>>
>>> In my test component, the UploadedFile object resolves to a
>>> reference to the Image file uploaded by the client (had they
>>> uploaded one and no exception occurred). I did another sanity check
>>> by integrating the upload component into another form for the same
>>> Entity in my application that is not within a Zone or Block. The
>>> UploadedFile object was valid in this page as well after form
>>> submit, leaving me to think there is something about the Zone or
>>> Block that is interfering with the results I expected.
>>>
>>> This is how I have been using the Upload component
>>>
>>> Page:
>>>
>>> @Property
>>> private UploadedFile uploadedFile;
>>>
>>> public void onSuccess(){
>>> if(uploadedFile == null){
>>> log.debug("Image file was not provided");
>>> }else{
>>> imageManager.saveImage(uploadedFile);
>>> }
>>> }
>>>
>>> TML:
>>>
>>> <input t:type="upload" t:id="uploadedFile" />
>>>
>>> Also since I'd had a couple threads recently where I had forgot to
>>> use the t:zone attribute properly, I tried out t:zone on the upload
>>> component to sanity check that as well, but that did not appear to
>>> change anything.
>>>
>>> Is anyone familiar with what challenge(s) I may be facing here in
>>> getting the upload to work?
>>>
>>> Thanks,
>>> Rich
>>>
>>> ---------------------------------------------------------------------
>>> 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
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
Re: tapestry-upload and zones?
Posted by Rich M <ri...@moremagic.com>.
Oh... I did not realize that. Great reference, I'll see what I can
figure out, thanks!
On 03/11/2011 03:17 PM, Thiago H. de Paula Figueiredo wrote:
> File uploading doesn't work with AJAX without faking it using iframes
> or using Flash. It doesn't matter if you're using Tapestry or not,
> this is a limitation of AJAX itself. See this:
> http://stackoverflow.com/questions/543926/is-it-possible-to-use-ajax-to-do-file-upload.
>
>
> On Fri, 11 Mar 2011 16:40:43 -0300, Rich M <ri...@moremagic.com> wrote:
>
>> Hi,
>>
>> I've been working on Image file upload and display. With the help of
>> a previous thread, I was able to get a fully working test component
>> that could have a client upload a file from a form, and then have the
>> file saved on the server and rendered back to the client in the browser.
>>
>> I've moved on to integration of this concept into my actual
>> application. I'm having an issue capturing the UploadedFile in any
>> event handlers on a page where the form is within a Zone. The form is
>> also within a Block that is delegated in case that factors in at all.
>>
>> When the form is submitted, the UploadedFile object is null, and thus
>> I cannot handle the object.
>>
>> In my test component, the UploadedFile object resolves to a reference
>> to the Image file uploaded by the client (had they uploaded one and
>> no exception occurred). I did another sanity check by integrating the
>> upload component into another form for the same Entity in my
>> application that is not within a Zone or Block. The UploadedFile
>> object was valid in this page as well after form submit, leaving me
>> to think there is something about the Zone or Block that is
>> interfering with the results I expected.
>>
>> This is how I have been using the Upload component
>>
>> Page:
>>
>> @Property
>> private UploadedFile uploadedFile;
>>
>> public void onSuccess(){
>> if(uploadedFile == null){
>> log.debug("Image file was not provided");
>> }else{
>> imageManager.saveImage(uploadedFile);
>> }
>> }
>>
>> TML:
>>
>> <input t:type="upload" t:id="uploadedFile" />
>>
>> Also since I'd had a couple threads recently where I had forgot to
>> use the t:zone attribute properly, I tried out t:zone on the upload
>> component to sanity check that as well, but that did not appear to
>> change anything.
>>
>> Is anyone familiar with what challenge(s) I may be facing here in
>> getting the upload to work?
>>
>> Thanks,
>> Rich
>>
>> ---------------------------------------------------------------------
>> 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-upload and zones?
Posted by Kalle Korhonen <ka...@gmail.com>.
I second Juan on the Valums uploader - it's the best I've seen. And
great news Christian, I should keep a closer eye on tapestry-jquery
(been using a fairly old frozen version of it), thanks!
Kalle
On Fri, Mar 11, 2011 at 4:16 PM, Christian Riedel
<cr...@googlemail.com> wrote:
> I contributed an integration with this file-uploader for Tapestry5-JQuery lately (if you consider using jQuery instead:)
>
> https://github.com/got5/tapestry5-jquery
> https://github.com/got5/tapestry5-jquery/blob/master/src/main/java/org/got5/tapestry5/jquery/components/AjaxUpload.java
>
>
> Am 12.03.2011 um 00:45 schrieb Juan E. Maya:
>
>> Hi Rich, u might try this Project. https://github.com/valums/file-uploader
>>
>> Demo: http://valums.com/files/2010/file-uploader/demo.htm
>> I have used it successfully in a few Tap5 projects and was not that
>> hard to integrated. Sadly i haven't had the time to release it as a
>> standalone tap module. It even supports HTML5 Drag&Drop and falls back
>> to JS if not supported.
>>
>> Greetings
>>
>> On Fri, Mar 11, 2011 at 9:17 PM, Thiago H. de Paula Figueiredo
>> <th...@gmail.com> wrote:
>>> File uploading doesn't work with AJAX without faking it using iframes or
>>> using Flash. It doesn't matter if you're using Tapestry or not, this is a
>>> limitation of AJAX itself. See this:
>>> http://stackoverflow.com/questions/543926/is-it-possible-to-use-ajax-to-do-file-upload.
>>>
>>>
>>> On Fri, 11 Mar 2011 16:40:43 -0300, Rich M <ri...@moremagic.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> I've been working on Image file upload and display. With the help of a
>>>> previous thread, I was able to get a fully working test component that could
>>>> have a client upload a file from a form, and then have the file saved on the
>>>> server and rendered back to the client in the browser.
>>>>
>>>> I've moved on to integration of this concept into my actual application.
>>>> I'm having an issue capturing the UploadedFile in any event handlers on a
>>>> page where the form is within a Zone. The form is also within a Block that
>>>> is delegated in case that factors in at all.
>>>>
>>>> When the form is submitted, the UploadedFile object is null, and thus I
>>>> cannot handle the object.
>>>>
>>>> In my test component, the UploadedFile object resolves to a reference to
>>>> the Image file uploaded by the client (had they uploaded one and no
>>>> exception occurred). I did another sanity check by integrating the upload
>>>> component into another form for the same Entity in my application that is
>>>> not within a Zone or Block. The UploadedFile object was valid in this page
>>>> as well after form submit, leaving me to think there is something about the
>>>> Zone or Block that is interfering with the results I expected.
>>>>
>>>> This is how I have been using the Upload component
>>>>
>>>> Page:
>>>>
>>>> @Property
>>>> private UploadedFile uploadedFile;
>>>>
>>>> public void onSuccess(){
>>>> if(uploadedFile == null){
>>>> log.debug("Image file was not provided");
>>>> }else{
>>>> imageManager.saveImage(uploadedFile);
>>>> }
>>>> }
>>>>
>>>> TML:
>>>>
>>>> <input t:type="upload" t:id="uploadedFile" />
>>>>
>>>> Also since I'd had a couple threads recently where I had forgot to use the
>>>> t:zone attribute properly, I tried out t:zone on the upload component to
>>>> sanity check that as well, but that did not appear to change anything.
>>>>
>>>> Is anyone familiar with what challenge(s) I may be facing here in getting
>>>> the upload to work?
>>>>
>>>> Thanks,
>>>> Rich
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>>>> For additional commands, e-mail: users-help@tapestry.apache.org
>>>>
>>>
>>>
>>> --
>>> Thiago H. de Paula Figueiredo
>>> Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and
>>> instructor
>>> Owner, Ars Machina Tecnologia da Informação Ltda.
>>> Consultor, desenvolvedor e instrutor em Java, Tapestry e Hibernate
>>> Coordenador e professor da Especialização em Engenharia de Software com
>>> Ênfase em Java da Faculdade Pitágoras
>>> http://www.arsmachina.com.br
>>>
>>> ---------------------------------------------------------------------
>>> 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
>>
>
>
> ---------------------------------------------------------------------
> 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-upload and zones?
Posted by Christian Riedel <cr...@googlemail.com>.
I contributed an integration with this file-uploader for Tapestry5-JQuery lately (if you consider using jQuery instead:)
https://github.com/got5/tapestry5-jquery
https://github.com/got5/tapestry5-jquery/blob/master/src/main/java/org/got5/tapestry5/jquery/components/AjaxUpload.java
Am 12.03.2011 um 00:45 schrieb Juan E. Maya:
> Hi Rich, u might try this Project. https://github.com/valums/file-uploader
>
> Demo: http://valums.com/files/2010/file-uploader/demo.htm
> I have used it successfully in a few Tap5 projects and was not that
> hard to integrated. Sadly i haven't had the time to release it as a
> standalone tap module. It even supports HTML5 Drag&Drop and falls back
> to JS if not supported.
>
> Greetings
>
> On Fri, Mar 11, 2011 at 9:17 PM, Thiago H. de Paula Figueiredo
> <th...@gmail.com> wrote:
>> File uploading doesn't work with AJAX without faking it using iframes or
>> using Flash. It doesn't matter if you're using Tapestry or not, this is a
>> limitation of AJAX itself. See this:
>> http://stackoverflow.com/questions/543926/is-it-possible-to-use-ajax-to-do-file-upload.
>>
>>
>> On Fri, 11 Mar 2011 16:40:43 -0300, Rich M <ri...@moremagic.com> wrote:
>>
>>> Hi,
>>>
>>> I've been working on Image file upload and display. With the help of a
>>> previous thread, I was able to get a fully working test component that could
>>> have a client upload a file from a form, and then have the file saved on the
>>> server and rendered back to the client in the browser.
>>>
>>> I've moved on to integration of this concept into my actual application.
>>> I'm having an issue capturing the UploadedFile in any event handlers on a
>>> page where the form is within a Zone. The form is also within a Block that
>>> is delegated in case that factors in at all.
>>>
>>> When the form is submitted, the UploadedFile object is null, and thus I
>>> cannot handle the object.
>>>
>>> In my test component, the UploadedFile object resolves to a reference to
>>> the Image file uploaded by the client (had they uploaded one and no
>>> exception occurred). I did another sanity check by integrating the upload
>>> component into another form for the same Entity in my application that is
>>> not within a Zone or Block. The UploadedFile object was valid in this page
>>> as well after form submit, leaving me to think there is something about the
>>> Zone or Block that is interfering with the results I expected.
>>>
>>> This is how I have been using the Upload component
>>>
>>> Page:
>>>
>>> @Property
>>> private UploadedFile uploadedFile;
>>>
>>> public void onSuccess(){
>>> if(uploadedFile == null){
>>> log.debug("Image file was not provided");
>>> }else{
>>> imageManager.saveImage(uploadedFile);
>>> }
>>> }
>>>
>>> TML:
>>>
>>> <input t:type="upload" t:id="uploadedFile" />
>>>
>>> Also since I'd had a couple threads recently where I had forgot to use the
>>> t:zone attribute properly, I tried out t:zone on the upload component to
>>> sanity check that as well, but that did not appear to change anything.
>>>
>>> Is anyone familiar with what challenge(s) I may be facing here in getting
>>> the upload to work?
>>>
>>> Thanks,
>>> Rich
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>>> For additional commands, e-mail: users-help@tapestry.apache.org
>>>
>>
>>
>> --
>> Thiago H. de Paula Figueiredo
>> Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and
>> instructor
>> Owner, Ars Machina Tecnologia da Informação Ltda.
>> Consultor, desenvolvedor e instrutor em Java, Tapestry e Hibernate
>> Coordenador e professor da Especialização em Engenharia de Software com
>> Ênfase em Java da Faculdade Pitágoras
>> http://www.arsmachina.com.br
>>
>> ---------------------------------------------------------------------
>> 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
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org
Re: tapestry-upload and zones?
Posted by "Juan E. Maya" <ma...@gmail.com>.
Hi Rich, u might try this Project. https://github.com/valums/file-uploader
Demo: http://valums.com/files/2010/file-uploader/demo.htm
I have used it successfully in a few Tap5 projects and was not that
hard to integrated. Sadly i haven't had the time to release it as a
standalone tap module. It even supports HTML5 Drag&Drop and falls back
to JS if not supported.
Greetings
On Fri, Mar 11, 2011 at 9:17 PM, Thiago H. de Paula Figueiredo
<th...@gmail.com> wrote:
> File uploading doesn't work with AJAX without faking it using iframes or
> using Flash. It doesn't matter if you're using Tapestry or not, this is a
> limitation of AJAX itself. See this:
> http://stackoverflow.com/questions/543926/is-it-possible-to-use-ajax-to-do-file-upload.
>
>
> On Fri, 11 Mar 2011 16:40:43 -0300, Rich M <ri...@moremagic.com> wrote:
>
>> Hi,
>>
>> I've been working on Image file upload and display. With the help of a
>> previous thread, I was able to get a fully working test component that could
>> have a client upload a file from a form, and then have the file saved on the
>> server and rendered back to the client in the browser.
>>
>> I've moved on to integration of this concept into my actual application.
>> I'm having an issue capturing the UploadedFile in any event handlers on a
>> page where the form is within a Zone. The form is also within a Block that
>> is delegated in case that factors in at all.
>>
>> When the form is submitted, the UploadedFile object is null, and thus I
>> cannot handle the object.
>>
>> In my test component, the UploadedFile object resolves to a reference to
>> the Image file uploaded by the client (had they uploaded one and no
>> exception occurred). I did another sanity check by integrating the upload
>> component into another form for the same Entity in my application that is
>> not within a Zone or Block. The UploadedFile object was valid in this page
>> as well after form submit, leaving me to think there is something about the
>> Zone or Block that is interfering with the results I expected.
>>
>> This is how I have been using the Upload component
>>
>> Page:
>>
>> @Property
>> private UploadedFile uploadedFile;
>>
>> public void onSuccess(){
>> if(uploadedFile == null){
>> log.debug("Image file was not provided");
>> }else{
>> imageManager.saveImage(uploadedFile);
>> }
>> }
>>
>> TML:
>>
>> <input t:type="upload" t:id="uploadedFile" />
>>
>> Also since I'd had a couple threads recently where I had forgot to use the
>> t:zone attribute properly, I tried out t:zone on the upload component to
>> sanity check that as well, but that did not appear to change anything.
>>
>> Is anyone familiar with what challenge(s) I may be facing here in getting
>> the upload to work?
>>
>> Thanks,
>> Rich
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: users-help@tapestry.apache.org
>>
>
>
> --
> Thiago H. de Paula Figueiredo
> Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and
> instructor
> Owner, Ars Machina Tecnologia da Informação Ltda.
> Consultor, desenvolvedor e instrutor em Java, Tapestry e Hibernate
> Coordenador e professor da Especialização em Engenharia de Software com
> Ênfase em Java da Faculdade Pitágoras
> http://www.arsmachina.com.br
>
> ---------------------------------------------------------------------
> 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-upload and zones?
Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
File uploading doesn't work with AJAX without faking it using iframes or
using Flash. It doesn't matter if you're using Tapestry or not, this is a
limitation of AJAX itself. See this:
http://stackoverflow.com/questions/543926/is-it-possible-to-use-ajax-to-do-file-upload.
On Fri, 11 Mar 2011 16:40:43 -0300, Rich M <ri...@moremagic.com> wrote:
> Hi,
>
> I've been working on Image file upload and display. With the help of a
> previous thread, I was able to get a fully working test component that
> could have a client upload a file from a form, and then have the file
> saved on the server and rendered back to the client in the browser.
>
> I've moved on to integration of this concept into my actual application.
> I'm having an issue capturing the UploadedFile in any event handlers on
> a page where the form is within a Zone. The form is also within a Block
> that is delegated in case that factors in at all.
>
> When the form is submitted, the UploadedFile object is null, and thus I
> cannot handle the object.
>
> In my test component, the UploadedFile object resolves to a reference to
> the Image file uploaded by the client (had they uploaded one and no
> exception occurred). I did another sanity check by integrating the
> upload component into another form for the same Entity in my application
> that is not within a Zone or Block. The UploadedFile object was valid in
> this page as well after form submit, leaving me to think there is
> something about the Zone or Block that is interfering with the results I
> expected.
>
> This is how I have been using the Upload component
>
> Page:
>
> @Property
> private UploadedFile uploadedFile;
>
> public void onSuccess(){
> if(uploadedFile == null){
> log.debug("Image file was not provided");
> }else{
> imageManager.saveImage(uploadedFile);
> }
> }
>
> TML:
>
> <input t:type="upload" t:id="uploadedFile" />
>
> Also since I'd had a couple threads recently where I had forgot to use
> the t:zone attribute properly, I tried out t:zone on the upload
> component to sanity check that as well, but that did not appear to
> change anything.
>
> Is anyone familiar with what challenge(s) I may be facing here in
> getting the upload to work?
>
> Thanks,
> Rich
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
--
Thiago H. de Paula Figueiredo
Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
and instructor
Owner, Ars Machina Tecnologia da Informação Ltda.
Consultor, desenvolvedor e instrutor em Java, Tapestry e Hibernate
Coordenador e professor da Especialização em Engenharia de Software com
Ênfase em Java da Faculdade Pitágoras
http://www.arsmachina.com.br
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org