Re: How to generate PropertyExpressionLexer and PropertyExpressionParser

2009-01-21 Thread Ulrich Stärk

Thanks Andreas, this worked.

Uli

Andreas Andreou schrieb:

Not sure of the 100% correct process, but when running (in tapestry-core)
mvn -Dmaven.test.skip compile
there are some additional sources generated in target/generated-sources/antlr

I guess those need to be included in eclipse source path.

On Tue, Jan 20, 2009 at 2:23 PM, Ulrich Stärk u...@spielviel.de wrote:

I'm setting up tapestry5 in eclipse and stumbled upon missing
PropertyExpressionLexer and PropertyExpressionParser classes. It seems that
those have to be generated by antlr first. I tried to run mvn antlr:generate
from within the tapestry-core directory, but this failed. How do I generate
these classes?

Uli

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









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



Re: [T5] improve documentation

2009-01-21 Thread Borut Bolčina
Hi,

also a guide/recipes/good practices/tips/chapter for converting JSP
applications to Tapestry 5 would be very welcome. At least a paragraph
clarifying questions like: Can I have JSPs in my Tapestry 5 application or
do I have to have two web applications talking somehow to each other?, How
to post a form from JSP to a Tapestry page or vice versa?, ...

A guide on clustering. I know this info can be found in many locations on
the net, but writing it in Tapestry documentation would imho greatly improve
the credibility of the framework for serious web applications. I feel
tapestry is missing the scope in the market. It is not advertised in any
way, nor as a framework which one can use to quickly make a simple news
site, as other frameworks (non java) are better at that (so I hear), nor as
a framework which is best for large teams and large applications. Just look
at the web page for Zend PHP framework (http://www.zend.com). Which page do
you think management like more, zend's or tapestry's? Unfortunately
sometimes (too often) the arguments of power outweight the power of
arguments and the consequence is, well, We will use the framework which has
more flashy homepage!.

The community, us, must prove that a simple web application (some forms,
administration pages, publishing news, social crap, etc) can be done
without having a PhD in Computer Science. Tapestry relies much on convention
over configuration paradigm, that is why the documentation must be excelent.
Say, for example
http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/Form.html.
This page is clearly frightening - look at the first paragraph. So many
events and none/few of them has a decent explanation/usage scenario/example.
IMO all of them should be properly documented or not mentioned at all.

The authorization should have a chapter! Tapestry is a very powerful
framework and as such the same thing can be done differently, BUT...why
should one have to spend days/weeks to implement a decent
authentication/authorization system? There should be a guide for common
scenarios like form based authentication. Of course one can hunt for example
projects and study the guts of them, which in the end is very rewarding, but
time consuming. Newcomers should have clear goals on how to implement such
things, without jumping to the wiki and other places and fighting the
dependency incompatibilities.


-Borut

2009/1/13 Ulrich Stärk u...@spielviel.de

 Hi all,

 Tapestry's current documentation is very complete, covering almost
 everything a developer needs to know to be productive with Tapestry.
 Unfortunately this documentation is clustered across several locations thus
 making it hard to find information and very hard for beginners to get going.
 Sometimes even I am annoyed because I don't find the information I'm looking
 for at the expected place. There is the official user guide, which is no
 guide in the actual sense of the word but merely a collection of topics
 using Tapestry-specific vocabulary as the topics, making it hard for a
 beginner to get started. Then there is the tutorial that gets you started
 with Tapestry but doesn't go deep enough to know the name of the topic to
 look for in the user guide when a problem arises or more information on a
 subject is needed. Thirdly, there is the wiki that contains numerous
 examples on how to solve common use cases with Tapestry. And lastly there is
 the component reference that not only contains documentation for a specific
 component but also contains examples on how to use them to solve common use
 cases. Today for example, someone on the users mailing list asked for how to
 have some kind of a dynamic component. He wanted to display a certain
 component based on the outcome of a function he wrote in his page class.
 This question has come up before on the list and because of the Static
 Structure, Dynamic Behavior paradigm - which is a key principle and is not
 mentioned in the documentation but at the bottom of the start page - the
 solution is to use the Delegate component with blocks. In the Delegate
 component reference documentation there is an example covering exactly that
 use case. But it seems that the user wasn't able to find it - either he
 didn't look at all or more probably, he looked in the wrong place. How could
 he possibly know, that the solution to his use case is documented in a
 component named Delegate?
 Because I think that the current arrangement of the documentation makes it
 hard to grasp the concepts of Tapestry, especially for beginners, and to
 quickly find the information one seeks, I propose the following steps to be
 taken to improve the documentation:

 1. Re-arrange the current documentation to not just be an alphabetically
 ordered list of topics but instead to be some kind of guide to Tapestry.
 Group topics that belong together, start with basic topics and end with
 advanced ones.
 2. Print a short description of the purpose 

Table and carriage return

2009-01-21 Thread Cathy_123

Hello everybody,

I would like to do a table and in one column, I have several lines that I
would like to show on several lines. Something like that:
--
| header 1  | header 2 | header 3 |
--
| hello 1 | first line  | test 1 |
|   | second line |  |
--
| hello 2 | first linee| test 2|
|   | second line |  |
|   | third line|  |
--

 I set these values on the java code and I try to add ' \n\r' or '\r\n' or
'br' on the string but tapestry 
doesn't understand this carracters. Do you know how to do it ?

And I would like that the table doesn't add automatically the carriage
return when my string is too long like too.

| header 1  | header 2 | header 3 |
--
| hello 1 | first line  | test 1 |
|   | second line |  |
--
| hello 2 | first linee |  |   --- NOT OK
|   |  | test 2 |
|   | second line |  |
|   | third line|  |
--


thank you for your help

Cathy
-- 
View this message in context: 
http://www.nabble.com/Table-and-carriage-return-tp21580648p21580648.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Re: Table and carriage return

2009-01-21 Thread Olivier Jacquet


The second issue can be solved with css and the white-space property:
http://www.w3.org/TR/CSS21/text.html#propdef-white-space

The first issue is probably because you are escaping the br elements. 
I don't know how you turn that off for a property in Tapestry by heart 
but it should be quite easy to find in the reference.





Cathy_123 wrote, On 21/01/2009 11:40:

Hello everybody,

I would like to do a table and in one column, I have several lines that I
would like to show on several lines. Something like that:
--
| header 1  | header 2 | header 3 |
--
| hello 1 | first line  | test 1 |
|   | second line |  |
--
| hello 2 | first linee| test 2|
|   | second line |  |
|   | third line|  |
--

  I set these values on the java code and I try to add ' \n\r' or '\r\n' or
'br' on the string but tapestry
doesn't understand this carracters. Do you know how to do it ?

And I would like that the table doesn't add automatically the carriage
return when my string is too long like too.

| header 1  | header 2 | header 3 |
--
| hello 1 | first line  | test 1 |
|   | second line |  |
--
| hello 2 | first linee |  |--- NOT OK
|   |  | test 2 |
|   | second line |  |
|   | third line|  |
--


thank you for your help

Cathy


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



Re: Table and carriage return

2009-01-21 Thread Olivier Jacquet


Here is a possible answer to your first issue:
http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/OutputRaw.html


Olivier Jacquet wrote, On 21/01/2009 11:50:


The second issue can be solved with css and the white-space property:
http://www.w3.org/TR/CSS21/text.html#propdef-white-space

The first issue is probably because you are escaping the br elements.
I don't know how you turn that off for a property in Tapestry by heart
but it should be quite easy to find in the reference.




Cathy_123 wrote, On 21/01/2009 11:40:

Hello everybody,

I would like to do a table and in one column, I have several lines that I
would like to show on several lines. Something like that:
--
| header 1 | header 2 | header 3 |
--
| hello 1 | first line | test 1 |
| | second line | |
--
| hello 2 | first linee| test 2 |
| | second line | |
| | third line | |
--

I set these values on the java code and I try to add ' \n\r' or '\r\n' or
'br' on the string but tapestry
doesn't understand this carracters. Do you know how to do it ?

And I would like that the table doesn't add automatically the carriage
return when my string is too long like too.

| header 1 | header 2 | header 3 |
--
| hello 1 | first line | test 1 |
| | second line | |
--
| hello 2 | first linee | |--- NOT OK
| | | test 2 |
| | second line | |
| | third line | |
--


thank you for your help

Cathy


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



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



Re: Table and carriage return

2009-01-21 Thread Thiago HP
On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:

  I set these values on the java code and I try to add ' \n\r' or '\r\n' or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?

HTML completely ignores newline (\n, \r) characters unless they're
surrounded by a pre tag.
By the way, Tapestry templates *must* be valid XML, so you should use
br/ in your templates, not br.

By default, Tapestry converts  the character in lt;,  in gt; , etc.
The OutputRaw component
(http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/OutputRaw.html)
does not do this conversion, so it can be a solution to your problem.

 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.

This is a pure HTML question, not Tapestry related. And I don't know
the answer . . . Maybe you can try the pre tag.

-- 
Thiago

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



Re: Table and carriage return

2009-01-21 Thread Cathy_123

Thank you for your answer, but I use Tapestry 4, are there another solutions
or I have to change the version ? It's a project of my company so it's
difficult to change ...

Thank you for your help

cathy



Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?
 
 HTML completely ignores newline (\n, \r) characters unless they're
 surrounded by a pre tag.
 By the way, Tapestry templates *must* be valid XML, so you should use
 br/ in your templates, not br.
 
 By default, Tapestry converts  the character in lt;,  in gt; , etc.
 The OutputRaw component
 (http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/OutputRaw.html)
 does not do this conversion, so it can be a solution to your problem.
 
 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.
 
 This is a pure HTML question, not Tapestry related. And I don't know
 the answer . . . Maybe you can try the pre tag.
 
 -- 
 Thiago
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Table-and-carriage-return-tp21580648p21581350.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Re: Table and carriage return

2009-01-21 Thread Cathy_123


Thank you for your answer, but I use Tapestry 4, are there another solutions
or I have to change the version ? It's a project of my company so it's
difficult to change ...

Thank you for your help

cathy



Olivier Jacquet wrote:
 
 
 Here is a possible answer to your first issue:
 http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/OutputRaw.html
 
 
 Olivier Jacquet wrote, On 21/01/2009 11:50:

 The second issue can be solved with css and the white-space property:
 http://www.w3.org/TR/CSS21/text.html#propdef-white-space

 The first issue is probably because you are escaping the br elements.
 I don't know how you turn that off for a property in Tapestry by heart
 but it should be quite easy to find in the reference.




 Cathy_123 wrote, On 21/01/2009 11:40:
 Hello everybody,

 I would like to do a table and in one column, I have several lines that
 I
 would like to show on several lines. Something like that:
 --
 | header 1 | header 2 | header 3 |
 --
 | hello 1 | first line | test 1 |
 | | second line | |
 --
 | hello 2 | first linee| test 2 |
 | | second line | |
 | | third line | |
 --

 I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?

 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.

 | header 1 | header 2 | header 3 |
 --
 | hello 1 | first line | test 1 |
 | | second line | |
 --
 | hello 2 | first linee | |--- NOT OK
 | | | test 2 |
 | | second line | |
 | | third line | |
 --


 thank you for your help

 Cathy

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

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

-- 
View this message in context: 
http://www.nabble.com/Table-and-carriage-return-tp21580648p21581363.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



1 week of Tapestry

2009-01-21 Thread Sid Ferreira
Hi everyone!Im writting to talk about  my impressions after 1 week (6 work
days) of Tapestry.

I study and work with programming since 98, when I started with Turbo
Pascal. In 2003 I've met PHP and seen that web programming was what I want
to do. Since of it I've been working in bigger and bigger projects and
clients (went from forums, forms and Real State websites to full ajax image
manipulation web system).
Since my first C++ class I hated java... Cause C is good? Not, cause the
teacher ended each sentence with java do it too!. Ive even got in some
courses, but never got into it. Even in last one and half year, discussed a
lot with my colleagues about how workfull is java and how ridiculous it
was to see them waste time with so few progress.
Anyway, few days ago I've decided to learn java, just to proof that it was a
waste of time... Happens that I've met Tapestry and it is amazing. I've
enjoyed a lot learning and using it, even with my very limited knowledge in
java, I've managed to make a lot of things in just one week.
Maybe the best highlight to talk about is the community. Even slow as the
most java comunities I've met, it is far friendly and dedicated, in a point
that even when someone gives you a 'RTFM' is friendly, something unique at
my experiences.

With this small testimonial, I want to thank a lot to all members (freenode
guys specially) for being patient and friendly, I hope soon I have time to
write up a simple and clean tutorial about T5 and maybe can help up it to
grow (it may have more php developers trying java and failing).

thanks again

   SidGBF


RE: [T5] improve documentation

2009-01-21 Thread Newham, Cameron
I think we are all in agreement that the documentation needs a radical overhaul 
(and lots to be written).

The next question is, who is going to do it?

A while ago someone proposed a book on T5. A small group from here organised a 
separate discussion group and went off to work on it (I have no idea how it is 
going. Does anyone know?)

Maybe a similar thing should be done w.r.t this current issue?

c.


-Original Message-
From: Borut Bolčina [mailto:borut.bolc...@gmail.com] 
Sent: 21 January 2009 08:58
To: Tapestry users
Subject: Re: [T5] improve documentation

Hi,

also a guide/recipes/good practices/tips/chapter for converting JSP
applications to Tapestry 5 would be very welcome. At least a paragraph
clarifying questions like: Can I have JSPs in my Tapestry 5 application or
do I have to have two web applications talking somehow to each other?, How
to post a form from JSP to a Tapestry page or vice versa?, ...

A guide on clustering. I know this info can be found in many locations on
the net, but writing it in Tapestry documentation would imho greatly improve
the credibility of the framework for serious web applications. I feel
tapestry is missing the scope in the market. It is not advertised in any
way, nor as a framework which one can use to quickly make a simple news
site, as other frameworks (non java) are better at that (so I hear), nor as
a framework which is best for large teams and large applications. Just look
at the web page for Zend PHP framework (http://www.zend.com). Which page do
you think management like more, zend's or tapestry's? Unfortunately
sometimes (too often) the arguments of power outweight the power of
arguments and the consequence is, well, We will use the framework which has
more flashy homepage!.

The community, us, must prove that a simple web application (some forms,
administration pages, publishing news, social crap, etc) can be done
without having a PhD in Computer Science. Tapestry relies much on convention
over configuration paradigm, that is why the documentation must be excelent.
Say, for example
http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/Form.html.
This page is clearly frightening - look at the first paragraph. So many
events and none/few of them has a decent explanation/usage scenario/example.
IMO all of them should be properly documented or not mentioned at all.

The authorization should have a chapter! Tapestry is a very powerful
framework and as such the same thing can be done differently, BUT...why
should one have to spend days/weeks to implement a decent
authentication/authorization system? There should be a guide for common
scenarios like form based authentication. Of course one can hunt for example
projects and study the guts of them, which in the end is very rewarding, but
time consuming. Newcomers should have clear goals on how to implement such
things, without jumping to the wiki and other places and fighting the
dependency incompatibilities.


-Borut

2009/1/13 Ulrich Stärk u...@spielviel.de

 Hi all,

 Tapestry's current documentation is very complete, covering almost
 everything a developer needs to know to be productive with Tapestry.
 Unfortunately this documentation is clustered across several locations thus
 making it hard to find information and very hard for beginners to get going.
 Sometimes even I am annoyed because I don't find the information I'm looking
 for at the expected place. There is the official user guide, which is no
 guide in the actual sense of the word but merely a collection of topics
 using Tapestry-specific vocabulary as the topics, making it hard for a
 beginner to get started. Then there is the tutorial that gets you started
 with Tapestry but doesn't go deep enough to know the name of the topic to
 look for in the user guide when a problem arises or more information on a
 subject is needed. Thirdly, there is the wiki that contains numerous
 examples on how to solve common use cases with Tapestry. And lastly there is
 the component reference that not only contains documentation for a specific
 component but also contains examples on how to use them to solve common use
 cases. Today for example, someone on the users mailing list asked for how to
 have some kind of a dynamic component. He wanted to display a certain
 component based on the outcome of a function he wrote in his page class.
 This question has come up before on the list and because of the Static
 Structure, Dynamic Behavior paradigm - which is a key principle and is not
 mentioned in the documentation but at the bottom of the start page - the
 solution is to use the Delegate component with blocks. In the Delegate
 component reference documentation there is an example covering exactly that
 use case. But it seems that the user wasn't able to find it - either he
 didn't look at all or more probably, he looked in the wrong place. How could
 he possibly know, that the solution to his use case is documented 

Re: 1 week of Tapestry

2009-01-21 Thread Francois Armand

Sid Ferreira wrote:

[...]

With this small testimonial, I want to thank a lot to all members (freenode
guys specially) for being patient and friendly, I hope soon I have time to
write up a simple and clean tutorial about T5 and maybe can help up it to
grow (it may have more php developers trying java and failing).
  

Thanks for the mail, it's a good reward in itself for the time spent :)

As a reminder, there is an IRC chan dedicated to Tapestry : #tapestry on 
freenode. Don't hesitate to join us !


--
Francois Armand
Etudes  Développements J2EE
Groupe Linagora - http://www.linagora.com
Tél.: +33 (0)1 58 18 68 28
---
http://fanf42.blogspot.com
InterLDAP - http://interldap.org 
FederID - http://www.federid.org/

Open Source identities management and federation


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



RE: [Spam Rating:3.18] Re: Table and carriage return

2009-01-21 Thread James Sherwood
Hello,

I have not used T4 going from T3 to T5 but I assume most of the components
are the same.

If you are using the standard insert component you can just declare the raw
parameter as true so you output is changed in any way:

component id=insertText type=Insert
binding name=value expression=message/binding
static-binding name=rawTRUE/static-binding
/component


--James

-Original Message-
From: Cathy_123 [mailto:ndgt...@yahoo.com] 
Sent: January-21-09 7:30 AM
To: users@tapestry.apache.org
Subject: [Spam Rating:3.18] Re: Table and carriage return


Thank you for your answer, but I use Tapestry 4, are there another solutions
or I have to change the version ? It's a project of my company so it's
difficult to change ...

Thank you for your help

cathy



Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?
 
 HTML completely ignores newline (\n, \r) characters unless they're
 surrounded by a pre tag.
 By the way, Tapestry templates *must* be valid XML, so you should use
 br/ in your templates, not br.
 
 By default, Tapestry converts  the character in lt;,  in gt; , etc.
 The OutputRaw component

(http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5
/corelib/components/OutputRaw.html)
 does not do this conversion, so it can be a solution to your problem.
 
 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.
 
 This is a pure HTML question, not Tapestry related. And I don't know
 the answer . . . Maybe you can try the pre tag.
 
 -- 
 Thiago
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

-- 
View this message in context:
http://www.nabble.com/Table-and-carriage-return-tp21580648p21581350.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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


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



BeanEditor/BeanEditForm: getting the edited object

2009-01-21 Thread Thiago HP
Hi!

I've been learning how to write property edition/visualization blocks
for BeanEditor and BeanEditForm. Using @Environmental private
PropertyEditContext editContext; I'm able to get the property being
edited and it's value. How could I get the object being edited? (The
one passed to the object parameter of BeanEditor and BeanEditForm).

Thanks in advance.

-- 
Thiago

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



RE: [Spam Rating:3.18] Re: Table and carriage return

2009-01-21 Thread Cathy_123

Thank you for this issue, It's OK for the carriage return but I have a little
problem again 

I have to format the value of the column. Instead to do 

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,!column2/   
 /component

I do 

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,=column2Column/ 
 /component

because column2 is a List of data. So with the code java, I use
ITableColumnEvaluator and read the list and return list.get(0) + br/
+list.get(1) + br/ +list.get(2)...

so if I have a insert, I do

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,!columnFormat/  
 /component

  component id=columnFormatColumnValue type=Block/
  component id=columnFormat type=Insert
binding name=value
value=components.pagesTable.tableRow.column2Column/
binding name=raw value=true/
  /component

But I have an exception because of binding name=value
value=components.pagesTable.tableRow.column2Column/
How can I do to format column2 with Insert (format column2 for each line of
table) ?

thank you for your help

Cathy


James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
   binding name=value expression=message/binding
 static-binding name=rawTRUE/static-binding
 /component
 
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 7:30 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] Re: Table and carriage return
 
 
 Thank you for your answer, but I use Tapestry 4, are there another
 solutions
 or I have to change the version ? It's a project of my company so it's
 difficult to change ...
 
 Thank you for your help
 
 cathy
 
 
 
 Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?
 
 HTML completely ignores newline (\n, \r) characters unless they're
 surrounded by a pre tag.
 By the way, Tapestry templates *must* be valid XML, so you should use
 br/ in your templates, not br.
 
 By default, Tapestry converts  the character in lt;,  in gt; , etc.
 The OutputRaw component

 (http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5
 /corelib/components/OutputRaw.html)
 does not do this conversion, so it can be a solution to your problem.
 
 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.
 
 This is a pure HTML question, not Tapestry related. And I don't know
 the answer . . . Maybe you can try the pre tag.
 
 -- 
 Thiago
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
 -- 
 View this message in context:
 http://www.nabble.com/Table-and-carriage-return-tp21580648p21581350.html
 Sent from the Tapestry - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Table-and-carriage-return-tp21580648p21583339.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Doubts in Tapestry

2009-01-21 Thread Sid Ferreira
Hi folks!After a while Im writting again, I hope this time with enough
details.

My mission was buid a small support screen where a user logs and has access
to a list of users of the client.
The details:
1) The url is used to define the client (a.t5.com is one and b.t5.com is
another client)
2) The user needs to log in
3) If, after login, the user changes the url, it must logoff or something,
but the new client must be loaded
4) The users belong to one and only one client

After a long brawl with documentations, I finally found a small solution
(wich I dunno how to code neighter if it is correct), and I would like to
have a help:

1) Create a MyContextService, wich has an ApplicationState object
2) Create a @Private annotation (Dispatcher docs, but not clear how to
finish it)
3) Create 2 pages, one to login and another to list, wich extends
MyContextService
4) Create a dispatcher, wich extends MyContextService

the idea:
1) Dispatcher is called, identify the client and set/reset it
2) If user is logged (didn't decided this part yet) it validates the Client
- User relation
3) If not logged, check if has a submit and try to login
4) If now the user is not logged, forward in server side to the login
5) Dispatcher forward to list

So, the questions:
1) How to finish up the @Private? (
http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess) I dunno what to
ser in the type for instance
2) How to server-side forward?
3) Using ASO (or AOS?) in a super class, isn't the same (and so useless to
do) to have a protected static property in MyContextService?

Thanks in advance folks!

-- 
Sidney G B Ferreira
Desenvolvedor Web - Tibox Innovations


Re: [T5] improve documentation

2009-01-21 Thread Ulrich Stärk
I don't think that someone has to be appointed to do it. Everyone can 
contribute by writing an improvement, opening an issue in JIRA and 
attaching the improvement to it.


As to the book you mentioned, I think the initiative came to a halt 
again, shortly after it was started.


Uli

Newham, Cameron schrieb:

I think we are all in agreement that the documentation needs a radical overhaul 
(and lots to be written).

The next question is, who is going to do it?

A while ago someone proposed a book on T5. A small group from here organised a 
separate discussion group and went off to work on it (I have no idea how it is 
going. Does anyone know?)

Maybe a similar thing should be done w.r.t this current issue?

c.


-Original Message-
From: Borut Bolčina [mailto:borut.bolc...@gmail.com] 
Sent: 21 January 2009 08:58

To: Tapestry users
Subject: Re: [T5] improve documentation

Hi,

also a guide/recipes/good practices/tips/chapter for converting JSP
applications to Tapestry 5 would be very welcome. At least a paragraph
clarifying questions like: Can I have JSPs in my Tapestry 5 application or
do I have to have two web applications talking somehow to each other?, How
to post a form from JSP to a Tapestry page or vice versa?, ...

A guide on clustering. I know this info can be found in many locations on
the net, but writing it in Tapestry documentation would imho greatly improve
the credibility of the framework for serious web applications. I feel
tapestry is missing the scope in the market. It is not advertised in any
way, nor as a framework which one can use to quickly make a simple news
site, as other frameworks (non java) are better at that (so I hear), nor as
a framework which is best for large teams and large applications. Just look
at the web page for Zend PHP framework (http://www.zend.com). Which page do
you think management like more, zend's or tapestry's? Unfortunately
sometimes (too often) the arguments of power outweight the power of
arguments and the consequence is, well, We will use the framework which has
more flashy homepage!.

The community, us, must prove that a simple web application (some forms,
administration pages, publishing news, social crap, etc) can be done
without having a PhD in Computer Science. Tapestry relies much on convention
over configuration paradigm, that is why the documentation must be excelent.
Say, for example
http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/Form.html.
This page is clearly frightening - look at the first paragraph. So many
events and none/few of them has a decent explanation/usage scenario/example.
IMO all of them should be properly documented or not mentioned at all.

The authorization should have a chapter! Tapestry is a very powerful
framework and as such the same thing can be done differently, BUT...why
should one have to spend days/weeks to implement a decent
authentication/authorization system? There should be a guide for common
scenarios like form based authentication. Of course one can hunt for example
projects and study the guts of them, which in the end is very rewarding, but
time consuming. Newcomers should have clear goals on how to implement such
things, without jumping to the wiki and other places and fighting the
dependency incompatibilities.


-Borut

2009/1/13 Ulrich Stärk u...@spielviel.de


Hi all,

Tapestry's current documentation is very complete, covering almost
everything a developer needs to know to be productive with Tapestry.
Unfortunately this documentation is clustered across several locations thus
making it hard to find information and very hard for beginners to get going.
Sometimes even I am annoyed because I don't find the information I'm looking
for at the expected place. There is the official user guide, which is no
guide in the actual sense of the word but merely a collection of topics
using Tapestry-specific vocabulary as the topics, making it hard for a
beginner to get started. Then there is the tutorial that gets you started
with Tapestry but doesn't go deep enough to know the name of the topic to
look for in the user guide when a problem arises or more information on a
subject is needed. Thirdly, there is the wiki that contains numerous
examples on how to solve common use cases with Tapestry. And lastly there is
the component reference that not only contains documentation for a specific
component but also contains examples on how to use them to solve common use
cases. Today for example, someone on the users mailing list asked for how to
have some kind of a dynamic component. He wanted to display a certain
component based on the outcome of a function he wrote in his page class.
This question has come up before on the list and because of the Static
Structure, Dynamic Behavior paradigm - which is a key principle and is not
mentioned in the documentation but at the bottom of the start page - the
solution is to use the Delegate component with blocks. In the Delegate

Re: Tapestry 4.1 Widget

2009-01-21 Thread otto95

Thanks for your willingness to help.

My Direct link looks like this:

JSON Test 

Where LuceneFieldData is the name of my component. It implements IJSONRender
and has a renderComponent method that uses a IJSONWriter.

The RawUrlLinkRenderer throws a class cannot be found exception. I'm
guessing this is in a jar other than tapestry framework?

When removing the renderer parameter I get an exception that the Direct Link
expects a Listener. What should I provide?

Thanks.

Rich Hephner



Andreas Andreou-2 wrote:
 
 Just get the url of a directlink by any of the following:
 - Render a hidden direct link and get it's href, or
 - Render a direct link and set the renderer parameter to
 http://tapestry.apache.org/tapestry4.1/apidocs/org/apache/tapestry/contrib/link/RawURLLinkRenderer.html
 - or, generate the link with code (see how direct service/link does it
 - you component would have
 to implement IDirect)
 
 
 On Tue, Jan 20, 2009 at 6:28 PM, otto95 rich.heph...@gmail.com wrote:

 I'm sorry for coming to this conversation late, but I have exactly the
 same
 issue. I'd like to do as you suggest, but how do you get the url for a
 component?

 I have a component that implements IJSONRender, but I can't figure out
 how
 to access it through a browser to get it's json output. Do I have to
 include
 it in something?

 Thanks.

 Rich Hephner


 Andreas Andreou-2 wrote:

 Check out dojo sources: the ComboBox widget and the dojo.io.bind calls

 So, if you have a url, you can do something like:

 dojo.io.bind({url:url,load:myFunction,mimetype:text/json});

 and process the results in your function the way you like. Those
 results are the ones
 that renderComponent(IJSONWriter writer, IRequestCycle cycle)
 generates becuase of the
 text/json mimetype

 On Wed, Dec 17, 2008 at 8:56 PM, Stopp, Bryan
 bryan.st...@argushealth.com wrote:
 So I mis-represented my problem in my first post. What I'm really
 trying
 to do is:

 1. Add an onclick() function to a component, which triggers a
 server-side method
 2. Refresh another component on the page when the onclick has
 completed.

 All of this is for T4.1 by the way.

 I selected using the IDirect interface and generating a URL for the
 onclick method to call. However I don't know how to make tapestry/dojo
 call to that URL, nor how to tell tapestry to refresh the other
 component.

 I don't believe I can use a @EventListener as each component has a
 generated ClientID and according to the spec the targets attribute of
 this annotation has to have a unique ID.

 I've been trying to look at the existing Dojo examples but they and the
 documentation aren't of much help. Does anyone have any examples of
 components/widgets similar to this?




 -Bryan Stopp

 PRIVILEGED AND CONFIDENTIAL
 This email transmission contains privileged and confidential
 information
 intended only for the use of the individual or entity named above.  If
 the reader of the email is not the intended recipient or the employee
 or
 agent responsible for delivering it to the intended recipient, you are
 hereby notified that any use, dissemination or copying of this email
 transmission is strictly prohibited by the sender.  If you have
 received
 this transmission in error, please delete the email and immediately
 notify the sender via the email return address or
 mailto:postmas...@argushealth.com.  Thank you.





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





 --
 Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr
 Tapestry / Tacos developer
 Open Source / JEE Consulting

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




 --
 View this message in context:
 http://n2.nabble.com/Tapestry-4.1-Widget-tp1668522p2187365.html
 Sent from the Tapestry Users mailing list archive at Nabble.com.


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


 
 
 
 -- 
 Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr
 Tapestry / Tacos developer
 Open Source / JEE Consulting
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

-- 
View this message in context: 
http://n2.nabble.com/Tapestry-4.1-Widget-tp1668522p2192339.html
Sent from the Tapestry Users mailing list archive at Nabble.com.


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



RE: RE: Re: Table and carriage return

2009-01-21 Thread James Sherwood
Hello,

What is the exception you are getting?

--James

-Original Message-
From: Cathy_123 [mailto:ndgt...@yahoo.com] 
Sent: January-21-09 9:40 AM
To: users@tapestry.apache.org
Subject: [Spam Rating:3.18] RE: [Spam Rating:3.18] Re: Table and carriage
return


Thank you for this issue, It's OK for the carriage return but I have a
little
problem again 

I have to format the value of the column. Instead to do 

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,!column2/   
 /component

I do 

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,=column2Column/ 
 /component

because column2 is a List of data. So with the code java, I use
ITableColumnEvaluator and read the list and return list.get(0) + br/
+list.get(1) + br/ +list.get(2)...

so if I have a insert, I do

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,!columnFormat/  
 /component

  component id=columnFormatColumnValue type=Block/
  component id=columnFormat type=Insert
binding name=value
value=components.pagesTable.tableRow.column2Column/
binding name=raw value=true/
  /component

But I have an exception because of binding name=value
value=components.pagesTable.tableRow.column2Column/
How can I do to format column2 with Insert (format column2 for each line of
table) ?

thank you for your help

Cathy


James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
   binding name=value expression=message/binding
 static-binding name=rawTRUE/static-binding
 /component
 
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 7:30 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] Re: Table and carriage return
 
 
 Thank you for your answer, but I use Tapestry 4, are there another
 solutions
 or I have to change the version ? It's a project of my company so it's
 difficult to change ...
 
 Thank you for your help
 
 cathy
 
 
 
 Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?
 
 HTML completely ignores newline (\n, \r) characters unless they're
 surrounded by a pre tag.
 By the way, Tapestry templates *must* be valid XML, so you should use
 br/ in your templates, not br.
 
 By default, Tapestry converts  the character in lt;,  in gt; , etc.
 The OutputRaw component


(http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5
 /corelib/components/OutputRaw.html)
 does not do this conversion, so it can be a solution to your problem.
 
 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.
 
 This is a pure HTML question, not Tapestry related. And I don't know
 the answer . . . Maybe you can try the pre tag.
 
 -- 
 Thiago
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
 -- 
 View this message in context:
 http://www.nabble.com/Table-and-carriage-return-tp21580648p21581350.html
 Sent from the Tapestry - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

-- 
View this message in context:
http://www.nabble.com/Table-and-carriage-return-tp21580648p21583339.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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


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



Re: [T5] improve documentation

2009-01-21 Thread Peter Stavrinides
Everyone can contribute by writing an improvement
Absolutely!

Tapestry is community driven with a small team of developers... they have 
limited time and simply can't do it all. The documentation task should be given 
to the community and done Wiki style. There are many people answering questions 
on this list who are not committers, the docs would be vastly improved with 
their collective input.

Cheers
Peter



- Original Message -
From: Ulrich Stärk u...@spielviel.de
To: Tapestry users users@tapestry.apache.org
Sent: Wednesday, 21 January, 2009 16:24:20 GMT +02:00 Athens, Beirut, 
Bucharest, Istanbul
Subject: Re: [T5] improve documentation

I don't think that someone has to be appointed to do it. Everyone can 
contribute by writing an improvement, opening an issue in JIRA and 
attaching the improvement to it.

As to the book you mentioned, I think the initiative came to a halt 
again, shortly after it was started.

Uli

Newham, Cameron schrieb:
 I think we are all in agreement that the documentation needs a radical 
 overhaul (and lots to be written).
 
 The next question is, who is going to do it?
 
 A while ago someone proposed a book on T5. A small group from here organised 
 a separate discussion group and went off to work on it (I have no idea how it 
 is going. Does anyone know?)
 
 Maybe a similar thing should be done w.r.t this current issue?
 
 c.
 
 
 -Original Message-
 From: Borut Bolčina [mailto:borut.bolc...@gmail.com] 
 Sent: 21 January 2009 08:58
 To: Tapestry users
 Subject: Re: [T5] improve documentation
 
 Hi,
 
 also a guide/recipes/good practices/tips/chapter for converting JSP
 applications to Tapestry 5 would be very welcome. At least a paragraph
 clarifying questions like: Can I have JSPs in my Tapestry 5 application or
 do I have to have two web applications talking somehow to each other?, How
 to post a form from JSP to a Tapestry page or vice versa?, ...
 
 A guide on clustering. I know this info can be found in many locations on
 the net, but writing it in Tapestry documentation would imho greatly improve
 the credibility of the framework for serious web applications. I feel
 tapestry is missing the scope in the market. It is not advertised in any
 way, nor as a framework which one can use to quickly make a simple news
 site, as other frameworks (non java) are better at that (so I hear), nor as
 a framework which is best for large teams and large applications. Just look
 at the web page for Zend PHP framework (http://www.zend.com). Which page do
 you think management like more, zend's or tapestry's? Unfortunately
 sometimes (too often) the arguments of power outweight the power of
 arguments and the consequence is, well, We will use the framework which has
 more flashy homepage!.
 
 The community, us, must prove that a simple web application (some forms,
 administration pages, publishing news, social crap, etc) can be done
 without having a PhD in Computer Science. Tapestry relies much on convention
 over configuration paradigm, that is why the documentation must be excelent.
 Say, for example
 http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/Form.html.
 This page is clearly frightening - look at the first paragraph. So many
 events and none/few of them has a decent explanation/usage scenario/example.
 IMO all of them should be properly documented or not mentioned at all.
 
 The authorization should have a chapter! Tapestry is a very powerful
 framework and as such the same thing can be done differently, BUT...why
 should one have to spend days/weeks to implement a decent
 authentication/authorization system? There should be a guide for common
 scenarios like form based authentication. Of course one can hunt for example
 projects and study the guts of them, which in the end is very rewarding, but
 time consuming. Newcomers should have clear goals on how to implement such
 things, without jumping to the wiki and other places and fighting the
 dependency incompatibilities.
 
 
 -Borut
 
 2009/1/13 Ulrich Stärk u...@spielviel.de
 
 Hi all,

 Tapestry's current documentation is very complete, covering almost
 everything a developer needs to know to be productive with Tapestry.
 Unfortunately this documentation is clustered across several locations thus
 making it hard to find information and very hard for beginners to get going.
 Sometimes even I am annoyed because I don't find the information I'm looking
 for at the expected place. There is the official user guide, which is no
 guide in the actual sense of the word but merely a collection of topics
 using Tapestry-specific vocabulary as the topics, making it hard for a
 beginner to get started. Then there is the tutorial that gets you started
 with Tapestry but doesn't go deep enough to know the name of the topic to
 look for in the user guide when a problem arises or more information on a
 subject is needed. Thirdly, there is the wiki that contains numerous
 

RE: RE: Re: Table and carriage return

2009-01-21 Thread Cathy_123

I get 

Unable to read OGNL expression 'parsed OGNL expression' of ..
ognl.NoSuchPropertyException

Stack Trace: 
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:123) 
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616) 
ognl.ASTProperty.getValueBody(ASTProperty.java:96) 
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) 
ognl.SimpleNode.getValue(SimpleNode.java:210) 
ognl.ASTChain.getValueBody(ASTChain.java:109) 
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) 
ognl.SimpleNode.getValue(SimpleNode.java:210) 
ognl.Ognl.getValue(Ognl.java:333) 
ognl.Ognl.getValue(Ognl.java:310) 
org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.readCompiled(ExpressionEvaluatorImpl.java:91)
 
$ExpressionEvaluator_11ef9a9af22.readCompiled($ExpressionEvaluator_11ef9a9af22.java)
 
org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:110)
 
org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:103)
 
org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:87) 
$Insert_6.getValue($Insert_6.java) 
org.apache.tapestry.components.Insert.renderComponent(Insert.java:42) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
org.apache.tapestry.components.BlockRenderer.render(BlockRenderer.java:75) 
org.apache.tapestry.components.Delegator.renderComponent(Delegator.java:44) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
org.apache.tapestry.components.Any.renderComponent(Any.java:48) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
org.apache.tapestry.components.ForBean.renderComponent(ForBean.java:137) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:44) 
 

**

James Sherwood wrote:
 
 Hello,
 
 What is the exception you are getting?
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 9:40 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] RE: [Spam Rating:3.18] Re: Table and carriage
 return
 
 
 Thank you for this issue, It's OK for the carriage return but I have a
 little
 problem again 
 
 I have to format the value of the column. Instead to do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!column2/ 
  /component
 
 I do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,=column2Column/   
  /component
 
 because column2 is a List of data. So with the code java, I use
 ITableColumnEvaluator and read the list and return list.get(0) + br/
 +list.get(1) + br/ +list.get(2)...
 
 so if I have a insert, I do
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!columnFormat/
  /component
 
   component id=columnFormatColumnValue type=Block/
   component id=columnFormat type=Insert
 binding name=value
 value=components.pagesTable.tableRow.column2Column/
 binding name=raw value=true/
   /component
 
 But I have an exception because of binding name=value
 value=components.pagesTable.tableRow.column2Column/
 How can I do to format column2 with Insert (format column2 for each line
 of
 table) ?
 
 thank you for your help
 
 Cathy
 
 
 James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the
 components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
  binding name=value expression=message/binding
 static-binding name=rawTRUE/static-binding
 /component
 
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 7:30 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] Re: Table and carriage return
 
 
 Thank you for your answer, but I use Tapestry 4, are there another
 solutions
 or I have to change the version ? It's a project of my company so it's
 difficult to change ...
 
 Thank you for your help
 
 cathy
 
 
 
 Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I 

Re: [T5] improve documentation

2009-01-21 Thread Tobias Marx
In the long-term it is better though if every developer provides an example to 
the code he has done.
This way the community grows and also the number of potential developers...even 
if new developments and bugfixes take longer.

I know many people who have started with Tapestry, but reached a point with no 
solution and resorted to another framework as they were in a hurry to get it 
done. 

So the Tapestry community shrinks as well although new people find the 
framework and look at itso overall the community forws, but the community 
could grow a lot quicker if less people would get frustrated by it.

For instance I asked a question on the mailing list with no answer so I assume 
there is no answer?
So I have put it on the http://wiki.apache.org/tapestry/WishList - althouth 
other developers have the same question. If there is no answer or feedback you 
never know whether there is no solution or whether there is only nobody that 
knows the solution. 

This is why I ended up doing the backend in Wicket and the frontend in 
Tapestry


 Original-Nachricht 
 Datum: Wed, 21 Jan 2009 16:40:15 +0200 (EET)
 Von: Peter Stavrinides p.stavrini...@albourne.com
 An: Tapestry users users@tapestry.apache.org
 Betreff: Re: [T5] improve documentation

 Everyone can contribute by writing an improvement
 Absolutely!
 
 Tapestry is community driven with a small team of developers... they have
 limited time and simply can't do it all. The documentation task should be
 given to the community and done Wiki style. There are many people answering
 questions on this list who are not committers, the docs would be vastly
 improved with their collective input.
 
 Cheers
 Peter
 
 
 
 - Original Message -
 From: Ulrich Stärk u...@spielviel.de
 To: Tapestry users users@tapestry.apache.org
 Sent: Wednesday, 21 January, 2009 16:24:20 GMT +02:00 Athens, Beirut,
 Bucharest, Istanbul
 Subject: Re: [T5] improve documentation
 
 I don't think that someone has to be appointed to do it. Everyone can 
 contribute by writing an improvement, opening an issue in JIRA and 
 attaching the improvement to it.
 
 As to the book you mentioned, I think the initiative came to a halt 
 again, shortly after it was started.
 
 Uli
 
 Newham, Cameron schrieb:
  I think we are all in agreement that the documentation needs a radical
 overhaul (and lots to be written).
  
  The next question is, who is going to do it?
  
  A while ago someone proposed a book on T5. A small group from here
 organised a separate discussion group and went off to work on it (I have no 
 idea
 how it is going. Does anyone know?)
  
  Maybe a similar thing should be done w.r.t this current issue?
  
  c.
  
  
  -Original Message-
  From: Borut Bolčina [mailto:borut.bolc...@gmail.com] 
  Sent: 21 January 2009 08:58
  To: Tapestry users
  Subject: Re: [T5] improve documentation
  
  Hi,
  
  also a guide/recipes/good practices/tips/chapter for converting JSP
  applications to Tapestry 5 would be very welcome. At least a paragraph
  clarifying questions like: Can I have JSPs in my Tapestry 5 application
 or
  do I have to have two web applications talking somehow to each other?,
 How
  to post a form from JSP to a Tapestry page or vice versa?, ...
  
  A guide on clustering. I know this info can be found in many locations
 on
  the net, but writing it in Tapestry documentation would imho greatly
 improve
  the credibility of the framework for serious web applications. I feel
  tapestry is missing the scope in the market. It is not advertised in any
  way, nor as a framework which one can use to quickly make a simple news
  site, as other frameworks (non java) are better at that (so I hear), nor
 as
  a framework which is best for large teams and large applications. Just
 look
  at the web page for Zend PHP framework (http://www.zend.com). Which page
 do
  you think management like more, zend's or tapestry's? Unfortunately
  sometimes (too often) the arguments of power outweight the power of
  arguments and the consequence is, well, We will use the framework which
 has
  more flashy homepage!.
  
  The community, us, must prove that a simple web application (some forms,
  administration pages, publishing news, social crap, etc) can be done
  without having a PhD in Computer Science. Tapestry relies much on
 convention
  over configuration paradigm, that is why the documentation must be
 excelent.
  Say, for example
 
 http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/components/Form.html.
  This page is clearly frightening - look at the first paragraph. So many
  events and none/few of them has a decent explanation/usage
 scenario/example.
  IMO all of them should be properly documented or not mentioned at all.
  
  The authorization should have a chapter! Tapestry is a very powerful
  framework and as such the same thing can be done differently, BUT...why
  should one have to spend days/weeks to implement a 

RE: RE: RE: Re: Table and carriage return

2009-01-21 Thread James Sherwood
Hello,

Unfortunately I do not have T4 experience with these components.

It cannot find that property so perhaps you have the path wrong.

If you send your 3 files to my email I will look at them and see if I can
help.

--James





-Original Message-
From: Cathy_123 [mailto:ndgt...@yahoo.com] 
Sent: January-21-09 10:50 AM
To: users@tapestry.apache.org
Subject: [Spam Rating:3.18] RE: RE: Re: Table and carriage return


I get 

Unable to read OGNL expression 'parsed OGNL expression' of ..
ognl.NoSuchPropertyException

Stack Trace: 
ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:123) 
ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616) 
ognl.ASTProperty.getValueBody(ASTProperty.java:96) 
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) 
ognl.SimpleNode.getValue(SimpleNode.java:210) 
ognl.ASTChain.getValueBody(ASTChain.java:109) 
ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) 
ognl.SimpleNode.getValue(SimpleNode.java:210) 
ognl.Ognl.getValue(Ognl.java:333) 
ognl.Ognl.getValue(Ognl.java:310) 
org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.readCompiled(Expre
ssionEvaluatorImpl.java:91) 
$ExpressionEvaluator_11ef9a9af22.readCompiled($ExpressionEvaluator_11ef9a9af
22.java) 
org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBi
nding.java:110) 
org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.ja
va:103) 
org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:8
7) 
$Insert_6.getValue($Insert_6.java) 
org.apache.tapestry.components.Insert.renderComponent(Insert.java:42) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434)

org.apache.tapestry.components.BlockRenderer.render(BlockRenderer.java:75) 
org.apache.tapestry.components.Delegator.renderComponent(Delegator.java:44) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434)

org.apache.tapestry.components.Any.renderComponent(Any.java:48) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434)

org.apache.tapestry.components.ForBean.renderComponent(ForBean.java:137) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92) 
org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434)

org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:44
) 
 

**

James Sherwood wrote:
 
 Hello,
 
 What is the exception you are getting?
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 9:40 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] RE: [Spam Rating:3.18] Re: Table and carriage
 return
 
 
 Thank you for this issue, It's OK for the carriage return but I have a
 little
 problem again 
 
 I have to format the value of the column. Instead to do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!column2/ 
  /component
 
 I do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,=column2Column/

  /component
 
 because column2 is a List of data. So with the code java, I use
 ITableColumnEvaluator and read the list and return list.get(0) + br/
 +list.get(1) + br/ +list.get(2)...
 
 so if I have a insert, I do
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!columnFormat/

  /component
 
   component id=columnFormatColumnValue type=Block/
   component id=columnFormat type=Insert
 binding name=value
 value=components.pagesTable.tableRow.column2Column/
 binding name=raw value=true/
   /component
 
 But I have an exception because of binding name=value
 value=components.pagesTable.tableRow.column2Column/
 How can I do to format column2 with Insert (format column2 for each line
 of
 table) ?
 
 thank you for your help
 
 Cathy
 
 
 James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the
 components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
  binding name=value expression=message/binding
 static-binding name=rawTRUE/static-binding
 /component
 
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 7:30 AM
 To: 

T5: Component Suggestion/Question

2009-01-21 Thread James Sherwood
Hello,

 

I am trying to create an application that just has a single page basically
with many fields about a member.

 

I need this page to be dynamic whereby and admin can change fields without
refreshing the page.

 

The T5Component InPlaceEditor sort of works however there is no validation
and it is a one way connection meaning if they put invalid data in, there is
no way to let them know.

 

Can anyone suggest a component I might use(or point me in the right
direction to build one) that basically would allow the admin to make changes
to fields on the page without refreshing the page but has validation? 

 

Thanks in advance,

--James



RE: RE: Re: Table and carriage return

2009-01-21 Thread Cathy_123

In the case you don't understand my problem, I explain :

components.pagesTable.tableRow.column2 exists 

I have to format the column, so for the TABLE, I writed =column2Column like:

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,=column2Column/ 
 /component


column2Column is a java method who retrieves the
components.pagesTable.tableRow.column2 value in the parameter (see
ITableColumnEvaluator )


Now for the component INSERT, how can I do to format it 

thank you

Cathy




Cathy_123 wrote:
 
 I get 
 
 Unable to read OGNL expression 'parsed OGNL expression' of ..
 ognl.NoSuchPropertyException
 
 Stack Trace: 
 ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:123) 
 ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616) 
 ognl.ASTProperty.getValueBody(ASTProperty.java:96) 
 ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) 
 ognl.SimpleNode.getValue(SimpleNode.java:210) 
 ognl.ASTChain.getValueBody(ASTChain.java:109) 
 ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) 
 ognl.SimpleNode.getValue(SimpleNode.java:210) 
 ognl.Ognl.getValue(Ognl.java:333) 
 ognl.Ognl.getValue(Ognl.java:310) 
 org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.readCompiled(ExpressionEvaluatorImpl.java:91)
  
 $ExpressionEvaluator_11ef9a9af22.readCompiled($ExpressionEvaluator_11ef9a9af22.java)
  
 org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:110)
  
 org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:103)
  
 org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:87)
  
 $Insert_6.getValue($Insert_6.java) 
 org.apache.tapestry.components.Insert.renderComponent(Insert.java:42) 
 org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
 org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
 org.apache.tapestry.components.BlockRenderer.render(BlockRenderer.java:75) 
 org.apache.tapestry.components.Delegator.renderComponent(Delegator.java:44) 
 org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
 org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
 org.apache.tapestry.components.Any.renderComponent(Any.java:48) 
 org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
 org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
 org.apache.tapestry.components.ForBean.renderComponent(ForBean.java:137) 
 org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
 org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92) 
 org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) 
 org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:434) 
 org.apache.tapestry.components.RenderBody.renderComponent(RenderBody.java:44) 
  
 
 **
 
 James Sherwood wrote:
 
 Hello,
 
 What is the exception you are getting?
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 9:40 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] RE: [Spam Rating:3.18] Re: Table and carriage
 return
 
 
 Thank you for this issue, It's OK for the carriage return but I have a
 little
 problem again 
 
 I have to format the value of the column. Instead to do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!column2/
  /component
 
 I do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,=column2Column/  
  /component
 
 because column2 is a List of data. So with the code java, I use
 ITableColumnEvaluator and read the list and return list.get(0) + br/
 +list.get(1) + br/ +list.get(2)...
 
 so if I have a insert, I do
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!columnFormat/   
  /component
 
   component id=columnFormatColumnValue type=Block/
   component id=columnFormat type=Insert
 binding name=value
 value=components.pagesTable.tableRow.column2Column/
 binding name=raw value=true/
   /component
 
 But I have an exception because of binding name=value
 value=components.pagesTable.tableRow.column2Column/
 How can I do to format column2 with Insert (format column2 for each line
 of
 table) ?
 
 thank you for your help
 
 Cathy
 
 
 James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the
 components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
 binding name=value 

RE: RE: Re: Table and carriage return

2009-01-21 Thread James Sherwood
Hello,

Reading your last post I think your problem is this:

component id=columnFormatColumnValue type=Block/
  component id=columnFormat type=Insert
binding name=value
value=components.pagesTable.tableRow.column2Column/
binding name=raw value=true/
  /component

Should be:

component id=columnFormatColumnValue type=Block/
  component id=columnFormat type=Insert
binding name=value
value=column2Column/
binding name=raw value=true/
  /component

Because components.pagesTable.tableRow.column2Column doesn't exist,
components.pagesTable.tableRow.column2 does.  And column2Column is just a
java method that returns components.pagesTable.tableRow.column2's list
formatted(if I follow what you say correctly)

--James

-Original Message-
From: Cathy_123 [mailto:ndgt...@yahoo.com] 
Sent: January-21-09 9:40 AM
To: users@tapestry.apache.org
Subject: [Spam Rating:3.18] RE: [Spam Rating:3.18] Re: Table and carriage
return


Thank you for this issue, It's OK for the carriage return but I have a
little
problem again 

I have to format the value of the column. Instead to do 

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,!column2/   
 /component

I do 

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,=column2Column/ 
 /component

because column2 is a List of data. So with the code java, I use
ITableColumnEvaluator and read the list and return list.get(0) + br/
+list.get(1) + br/ +list.get(2)...

so if I have a insert, I do

 component id=pagesTable type=PagesTable
binding name=source value=myDataModel/
binding name=columns value=literal:!column1,!,!columnFormat/  
 /component

  component id=columnFormatColumnValue type=Block/
  component id=columnFormat type=Insert
binding name=value
value=components.pagesTable.tableRow.column2Column/
binding name=raw value=true/
  /component

But I have an exception because of binding name=value
value=components.pagesTable.tableRow.column2Column/
How can I do to format column2 with Insert (format column2 for each line of
table) ?

thank you for your help

Cathy


James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
   binding name=value expression=message/binding
 static-binding name=rawTRUE/static-binding
 /component
 
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 7:30 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] Re: Table and carriage return
 
 
 Thank you for your answer, but I use Tapestry 4, are there another
 solutions
 or I have to change the version ? It's a project of my company so it's
 difficult to change ...
 
 Thank you for your help
 
 cathy
 
 
 
 Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?
 
 HTML completely ignores newline (\n, \r) characters unless they're
 surrounded by a pre tag.
 By the way, Tapestry templates *must* be valid XML, so you should use
 br/ in your templates, not br.
 
 By default, Tapestry converts  the character in lt;,  in gt; , etc.
 The OutputRaw component


(http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5
 /corelib/components/OutputRaw.html)
 does not do this conversion, so it can be a solution to your problem.
 
 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.
 
 This is a pure HTML question, not Tapestry related. And I don't know
 the answer . . . Maybe you can try the pre tag.
 
 -- 
 Thiago
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
 -- 
 View this message in context:
 http://www.nabble.com/Table-and-carriage-return-tp21580648p21581350.html
 Sent from the Tapestry - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

-- 
View this message in context:

Re: [T5] improve documentation

2009-01-21 Thread Peter Stavrinides
 I know many people who have started with Tapestry, but reached a point with 
 no solution and resorted to another framework
I reached that point when it was announced that T5 would not be backward 
compatible with T4... at that point I had invested a couple of years in 
Tapestry, and was maintaining and actively developing a number of production 
apps so was caught in a conundrum... to cut a long story though, the ONLY 
reason back then that I stuck with Tapestry was because of Howards screencasts, 
Tapestry 5 just seemed awesome in those screencasts and sold it to me so I gave 
it a try and got hooked, I guess nothing is more powerful than a visual 
tutorial. It saves time, saves frustration and walks you through best practices 
so you do it the right way first time round... its a real pity they are not 
being pushed more!

Peter

- Original Message -
From: Tobias Marx superoverdr...@gmx.de
To: users@tapestry.apache.org
Sent: Wednesday, 21 January, 2009 17:03:04 GMT +02:00 Athens, Beirut, 
Bucharest, Istanbul
Subject: Re: [T5] improve documentation

In the long-term it is better though if every developer provides an example to 
the code he has done.
This way the community grows and also the number of potential developers...even 
if new developments and bugfixes take longer.

I know many people who have started with Tapestry, but reached a point with no 
solution and resorted to another framework as they were in a hurry to get it 
done. 

So the Tapestry community shrinks as well although new people find the 
framework and look at itso overall the community forws, but the community 
could grow a lot quicker if less people would get frustrated by it.

For instance I asked a question on the mailing list with no answer so I assume 
there is no answer?
So I have put it on the http://wiki.apache.org/tapestry/WishList - althouth 
other developers have the same question. If there is no answer or feedback you 
never know whether there is no solution or whether there is only nobody that 
knows the solution. 

This is why I ended up doing the backend in Wicket and the frontend in 
Tapestry


 Original-Nachricht 
 Datum: Wed, 21 Jan 2009 16:40:15 +0200 (EET)
 Von: Peter Stavrinides p.stavrini...@albourne.com
 An: Tapestry users users@tapestry.apache.org
 Betreff: Re: [T5] improve documentation

 Everyone can contribute by writing an improvement
 Absolutely!
 
 Tapestry is community driven with a small team of developers... they have
 limited time and simply can't do it all. The documentation task should be
 given to the community and done Wiki style. There are many people answering
 questions on this list who are not committers, the docs would be vastly
 improved with their collective input.
 
 Cheers
 Peter
 
 
 
 - Original Message -
 From: Ulrich Stärk u...@spielviel.de
 To: Tapestry users users@tapestry.apache.org
 Sent: Wednesday, 21 January, 2009 16:24:20 GMT +02:00 Athens, Beirut,
 Bucharest, Istanbul
 Subject: Re: [T5] improve documentation
 
 I don't think that someone has to be appointed to do it. Everyone can 
 contribute by writing an improvement, opening an issue in JIRA and 
 attaching the improvement to it.
 
 As to the book you mentioned, I think the initiative came to a halt 
 again, shortly after it was started.
 
 Uli
 
 Newham, Cameron schrieb:
  I think we are all in agreement that the documentation needs a radical
 overhaul (and lots to be written).
  
  The next question is, who is going to do it?
  
  A while ago someone proposed a book on T5. A small group from here
 organised a separate discussion group and went off to work on it (I have no 
 idea
 how it is going. Does anyone know?)
  
  Maybe a similar thing should be done w.r.t this current issue?
  
  c.
  
  
  -Original Message-
  From: Borut Bolčina [mailto:borut.bolc...@gmail.com] 
  Sent: 21 January 2009 08:58
  To: Tapestry users
  Subject: Re: [T5] improve documentation
  
  Hi,
  
  also a guide/recipes/good practices/tips/chapter for converting JSP
  applications to Tapestry 5 would be very welcome. At least a paragraph
  clarifying questions like: Can I have JSPs in my Tapestry 5 application
 or
  do I have to have two web applications talking somehow to each other?,
 How
  to post a form from JSP to a Tapestry page or vice versa?, ...
  
  A guide on clustering. I know this info can be found in many locations
 on
  the net, but writing it in Tapestry documentation would imho greatly
 improve
  the credibility of the framework for serious web applications. I feel
  tapestry is missing the scope in the market. It is not advertised in any
  way, nor as a framework which one can use to quickly make a simple news
  site, as other frameworks (non java) are better at that (so I hear), nor
 as
  a framework which is best for large teams and large applications. Just
 look
  at the web page for Zend PHP framework (http://www.zend.com). Which page
 do
  you think management like more, 

Re: [T5] improve documentation

2009-01-21 Thread Tobias Marx
Yes, but Screencasts only show you easy examples you can do those do what 
you see in those screencasts and it works wonderfullybut then you want to 
move on and change something, e.g.
additional columns in a table or depending on user roles, locales depending on 
the domain, you want to change the look of certain components, you might want 
to change URLs when sorting a table to be stateless and SEO-friendly.and 
there is an endless number of things people want to do and modify those 
simply examples. Then it get's messy and you are stuck because you won't find 
any documentation on this or some essential questions are not answers. Ok, many 
of those examples from before are documented somewhere...but others aren't. If 
you ask on the mailing list, you sometimes get an answers of the core 
developers who know it - but there is often only 2 or 3 people on this planet 
how know how to do it and they have never documented it as they expect all 
users to go through the source code - but  going through the source code of a 
big framework is not the reason why people want to use frameworks. They want to 
use frameworks to not bother about the details, they just want
  to save time by using a framework that helps to solve problems faster and 
expect it to work in a nice and simple way - otherwise you might just do it 
yourself or with a different technology/framework/language that is either 
documented in a better way or easier to use.

It is nice to do things in 5 minutes instead of 1 hour - but if you end up 
going through the source code in 8 hours to find out who to do something in 5 
minutes, doing it the old fasioned way in 1 hour is sometimes quicker.



 Original-Nachricht 
 Datum: Wed, 21 Jan 2009 17:58:52 +0200 (EET)
 Von: Peter Stavrinides p.stavrini...@albourne.com
 An: Tapestry users users@tapestry.apache.org
 Betreff: Re: [T5] improve documentation

  I know many people who have started with Tapestry, but reached a point
 with no solution and resorted to another framework
 I reached that point when it was announced that T5 would not be backward
 compatible with T4... at that point I had invested a couple of years in
 Tapestry, and was maintaining and actively developing a number of production
 apps so was caught in a conundrum... to cut a long story though, the ONLY
 reason back then that I stuck with Tapestry was because of Howards
 screencasts, Tapestry 5 just seemed awesome in those screencasts and sold it 
 to me so
 I gave it a try and got hooked, I guess nothing is more powerful than a
 visual tutorial. It saves time, saves frustration and walks you through best
 practices so you do it the right way first time round... its a real pity
 they are not being pushed more!
 
 Peter
 
 - Original Message -
 From: Tobias Marx superoverdr...@gmx.de
 To: users@tapestry.apache.org
 Sent: Wednesday, 21 January, 2009 17:03:04 GMT +02:00 Athens, Beirut,
 Bucharest, Istanbul
 Subject: Re: [T5] improve documentation
 
 In the long-term it is better though if every developer provides an
 example to the code he has done.
 This way the community grows and also the number of potential
 developers...even if new developments and bugfixes take longer.
 
 I know many people who have started with Tapestry, but reached a point
 with no solution and resorted to another framework as they were in a hurry
 to get it done. 
 
 So the Tapestry community shrinks as well although new people find the
 framework and look at itso overall the community forws, but the community
 could grow a lot quicker if less people would get frustrated by it.
 
 For instance I asked a question on the mailing list with no answer so I
 assume there is no answer?
 So I have put it on the http://wiki.apache.org/tapestry/WishList -
 althouth other developers have the same question. If there is no answer or
 feedback you never know whether there is no solution or whether there is only
 nobody that knows the solution. 
 
 This is why I ended up doing the backend in Wicket and the frontend in
 Tapestry
 
 
  Original-Nachricht 
  Datum: Wed, 21 Jan 2009 16:40:15 +0200 (EET)
  Von: Peter Stavrinides p.stavrini...@albourne.com
  An: Tapestry users users@tapestry.apache.org
  Betreff: Re: [T5] improve documentation
 
  Everyone can contribute by writing an improvement
  Absolutely!
  
  Tapestry is community driven with a small team of developers... they
 have
  limited time and simply can't do it all. The documentation task should
 be
  given to the community and done Wiki style. There are many people
 answering
  questions on this list who are not committers, the docs would be vastly
  improved with their collective input.
  
  Cheers
  Peter
  
  
  
  - Original Message -
  From: Ulrich Stärk u...@spielviel.de
  To: Tapestry users users@tapestry.apache.org
  Sent: Wednesday, 21 January, 2009 16:24:20 GMT +02:00 Athens, Beirut,
  Bucharest, Istanbul
  Subject: Re: [T5] improve 

RE: RE: Re: Table and carriage return

2009-01-21 Thread Cathy_123

it's not ok with this solution 

But finally I format all data before sending to Tapestry. So it's ok now. 
For the problem adding automatically the carriage return  I use

white-space: nowrap;

Thank you a lot for your help

Have a nice day

Cathy



James Sherwood wrote:
 
 Hello,
 
 Reading your last post I think your problem is this:
 
 component id=columnFormatColumnValue type=Block/
   component id=columnFormat type=Insert
 binding name=value
 value=components.pagesTable.tableRow.column2Column/
 binding name=raw value=true/
   /component
 
 Should be:
 
 component id=columnFormatColumnValue type=Block/
   component id=columnFormat type=Insert
 binding name=value
 value=column2Column/
 binding name=raw value=true/
   /component
 
 Because components.pagesTable.tableRow.column2Column doesn't exist,
 components.pagesTable.tableRow.column2 does.  And column2Column is just a
 java method that returns components.pagesTable.tableRow.column2's list
 formatted(if I follow what you say correctly)
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 9:40 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] RE: [Spam Rating:3.18] Re: Table and carriage
 return
 
 
 Thank you for this issue, It's OK for the carriage return but I have a
 little
 problem again 
 
 I have to format the value of the column. Instead to do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!column2/ 
  /component
 
 I do 
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,=column2Column/   
  /component
 
 because column2 is a List of data. So with the code java, I use
 ITableColumnEvaluator and read the list and return list.get(0) + br/
 +list.get(1) + br/ +list.get(2)...
 
 so if I have a insert, I do
 
  component id=pagesTable type=PagesTable
 binding name=source value=myDataModel/
 binding name=columns value=literal:!column1,!,!columnFormat/
  /component
 
   component id=columnFormatColumnValue type=Block/
   component id=columnFormat type=Insert
 binding name=value
 value=components.pagesTable.tableRow.column2Column/
 binding name=raw value=true/
   /component
 
 But I have an exception because of binding name=value
 value=components.pagesTable.tableRow.column2Column/
 How can I do to format column2 with Insert (format column2 for each line
 of
 table) ?
 
 thank you for your help
 
 Cathy
 
 
 James Sherwood wrote:
 
 Hello,
 
 I have not used T4 going from T3 to T5 but I assume most of the
 components
 are the same.
 
 If you are using the standard insert component you can just declare the
 raw
 parameter as true so you output is changed in any way:
 
 component id=insertText type=Insert
  binding name=value expression=message/binding
 static-binding name=rawTRUE/static-binding
 /component
 
 
 --James
 
 -Original Message-
 From: Cathy_123 [mailto:ndgt...@yahoo.com] 
 Sent: January-21-09 7:30 AM
 To: users@tapestry.apache.org
 Subject: [Spam Rating:3.18] Re: Table and carriage return
 
 
 Thank you for your answer, but I use Tapestry 4, are there another
 solutions
 or I have to change the version ? It's a project of my company so it's
 difficult to change ...
 
 Thank you for your help
 
 cathy
 
 
 
 Thiago HP wrote:
 
 On Wed, Jan 21, 2009 at 8:40 AM, Cathy_123 ndgt...@yahoo.com wrote:
 
  I set these values on the java code and I try to add ' \n\r' or '\r\n'
 or
 'br' on the string but tapestry
 doesn't understand this carracters. Do you know how to do it ?
 
 HTML completely ignores newline (\n, \r) characters unless they're
 surrounded by a pre tag.
 By the way, Tapestry templates *must* be valid XML, so you should use
 br/ in your templates, not br.
 
 By default, Tapestry converts  the character in lt;,  in gt; , etc.
 The OutputRaw component


 (http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5
 /corelib/components/OutputRaw.html)
 does not do this conversion, so it can be a solution to your problem.
 
 And I would like that the table doesn't add automatically the carriage
 return when my string is too long like too.
 
 This is a pure HTML question, not Tapestry related. And I don't know
 the answer . . . Maybe you can try the pre tag.
 
 -- 
 Thiago
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
 -- 
 View this message in context:
 http://www.nabble.com/Table-and-carriage-return-tp21580648p21581350.html
 Sent from the Tapestry - User mailing list archive at Nabble.com.
 
 
 -
 To 

Re: Doubts in Tapestry

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 10:59:41 -0300, Sid Ferreira sid@gmail.com  
escreveu:



1) Create a MyContextService, wich has an ApplicationState object


Tapestry-IoC services cannot use the @ApplicationState annotation. If they  
need to access ASOs, they need to use the ApplicationStateManager.



2) Create a @Private annotation (Dispatcher docs, but not clear how to
finish it)


It can be any annotation you fancy. @Private was just the name the wiki  
article author chose.



3) Create 2 pages, one to login and another to list, wich extends
MyContextService


Pages can't be services, but they can use them (through @Inject).


4) Create a dispatcher, wich extends MyContextService


The dispatcher would use your service, not extend it.


the idea:
1) Dispatcher is called, identify the client and set/reset it
2) If user is logged (didn't decided this part yet) it validates the  
Client

- User relation
3) If not logged, check if has a submit and try to login
4) If now the user is not logged, forward in server side to the login
5) Dispatcher forward to list


It seems ok.


So, the questions:
1) How to finish up the @Private? (
http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess) I dunno  
what to

ser in the type for instance


This annotation is just a marker. Annotations can't have code nor logic.
Reading your 1 week of Tapestry message, I got the impression that  
you're not familiar with Java yet. Therefore, I strongly suggest you to  
really understand Java before learning Tapestry. You must really  
understand OOP and Java to use Tapestry really well.



2) How to server-side forward?


RTFM! (hehehe, sorry, I coundn't resist)  
http://tapestry.apache.org/tapestry5/guide/pagenav.html.


3) Using ASO (or AOS?) in a super class, isn't the same (and so useless  
to do) to have a protected static property in MyContextService?


ASOs must be private fields, but you can write a protected getter. ;)
A static property in a service would be just one variable for the whole  
application. As you need separate state (session) for each user, it must  
be an ASO.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: [T5] improve documentation

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 12:03:04 -0300, Tobias Marx superoverdr...@gmx.de  
escreveu:


I know many people who have started with Tapestry, but reached a point  
with no solution and resorted to another framework as they were in a  
hurry to get it done.


Did these people post their questions in the mailing list? Once I posted  
one (about Run Jetty Run) and got a response (and a very good one) in 9  
minutes!


For instance I asked a question on the mailing list with no answer so I  
assume there is no answer?


Be sure it is well written. Sometimes there are some messages so badly  
written or so vague that people just don't take the time to even  
understand them.


This is why I ended up doing the backend in Wicket and the frontend in  
Tapestry


!?!?!? Being Wicket and Tapestry front-end frameworks (web ones), how  
could you write the backend in Wicket?


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: [T5] improve documentation

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 13:15:11 -0300, Tobias Marx superoverdr...@gmx.de  
escreveu:


Yes, but Screencasts only show you easy examples you can do those do  
what you see in those screencasts and it works wonderfullybut then  
you want to move on and change something, e.g.
additional columns in a table or depending on user roles, locales  
depending on the domain, you want to change the look of certain  
components, you might want to change URLs when sorting a table to be  
stateless and SEO-friendly.and there is an endless number of things  
people want to do and modify those simply examples.


That's what a cookbook is good for. Howard started one in the Tapestry  
page. we all could add more examples to the wiki, so Howard or any other  
Tapestry committer could review and add them to the page. ;)


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



RE: T5: Component Suggestion/Question

2009-01-21 Thread James Sherwood
Thanks a bunch,

I was actually looking at the screen cast on Ajax and Zones as I suspected
this would be accomplished with zones.

Ideally what I would like to do is create this but have it just output the
value with a small edit button and a hidden text field.  When you click the
edit button it shows the text field and then submits the form much like the
T5Component InPlaceEditor but this would allow validation if the hide/show
part does not mess that up.

I believe it's possible but to turn it into a component may be really
tricky.


--James

-Original Message-
From: Thiago H. de Paula Figueiredo [mailto:thiag...@gmail.com] 
Sent: January-21-09 1:49 PM
To: Tapestry users
Subject: Re: T5: Component Suggestion/Question

Em Wed, 21 Jan 2009 12:20:33 -0300, James Sherwood  
jsherw...@rgisolutions.com escreveu:

 I need this page to be dynamic whereby and admin can change fields  
 without refreshing the page.

Not refreshing a page = AJAX!

Put your Form inside a Zone and submit the form through AJAX.

Something like:

div t:type=Zone t:id=zone
form t:type=form t:zone=zone t:id=form
div t:type=Errors/
.. your fields here.
/form
/div

@InjectComponent
private Zone zone;

@OnEvent(value = EventConstants.VALIDATE_FORM, component=form
public Object validate() {

if (form has validation errors) {
return zone;
}
else {
return null; // let the form submission process continue
}

}

@OnEvent(value = EventConstants.SUCCESS, component=form
public Object sucess() {
// do whatever you want
return zone;
}

-- 
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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


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



Re: T5: Component Suggestion/Question

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 14:08:09 -0300, James Sherwood  
jsherw...@rgisolutions.com escreveu:



Thanks a bunch,


:)

I was actually looking at the screen cast on Ajax and Zones as I  
suspected this would be accomplished with zones.


You can do a lot with them. Just be creative. :)

Ideally what I would like to do is create this but have it just output  
the value with a small edit button and a hidden text field.


It looks like the FormFragment does at least partly what you want. Its  
documentation has a good example.


When you click the edit button it shows the text field and then submits  
the form much like the  T5Component InPlaceEditor but this would allow  
validation if the hide/show part does not mess that up.


How does it mess up? I use submit forms with AJAX all the time and the  
validation messages never got messed up.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



T5: HiddenField?

2009-01-21 Thread Fernando Padilla

So.. Is there really ho HiddenField component for Tapestry 5?
Is this just a minor oversight, or is there a different way to add 
values to be passed through form?


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



Using javascript onsubmit event on a Tapestry form

2009-01-21 Thread Hugo Palma
I'd like to execute some javascript on form submit but it seems that
Tapestry is setting the onsubmit event of the form for performing client
side validation so whatever i place on the onsubmit attribute gets
ignored.

Any idea how i can execute some javascript on submit right after the
Tapestry stuff gets executed ?
Thanks.


Re: Using javascript onsubmit event on a Tapestry form

2009-01-21 Thread Lubor Gajda
Have you tried prototype Event.observe() function? For instance you could
use something like this:

Event.observe(formId, 'submit', function() {
// your onsubmit actions
});

I'm not sure if this is the best way to do this, but it could work.

On Wed, Jan 21, 2009 at 5:45 PM, Hugo Palma hugo.m.pa...@gmail.com wrote:

 I'd like to execute some javascript on form submit but it seems that
 Tapestry is setting the onsubmit event of the form for performing client
 side validation so whatever i place on the onsubmit attribute gets
 ignored.

 Any idea how i can execute some javascript on submit right after the
 Tapestry stuff gets executed ?
 Thanks.



ClassWorker for Services

2009-01-21 Thread kristjankelt

Hello,

Is it possible to use a ComponentClassTransformWorker approach also for
services?

Kristjan Kelt
-- 
View this message in context: 
http://www.nabble.com/ClassWorker-for-Services-tp21588669p21588669.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Adding onclick to row in Grid component

2009-01-21 Thread Jonathan O'Connor

Hi,
I have a grid, and I want the user to be able to click on a row to 
select it.
I know I can add a link to each cell, but that's not very nice, as the 
link only works if you click on text, and there could be plenty of 
whitespace in the row.


I see there is a GridRows component, which is part of each Grid, but the 
documentation on the GridRows component has no example. From memory of 
Tap3, I seem to remember building up a table using underlying 
components. Do I need to that here too?


Thanks,
Jonathan

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



RE: T5: Component Suggestion/Question

2009-01-21 Thread James Sherwood
Hello,

I have it created but I have a few questions(code is below):

1: I am using a checkbox for the modify feature but I would like to have an
image or text at the very least, is this possible?(I couldn't find a base
component to satisfy this)

2:I don't like the big red ugliness of the built in form error on submit so
I will just create another variable in the form fragment I fill(or look at
adjusting the css of that error reporting) but is it possible to mimic or
link to the validation bubble that happens on the client side?

div t:type=Zone t:id=zone 

form t:type=form t:zone=zone t:id=form

div t:type=Errors/
${firstName} t:checkbox t:id=modifyFirstName t:mixins=triggerfragment
fragment=firstNameModify/ 
t:formfragment t:id=firstNameModify visible=modifyFirstName 
input t:type=TextField t:id=firstName t:validate=required/ 
input type=submit value=Login/ 
/t:formfragment

/form

/div
 
 
@InjectComponent
private Zone zone;

@Property
private String _firstName = Fname;
@Property
private boolean _modifyFirstName;

@Component(id = firstName)
private TextField _firstnameField;
@Component(id = form)
private Form _form;


@OnEvent(value = EventConstants.VALIDATE_FORM, component=form) public
Object validate() { if (_firstName == null ||_firstName.trim().equals()) {
//validation errors _form.recordError(must have a fname); return zone; }
else { return null; // let the form submission process continue } }

@OnEvent(value = EventConstants.SUCCESS, component=form) public Object
sucess() { // do whatever you want _modifyFirstName = false; return zone; }


Thanks,
James


-Original Message-
From: Thiago H. de Paula Figueiredo [mailto:thiag...@gmail.com] 
Sent: January-21-09 2:25 PM
To: Tapestry users
Subject: Re: T5: Component Suggestion/Question

Em Wed, 21 Jan 2009 14:08:09 -0300, James Sherwood  
jsherw...@rgisolutions.com escreveu:

 Thanks a bunch,

:)

 I was actually looking at the screen cast on Ajax and Zones as I  
 suspected this would be accomplished with zones.

You can do a lot with them. Just be creative. :)

 Ideally what I would like to do is create this but have it just output  
 the value with a small edit button and a hidden text field.

It looks like the FormFragment does at least partly what you want. Its  
documentation has a good example.

 When you click the edit button it shows the text field and then submits  
 the form much like the  T5Component InPlaceEditor but this would allow  
 validation if the hide/show part does not mess that up.

How does it mess up? I use submit forms with AJAX all the time and the  
validation messages never got messed up.

-- 
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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


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



Re: [T5] improve documentation

2009-01-21 Thread superoverdrive
 Be sure it is well written. Sometimes there are some messages so badly  
 written or so vague that people just don't take the time to even  
 understand them.

I think this should be clearly written:

http://wiki.apache.org/tapestry/WishList?highlight=(wishlist)

I have put it on the Wish List are there does not seem to be a solution yet?
 
  This is why I ended up doing the backend in Wicket and the frontend in  
  Tapestry
 
 !?!?!? Being Wicket and Tapestry front-end frameworks (web ones), how  
 could you write the backend in Wicket?

Backend = the admin interface to configure the front-end...e.g. define the 
fields that exist,
what form fields should be displayed. This was easy to do in Wicket but is hard 
/impossible(?) in Tapestry
 

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



Re: Using javascript onsubmit event on a Tapestry form

2009-01-21 Thread Hugo Palma
Thanks, that worked just fine.
I was looking for more complicated solutions and overlooked the simple.

On Wed, Jan 21, 2009 at 5:57 PM, Lubor Gajda lubor.ga...@gmail.com wrote:

 Have you tried prototype Event.observe() function? For instance you could
 use something like this:

 Event.observe(formId, 'submit', function() {
// your onsubmit actions
 });

 I'm not sure if this is the best way to do this, but it could work.

 On Wed, Jan 21, 2009 at 5:45 PM, Hugo Palma hugo.m.pa...@gmail.com
 wrote:

  I'd like to execute some javascript on form submit but it seems that
  Tapestry is setting the onsubmit event of the form for performing client
  side validation so whatever i place on the onsubmit attribute gets
  ignored.
 
  Any idea how i can execute some javascript on submit right after the
  Tapestry stuff gets executed ?
  Thanks.
 



Re: [T5] improve documentation

2009-01-21 Thread Angelo Turetta

superoverdr...@gmx.de wrote:


I have put it on the Wish List are there does not seem to be a solution yet?
 


It's not actually evident what you added to that page, given 
superoverdrive  Toby.


For others' reference, your addition is: 
http://wiki.apache.org/tapestry/WishList?action=diffrev2=98rev1=94


I think what you ask is feasible: it's not that different from what is 
done by BeanEditForm, just the source of the field list is not 
determined by reflection but loaded from an external source.

I agree it would be a nice addition to T5, but it has not been done yet.

The point is: you are asking for a new feature (and a large one, I 'd 
say), so you cannot expect a simple answer on the mailing list. Look at 
JIRA improvement issues, to find out whether this has already been 
requested by someone else. If not, submit a new Issue, describing with 
the greatest detail how the new feature should work. Then you can ask 
the mailing list to vote for your issue, and ask the developers to 
consider it. Or if you feel brave enough, write it yourself and submit 
it for inclusion.


That's how things are done in OS projects...

Angelo.

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



Weird error

2009-01-21 Thread Sid Ferreira
Based on http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess Im
getting this error... Why?


java.lang.RuntimeExceptionException constructing service 'MasterDispatcher':
Error invoking service builder method
org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) (at
TapestryModule.java:1144) (for service 'MasterDispatcher'): Error invoking
service contribution method
tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration,
Dispatcher): Error building service proxy for service 'AccessController' (at
tibox.allert.fastSupport.services.AccessController(ApplicationStateManager,
ComponentClassResolver, ComponentSource, UserSessionImpl) (at
AccessController.java:26) via
tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
AppModule.java:27)): Error invoking constructor
tibox.allert.fastSupport.services.AccessController(ApplicationStateManager,
ComponentClassResolver, ComponentSource, UserSessionImpl) (at
AccessController.java:26) via
tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
AppModule.java:27) (for service 'AccessController'): No service implements
the interface tibox.allert.fastSupport.services.UserSessionImpl.
org.apache.tapestry5.ioc.internal.OperationExceptionNo service implements
the interface tibox.allert.fastSupport.services.UserSessionImpl.
trace

   - Realizing service MasterDispatcher
   - Invoking
   org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) (at
   TapestryModule.java:1144)
   - Collecting ordered configuration for service MasterDispatcher
   - Invoking method
   
tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration,
   Dispatcher) (at AppModule.java:39).
   - Determining injection value for parameter #2
   (org.apache.tapestry5.services.Dispatcher)
   - Creating service 'AccessController'.
   - Determining injection value for parameter #4
   (tibox.allert.fastSupport.services.UserSessionImpl)

java.lang.RuntimeExceptionNo service implements the interface
tibox.allert.fastSupport.services.UserSessionImpl.



-- 
Sidney G B Ferreira
Desenvolvedor Web - Tibox Innovations


Re: Weird error

2009-01-21 Thread Stephane Decleire
Hi

Could you show us the code of your class
tibox.allert.fastSupport.services.UserSessionImpl ?

Stephane

Sid Ferreira a écrit :
 Based on http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess Im
 getting this error... Why?


 java.lang.RuntimeExceptionException constructing service 'MasterDispatcher':
 Error invoking service builder method
 org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) (at
 TapestryModule.java:1144) (for service 'MasterDispatcher'): Error invoking
 service contribution method
 tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration,
 Dispatcher): Error building service proxy for service 'AccessController' (at
 tibox.allert.fastSupport.services.AccessController(ApplicationStateManager,
 ComponentClassResolver, ComponentSource, UserSessionImpl) (at
 AccessController.java:26) via
 tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
 AppModule.java:27)): Error invoking constructor
 tibox.allert.fastSupport.services.AccessController(ApplicationStateManager,
 ComponentClassResolver, ComponentSource, UserSessionImpl) (at
 AccessController.java:26) via
 tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
 AppModule.java:27) (for service 'AccessController'): No service implements
 the interface tibox.allert.fastSupport.services.UserSessionImpl.
 org.apache.tapestry5.ioc.internal.OperationExceptionNo service implements
 the interface tibox.allert.fastSupport.services.UserSessionImpl.
 trace

- Realizing service MasterDispatcher
- Invoking
org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) 
 (at
TapestryModule.java:1144)
- Collecting ordered configuration for service MasterDispatcher
- Invoking method

 tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration,
Dispatcher) (at AppModule.java:39).
- Determining injection value for parameter #2
(org.apache.tapestry5.services.Dispatcher)
- Creating service 'AccessController'.
- Determining injection value for parameter #4
(tibox.allert.fastSupport.services.UserSessionImpl)

 java.lang.RuntimeExceptionNo service implements the interface
 tibox.allert.fastSupport.services.UserSessionImpl.



   


Re: Weird error

2009-01-21 Thread Chris Lewis
And also how exactly you bind your service implementation in your app 
module.


Stephane Decleire wrote:

Hi

Could you show us the code of your class
tibox.allert.fastSupport.services.UserSessionImpl ?

Stephane

Sid Ferreira a écrit :
  

Based on http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess Im
getting this error... Why?


java.lang.RuntimeExceptionException constructing service 'MasterDispatcher':
Error invoking service builder method
org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) (at
TapestryModule.java:1144) (for service 'MasterDispatcher'): Error invoking
service contribution method
tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration,
Dispatcher): Error building service proxy for service 'AccessController' (at
tibox.allert.fastSupport.services.AccessController(ApplicationStateManager,
ComponentClassResolver, ComponentSource, UserSessionImpl) (at
AccessController.java:26) via
tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
AppModule.java:27)): Error invoking constructor
tibox.allert.fastSupport.services.AccessController(ApplicationStateManager,
ComponentClassResolver, ComponentSource, UserSessionImpl) (at
AccessController.java:26) via
tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
AppModule.java:27) (for service 'AccessController'): No service implements
the interface tibox.allert.fastSupport.services.UserSessionImpl.
org.apache.tapestry5.ioc.internal.OperationExceptionNo service implements
the interface tibox.allert.fastSupport.services.UserSessionImpl.
trace

   - Realizing service MasterDispatcher
   - Invoking
   org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) (at
   TapestryModule.java:1144)
   - Collecting ordered configuration for service MasterDispatcher
   - Invoking method
   
tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration,
   Dispatcher) (at AppModule.java:39).
   - Determining injection value for parameter #2
   (org.apache.tapestry5.services.Dispatcher)
   - Creating service 'AccessController'.
   - Determining injection value for parameter #4
   (tibox.allert.fastSupport.services.UserSessionImpl)

java.lang.RuntimeExceptionNo service implements the interface
tibox.allert.fastSupport.services.UserSessionImpl.



  



  


--
http://thegodcode.net



T5 : validation of radiogroup fields

2009-01-21 Thread Stephane Decleire
I don't understand why the radiogroup component doesn't have a validate
field like the other form field components ...
And what is the prefered way to set a radiogroup field as required ?

Stephane




Re: [T5] improve documentation

2009-01-21 Thread superoverdrive
It is 1:1 the text from the mailing list as far as I remember..just with a 
formatted table on the Wiki.


So you mean it could work by extending BeanEdit Form?

Anyway, so I think, considering the time to do this, it was a good decision to 
use Wicket for this part and T5 for the frontend part...so combining the best 
of both worldsotherwise it would have taken too long.

Maybe I replace this later on by T5 too if this should become a feature of 
T5

I am not a T5 developer, just a casual T5 user - I can only contribute by 
making suggestions and pointing out stuff I have noticed...

Thanks for your reply


 For others' reference, your addition is: 
 http://wiki.apache.org/tapestry/WishList?action=diffrev2=98rev1=94
 
 I think what you ask is feasible: it's not that different from what is 
 done by BeanEditForm, just the source of the field list is not 
 determined by reflection but loaded from an external source.
 I agree it would be a nice addition to T5, but it has not been done yet.
 
 The point is: you are asking for a new feature (and a large one, I 'd 
 say), so you cannot expect a simple answer on the mailing list. Look at 
 JIRA improvement issues, to find out whether this has already been 
 requested by someone else. If not, submit a new Issue, describing with 
 the greatest detail how the new feature should work. Then you can ask 
 the mailing list to vote for your issue, and ask the developers to 
 consider it. Or if you feel brave enough, write it yourself and submit 
 it for inclusion.
 
 That's how things are done in OS projects...
 
 Angelo.
 
 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org

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



Re: Weird error

2009-01-21 Thread Carl Crowder

I'm guessing from this:

java.lang.RuntimeException No service implements the interface 
tibox.allert.fastSupport.services.UserSessionImpl.


That you're binding the implementing class instead of the interface class.

Carl

Chris Lewis wrote:
And also how exactly you bind your service implementation in your app 
module.


Stephane Decleire wrote:

Hi

Could you show us the code of your class
tibox.allert.fastSupport.services.UserSessionImpl ?

Stephane

Sid Ferreira a écrit :
 

Based on http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess Im
getting this error... Why?


java.lang.RuntimeExceptionException constructing service 
'MasterDispatcher':

Error invoking service builder method
org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) 
(at
TapestryModule.java:1144) (for service 'MasterDispatcher'): Error 
invoking

service contribution method
tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration, 

Dispatcher): Error building service proxy for service 
'AccessController' (at
tibox.allert.fastSupport.services.AccessController(ApplicationStateManager, 


ComponentClassResolver, ComponentSource, UserSessionImpl) (at
AccessController.java:26) via
tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
AppModule.java:27)): Error invoking constructor
tibox.allert.fastSupport.services.AccessController(ApplicationStateManager, 


ComponentClassResolver, ComponentSource, UserSessionImpl) (at
AccessController.java:26) via
tibox.allert.fastSupport.services.AppModule.bind(ServiceBinder) (at
AppModule.java:27) (for service 'AccessController'): No service 
implements

the interface tibox.allert.fastSupport.services.UserSessionImpl.
org.apache.tapestry5.ioc.internal.OperationExceptionNo service 
implements

the interface tibox.allert.fastSupport.services.UserSessionImpl.
trace

   - Realizing service MasterDispatcher
   - Invoking
   
org.apache.tapestry5.services.TapestryModule.buildMasterDispatcher(List) 
(at

   TapestryModule.java:1144)
   - Collecting ordered configuration for service MasterDispatcher
   - Invoking method
   
tibox.allert.fastSupport.services.AppModule.contributeMasterDispatcher(OrderedConfiguration, 


   Dispatcher) (at AppModule.java:39).
   - Determining injection value for parameter #2
   (org.apache.tapestry5.services.Dispatcher)
   - Creating service 'AccessController'.
   - Determining injection value for parameter #4
   (tibox.allert.fastSupport.services.UserSessionImpl)

java.lang.RuntimeExceptionNo service implements the interface
tibox.allert.fastSupport.services.UserSessionImpl.



  


  




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



Re: T5: Component Suggestion/Question

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 15:36:21 -0300, James Sherwood  
jsherw...@rgisolutions.com escreveu:



Hello,


Hi!

1: I am using a checkbox for the modify feature but I would like to have  
an image or text at the very least, is this possible?(I couldn't find a  
base

component to satisfy this)


I don't think this would be possible only using the built-in Tapestry  
component, but I wish I am wrong. :)


2:I don't like the big red ugliness of the built in form error on submit  
so I will just create another variable in the form fragment I fill(or  
look at adjusting the css of that error reporting) but is it possible to  
mimic or

link to the validation bubble that happens on the client side?


You can add your own CSS overriding the default Errors component styling.  
This way, you can style the error messages in any way you want. By  
default, the generated div tag has class=t-error.


That's one of the Tapestry strengths: its components have their default  
style, but you can always override them using ordinary CSS techniques.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: T5: HiddenField?

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 14:43:31 -0300, Fernando Padilla f...@alum.mit.edu  
escreveu:



So.. Is there really ho HiddenField component for Tapestry 5?
Is this just a minor oversight, or is there a different way to add  
values to be passed through form?


One option is to use Form's context parameter. AFAIK, it works exactly  
like the context parameter found in PageLink, ActionLink and EventLink.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: ClassWorker for Services

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 15:01:38 -0300, kristjankelt  
kristjank...@hotmail.com escreveu:



Hello,


Hi!


Is it possible to use a ComponentClassTransformWorker approach also for
services?


Wouldn't service decoration (aspect-oriented style) provide what you need?  
Take a look at  
http://tapestry.apache.org/tapestry5/tapestry-ioc/decorator.html. It's  
incredibly easy to do.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: Weird error

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 16:23:45 -0300, Sid Ferreira sid@gmail.com  
escreveu:



Based on http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess Im
getting this error... Why?


As any error in Java, the first thing to do is to look at the stack trace:

No service implements the interface  
tibox.allert.fastSupport.services.UserSessionImpl.


Read the Tapestry-IoC documentation because the problem lies in your T-IoC  
configuration. Don't forget to read this page:  
http://tapestry.apache.org/tapestry5/tapestry-ioc/service.html.


(Sorry, second RTFM today, hehehe) :)

By the way, I think there's an error in this constructor:

public AccessController(ApplicationStateManager asm,  
ComponentClassResolver resolver, ComponentSource componentSource,  
UserSessionImpl newUserSession)


Instead of UserSessionImpl, I think it should be UserSession, the  
interface declared in that wiki page.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
Consultor, desenvolvedor e instrutor em Java
http://www.arsmachina.com.br/thiago

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



Re: T5: HiddenField?

2009-01-21 Thread Fernando Padilla

.. but yet not really..

Since if I use a form context, then I think I have to then create a 
special event listener to deal with that context right? 
onActionFromForm(context)...


I just want to add hidden fields, and have the component take care of 
serializing and deserializing the values appropriately..


thank you :)


Thiago H. de Paula Figueiredo wrote:
Em Wed, 21 Jan 2009 14:43:31 -0300, Fernando Padilla f...@alum.mit.edu 
escreveu:



So.. Is there really ho HiddenField component for Tapestry 5?
Is this just a minor oversight, or is there a different way to add 
values to be passed through form?


One option is to use Form's context parameter. AFAIK, it works exactly 
like the context parameter found in PageLink, ActionLink and EventLink.




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



Re: [T5] improve documentation

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 16:17:29 -0300, Angelo Turetta  
aturetta+apa...@bestunion.it escreveu:


I think what you ask is feasible: it's not that different from what is  
done by BeanEditForm, just the source of the field list is not  
determined by reflection but loaded from an external source.

I agree it would be a nice addition to T5, but it has not been done yet.


It is not just feasible, it's already implemented: use a BeanEditForm or  
BeanEditor and pass them a BeanModel instance built and configured  
programatically (i.e. removing or adding properties to the BeanModel based  
on any logic you want).


Maybe nobody commented on the suggestion made in  
http://wiki.apache.org/tapestry/WishList?action=diffrev2=98rev1=94 and  
also posted in this list because it was not well written. I just  
understood that after reading Angelo's message.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: T5: HiddenField?

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 19:47:55 -0300, Fernando Padilla f...@alum.mit.edu  
escreveu:


Since if I use a form context, then I think I have to then create a  
special event listener to deal with that context right?  
onActionFromForm(context)...


Not right! :) It would be passed to you onSuccess method, AFAIK.

I just want to add hidden fields, and have the component take care of  
serializing and deserializing the values appropriately..


There's the Hidden component in Chenillekit:  
http://www.chenillekit.org/chenillekit-tapestry/ref/org/chenillekit/tapestry/core/components/Hidden.html.  
By the way, there are some really nice components there.



thank you :)


Gracias!

--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: T5: HiddenField?

2009-01-21 Thread Fernando Padilla

thank you. :)

onSuccess would be WAY too late. :)  The whole point to have hidden 
variables is to make sure state is carried through so that we have 
something to work with.. :)


thank you for pointing out Chenillekit, maybe I'll look into it, but we 
already had to create our own HiddenField, just wondering why it's not 
there by default in Tapestry.. because I think it's a pretty valid 
usecase.. :)


later

'nando


Thiago H. de Paula Figueiredo wrote:
Em Wed, 21 Jan 2009 19:47:55 -0300, Fernando Padilla f...@alum.mit.edu 
escreveu:


Since if I use a form context, then I think I have to then create a 
special event listener to deal with that context right? 
onActionFromForm(context)...


Not right! :) It would be passed to you onSuccess method, AFAIK.

I just want to add hidden fields, and have the component take care of 
serializing and deserializing the values appropriately..


There's the Hidden component in Chenillekit: 
http://www.chenillekit.org/chenillekit-tapestry/ref/org/chenillekit/tapestry/core/components/Hidden.html. 
By the way, there are some really nice components there.



thank you :)


Gracias!



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



Re: T5: HiddenField?

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 20:15:01 -0300, Fernando Padilla f...@alum.mit.edu  
escreveu:



thank you. :)


Gracias de novo! :)

onSuccess would be WAY too late. :)  The whole point to have hidden  
variables is to make sure state is carried through so that we have  
something to work with.. :)


It just happened to me that the client persistence strategy could be used  
for this kind of scenario. I haven't used that yet, though.



thank you for pointing out Chenillekit, maybe I'll look into it, but we  
already had to create our own HiddenField, just wondering why it's not  
there by default in Tapestry.. because I think it's a pretty valid  
usecase.. :)


Maybe a JIRA for that. :)

--
Thiago H. de Paula Figueiredo
Consultor, desenvolvedor e instrutor em Java
http://www.arsmachina.com.br/thiago

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



Re: Weird error

2009-01-21 Thread Sid Ferreira
Ive copy pasted most of code.UserSession (interface) and UserSessionImpl
(class) are almost empty, just the method in the link returning true always.

The binding I tried with the binder, before the binding of the application.

Thiago: I've readed it and there's no problem, but when a copy-paste fails
it's confusing.

I'll post the sources in a moment...

On Wed, Jan 21, 2009 at 9:45 PM, Thiago H. de Paula Figueiredo 
thiag...@gmail.com wrote:

 Em Wed, 21 Jan 2009 16:23:45 -0300, Sid Ferreira sid@gmail.com
 escreveu:

  Based on http://wiki.apache.org/tapestry/Tapestry5HowToControlAccess Im
 getting this error... Why?


 As any error in Java, the first thing to do is to look at the stack trace:

  No service implements the interface
 tibox.allert.fastSupport.services.UserSessionImpl.


 Read the Tapestry-IoC documentation because the problem lies in your T-IoC
 configuration. Don't forget to read this page:
 http://tapestry.apache.org/tapestry5/tapestry-ioc/service.html.

 (Sorry, second RTFM today, hehehe) :)

 By the way, I think there's an error in this constructor:

 public AccessController(ApplicationStateManager asm, ComponentClassResolver
 resolver, ComponentSource componentSource, UserSessionImpl newUserSession)

 Instead of UserSessionImpl, I think it should be UserSession, the interface
 declared in that wiki page.

 --
 Thiago H. de Paula Figueiredo
 Independent Java consultant, developer, and instructor
 Consultor, desenvolvedor e instrutor em Java
 http://www.arsmachina.com.br/thiago


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




-- 
Sidney G B Ferreira
Desenvolvedor Web - Tibox Innovations


Re: [T5] Layout component: resolving unclarities

2009-01-21 Thread manuel aldana

thanks for the link.

looking at this layout injection pattern, i wonder whether a normal 
template, which references the dynamic site-parts directly wouldn't be 
even easier (i at least find it more intuitive as using the t:body/ 
injection). what are the pros/cons for that?


Site.tml (style stuff omitted):
html xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd;
   head
  t:header/
   /head
   body
  t:navigation/
  
   t:mainContent/

   /body
/html

SergeEby schrieb:

Hi,

t:body/ is the actual content of your page, and the layout component is
just a wrapper.
 
This link would probably help you better understand:


http://wiki.apache.org/tapestry/Tapestry5Layoutcomponent


  


--
manuel aldana
ald...@gmx.de
software-engineering blog: http://www.aldana-online.de


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



Re: T5: HiddenField?

2009-01-21 Thread Andreas Andreou
https://issues.apache.org/jira/browse/TAP5-265

On Thu, Jan 22, 2009 at 2:41 AM, Thiago H. de Paula Figueiredo
thiag...@gmail.com wrote:
 Em Wed, 21 Jan 2009 20:15:01 -0300, Fernando Padilla f...@alum.mit.edu
 escreveu:

 thank you. :)

 Gracias de novo! :)

 onSuccess would be WAY too late. :)  The whole point to have hidden
 variables is to make sure state is carried through so that we have something
 to work with.. :)

 It just happened to me that the client persistence strategy could be used
 for this kind of scenario. I haven't used that yet, though.


 thank you for pointing out Chenillekit, maybe I'll look into it, but we
 already had to create our own HiddenField, just wondering why it's not there
 by default in Tapestry.. because I think it's a pretty valid usecase.. :)

 Maybe a JIRA for that. :)

 --
 Thiago H. de Paula Figueiredo
 Consultor, desenvolvedor e instrutor em Java
 http://www.arsmachina.com.br/thiago

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





-- 
Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr
Tapestry / Tacos developer
Open Source / JEE Consulting

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



Re: [T5] Layout component: resolving unclarities

2009-01-21 Thread Thiago H. de Paula Figueiredo

Em Wed, 21 Jan 2009 21:30:42 -0300, manuel aldana ald...@gmx.de escreveu:

looking at this layout injection pattern, i wonder whether a normal  
template, which references the dynamic site-parts directly wouldn't be  
even easier (i at least find it more intuitive as using the t:body/  
injection). what are the pros/cons for that?


The Layout pattern is just one ordinary Tapestry custom-made component.

The pros are the fact that you can each part in its own class/template  
pair. The con is that there is no way for a component to know what the  
main content is, as you named in your template below.



Site.tml (style stuff omitted):
html xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd;
head
   t:header/
/head
body
   t:navigation/
   t:mainContent/
/body
/html


If t:mainContent means the real content of each page of your  
application, it should be t:body/. A Layout component (or any other  
component) has no other way to know what is inside it (its content).


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: [T5] Layout component: resolving unclarities

2009-01-21 Thread manuel aldana

Thiago H. de Paula Figueiredo schrieb:
Em Wed, 21 Jan 2009 21:30:42 -0300, manuel aldana ald...@gmx.de 
escreveu:


looking at this layout injection pattern, i wonder whether a normal 
template, which references the dynamic site-parts directly wouldn't 
be even easier (i at least find it more intuitive as using the 
t:body/ injection). what are the pros/cons for that?


The Layout pattern is just one ordinary Tapestry custom-made component.

The pros are the fact that you can each part in its own class/template 
pair. The con is that there is no way for a component to know what the 
main content is, as you named in your template below.


OK, but why does the layout component need to know what the main content is?

As in other mail mentioned the only (but major) cons I can see is that 
making the Layout as the main-entry page is not very flexible and breaks 
somehow the tapestry page concept.


--
manuel aldana
ald...@gmx.de
software-engineering blog: http://www.aldana-online.de


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



Re: [T5] Layout component: resolving unclarities

2009-01-21 Thread Thiago H. de Paula Figueiredo

Em Wed, 21 Jan 2009 21:46:20 -0300, manuel aldana ald...@gmx.de escreveu:

OK, but why does the layout component need to know what the main content  
is?


If it is a layout, yes. Otherwise, it would be an ordinary page.

As in other mail mentioned the only (but major) cons I can see is that  
making the Layout as the main-entry page is not very flexible and breaks  
somehow the tapestry page concept.


When people here talk about a Layout component, we are talking about  
something described by the Tapestry documentation as A Layout component  
exists to provide common content across all pages in your application.. A  
Layout is a component, not a page, at least in the vocabulary used in this  
mailing list. :)


It does not mean that you cannot have more than one Layout (but they  
should be two different components, each page would use zero or one of  
them) or parameterized Layout or Layouts. ;)


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
Consultor, desenvolvedor e instrutor em Java
http://www.arsmachina.com.br/thiago

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



RE: T5: Component Suggestion/Question

2009-01-21 Thread James Sherwood
You are like our own little tapestry tutor, and its MUCH appreciated:)

 I don't think this would be possible only using the built-in Tapestry
component, but I wish I am wrong. :)

Before I go looking into the code, would it be possible to build one whereby
you just click an image to change hidden/shown of the form fragment?

If so would I just start by basing it off the built in checkbox component?

Unfortunately the checkbox is such an ugly/clunky implementation of a really
awesome little component.

Thanks,
--James

-Original Message-
From: Thiago H. de Paula Figueiredo [mailto:thiag...@gmail.com] 
Sent: January-21-09 7:32 PM
To: Tapestry users
Subject: Re: T5: Component Suggestion/Question

Em Wed, 21 Jan 2009 15:36:21 -0300, James Sherwood  
jsherw...@rgisolutions.com escreveu:

 Hello,

Hi!

 1: I am using a checkbox for the modify feature but I would like to have  
 an image or text at the very least, is this possible?(I couldn't find a  
 base
 component to satisfy this)

I don't think this would be possible only using the built-in Tapestry  
component, but I wish I am wrong. :)

 2:I don't like the big red ugliness of the built in form error on submit  
 so I will just create another variable in the form fragment I fill(or  
 look at adjusting the css of that error reporting) but is it possible to  
 mimic or
 link to the validation bubble that happens on the client side?

You can add your own CSS overriding the default Errors component styling.  
This way, you can style the error messages in any way you want. By  
default, the generated div tag has class=t-error.

That's one of the Tapestry strengths: its components have their default  
style, but you can always override them using ordinary CSS techniques.

-- 
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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


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



Re: T5: Component Suggestion/Question

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 22:01:43 -0300, James Sherwood  
jsherw...@rgisolutions.com escreveu:



You are like our own little tapestry tutor, and its MUCH appreciated:)


I'm just a guy who wants to bring sanity and pleasure and elegance  
(Tapestry 5!) to the Java Web development world . . . :) And a guy with a  
little too much free time in his hands, as I'm currenty working part-time  
in a project with a local company and the rest of the time in my own  
projects. All them implemented in Tapestry and the Ars Machina Project  
packages (www.arsmachina.com.br/project) . . .


Before I go looking into the code, would it be possible to build one  
whereby

you just click an image to change hidden/shown of the form fragment?


I think so: it would be a matter of writing/generating Javascript code  
handling the click event of an image/link/whatever and showing/hiding the  
form fragment. It shouldn't be hard.


If so would I just start by basing it off the built in checkbox  
component?


I think you will find the answers you want in the TriggerFragment  
component  
(http://tapestry.apache.org/tapestry5/tapestry-core/ref/org/apache/tapestry5/corelib/mixins/TriggerFragment.html).  
Look at the Javascript it adds to the page and try to imitate it in your  
component.


Unfortunately the checkbox is such an ugly/clunky implementation of a  
really awesome little component.


I agree . . .

--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: [T5] Layout component: resolving unclarities

2009-01-21 Thread Thiago H. de Paula Figueiredo

Em Wed, 21 Jan 2009 22:07:20 -0300, manuel aldana ald...@gmx.de escreveu:

yes, it is a bit confusing that you could do your layout-concept  
directly as a page (see starter mail of thread). But I see now it is not  
a good idea, so will go for layout as a component :)


Technically speaking, I think it would be possible to implement the layout  
concept using a page, but then your content pages would need to extend the  
page component and provide the content through parameter blocks, a little  
bit like t:parameter in Grid, BeanEditor and BeanEditForm.


But this would be much less elegant and easy than the component  
implementation of the layout concept . . . ;)


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: Weird error

2009-01-21 Thread Thiago H. de Paula Figueiredo
Em Wed, 21 Jan 2009 22:36:45 -0300, Sid Ferreira sid@gmail.com  
escreveu:



http://pastebin.com/m43c165fd
didn't included database, components or pages, just what matters.

If something else is needed, tell me :D


As I said before,

By the way, I think there's an error in this constructor:

public AccessController(ApplicationStateManager asm,  
ComponentClassResolver resolver, ComponentSource componentSource,  
UserSessionImpl newUserSession)


Instead of UserSessionImpl, I think it should be UserSession, the  
interface declared in that wiki page.


--
Thiago H. de Paula Figueiredo
Independent Java consultant, developer, and instructor
http://www.arsmachina.com.br/thiago

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



Re: [ANN] JumpStart 4.0 released - uses Jetty!

2009-01-21 Thread CG
hi, thx for your effort ...
I hv been using jumpstart for 9 months .. and I hv ported the older
version of jumpstart to run on Apache Geronimo (which  use openjpa ..)
... and now openjpa support is built-in .. yeah !

I would plan to upgrade to jumpstart 4.0 , on Apache Geronimo - jetty
...,  would like to seek for your advice on the tomcat vs jetty ...

1. wht is the main advantage of jetty over tomcat , on T5 development  ?

Thanks agian :)
CG


On Mon, Jan 19, 2009 at 6:28 PM, Geoff Callender
geoff.callender.jumpst...@gmail.com wrote:
 Hi all,

 JumpStart 4.0 is now available.

 The big thing about version 4 is that now you develop and test with Jetty!
 It's fast and you get the full benefit of live class reloading and local
 debugging, even with EJB3!  You can still deploy to JBoss, but we swap in
 OpenEJB during development to give you the business tier transparently,
 in-line.

 Use it live:

 http://jumpstart.doublenegative.com.au:8080/jumpstart/

 or download it:

 http://jumpstart.doublenegative.com.au

 Please keep the feedback and suggestions coming. It really helps!

 Cheers,

 Geoff

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



Re: Possible to override onActivate from an extended page?

2009-01-21 Thread Peter Stavrinides
Hi James,

Consider that a dispatcher/request filter enables you to remove security 
concerns from your pages, this has several advantages, i.e.: separation of 
concerns, extensibility, and pipelining, which can be extremely useful for 
layered security, take for instance this use case:

- Authenticate
- Authorize
- Audit session start/end
- Audit Resource Access (Page/Component etc)
- Secure Some Pages

IMHO the easiest and cleanest way to do all this is with a pipeline of request 
filters, I can't imagine trying to maintain all of it in my pages. Although you 
could probably do something similar using multiple base pages and an 
inheritance hierarchy.

I also use a base page, but prefer to use it to propagate logic that is common 
to every page (keeping it completely generic).

Kind regards,
Peter

 
- Original Message -
From: James Sherwood jsherw...@rgisolutions.com
To: Tapestry users users@tapestry.apache.org
Sent: Monday, 19 January, 2009 20:02:07 GMT +02:00 Athens, Beirut, Bucharest, 
Istanbul
Subject: Possible to override onActivate from an extended page?

Hello,

 

I have a login only application and for the most part you just need to be
logged in to use it except for a couple of pages.

 

To enforce this I made a class:

 

Class SecurePage{

 

Object onActivate(){

If(!visitExists){

Return index.class;

}

Return null;

 

}

 

I just then extend my pages with this one.(which will have other various
methods common to many pages)

 

My problem:  Is there a way to override the onActivate (or a way around it)
in the page that extends SecurePage so I could perform additional security
checks?

 

Thanks,

--James


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