Re: Generate HTML from a WOComponent programmatically
Re: Generate HTML from a WOComponent programmatically
- Subject: Re: Generate HTML from a WOComponent programmatically
- From: Mike Schrag <email@hidden>
- Date: Fri, 30 Mar 2007 19:54:46 -0400
override appendToResponse and do:
WOResponse newResponse = new WOResponse();
super.appendToResponse(newResponse, wocontext);
String yourChildrenAsText = newResponse.contentString();
String transformedText = // perform your transformation on
yourChildrenAsText
originalResponse.appendContentString(transformedText);
I have no idea what happens if you try to do this from something
outside of appendToResponse, though.
ms
On Mar 30, 2007, at 7:43 PM, Jacky Gagnon wrote:
On 07-03-30, at 17:13, Chuck Hill wrote:
This sounds like a terrible idea.
Yes I know ;-)
Why not use a WORepetition and some custom components? What are
you trying to do that can't be done that way?
Its because I have already a Java class who can apply a complex
transformation to my text, I just have to give tags to insert (like
HTML, XML etc.) and this class know how to process the text to
present the result. I just wanted to reuse it.
But if programmatically generate the HTML of subcomponent don't
seem a reasonable thing to do or its not easy, I will go for
another strategy (I have a plan B for using WORepetition and
custom component :-) but will need more work :-( ).
Thanks Chuck.
Chuck
On Mar 30, 2007, at 1:38 PM, Jacky Gagnon wrote:
Hi,
I want to be able to generate HTML code from a WOComponent
programmatically and insert the response into a String (to be
display into a parent component).
I tried something like this :
public class ParentComponent extends WOComponent {
//A WOString will display the result
public String getText()
{
while ( iNeedMoreSubcomponent )
{
String htmlFromSubComponent = generateHTMLOfSubcomponent();
... code where I insert the result of the sub component into
my text ...
}
return text;
}
//This sub component will contain component action and the
result will be inserted into the "text"...
public String generateHTMLOfSubcomponent()
{
WOComponent subComponent = pageWithName("SubComponent");
String chaineHTML = resultAjax.generateResponse().contentString
();
return chaineHTML;
}
}
But the problem with this example is the value of context().page
() (was ParentComponent), who is replaced by the SubComponent (in
my case this will be a problem). If I create a new Context for
the sub component, I will lost my session.
Is there a way to do this or I'm better to change strategy?
Thanks in advance.
Jacky
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40global-village.net
This email sent to email@hidden
--
Practical WebObjects - for developers who want to increase their
overall knowledge of WebObjects or who are trying to solve
specific problems.
http://www.global-village.net/products/practical_webobjects
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40mdimension.com
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden