This wouldn't quite work because the Posts are in a collection, and I
don't know which one was replied to, so I wouldn't know which to get
the content from.
Probably the component idea is the best one.
On 5/20/06, Andrew Robinson <[EMAIL PROTECTED]> wrote:
You could accomplish this with a facade. I know it isn't what you are
exactly looking for, but would work.
Example (Using seam annotations):
@Name("postBean")
public class Post
{
private String content;
pubic String getContent() { return this.content; }
}
@Name("postResult")
pubic class ResultsBean
{
private String newContent;
public String getNewContent() { return this.newContent; }
public void setNewContent(String content) { this.newContent = content; }
}
@Name("post")
public class PostFacade
{
@In
private Post postBean;
@In(create=true)
private ResutsBean postResult;
public String getContent()
{
return (postResult.getNewContent() != null) ?
postResult.getNewContent() :
postBean.getContent();
}
public String setContent(String content) {
postResult.setNewContent(content); }
}
XHTML:
<t:inputTextarea value="#{post.content}" />
There are other ways, this is just the first that came to mind.
Another would obviously be a custom tag & component and handle the
decode in the way that you want.
-Andrew
On 5/20/06, benjamin van der veen <[EMAIL PROTECTED]> wrote:
> Hello,
>
> This is hard to articulate, so let me give an example:
>
> Suppose you are making a message board. The objective is to make a
> form the user can use to quote posts below his post, like so:
>
> (user 3 sees this in a text area, and types something above it)
>
> [begin textarea]
>
> > user 2 said:
> > second message
> >
> > > user 1 said:
> > > original message
> [end textarea]
>
> In this example, user 3 is replying to a message from user 2, which
> itself is a reply to a message from user 1.
>
> The initial value of the text area comes from a Post object; I am
> iterating (<ui:repeat>) through a collection of Posts to build the
> topic view. However, when the user submits this form, I don't want the
> value of the Post object to be updated, I want a separate field
> (newPostContent) on my backing bean to be updated. The problem is
> here:
>
> <h:inputTextarea value="#{post.content}"/>
>
> --I cannot specify that I want the inital value to come from one place
> and I want the user-submitted value to go somewhere else. To give an
> example of what such a thing might look like:
>
> <h:inputTextarea initialValue="#{post.content}"
> bindSubmittedValueTo="#{myBean.newPostContent}"/>
>
> How would this be done in reality?
>
> Thanks,
> benjamin
>