i think this is possible. will probably look something like this, i havent tried it

XsltPanel extends Panel {
 onComponentTagBody(...) {
   // wicket renders markup into response so we create a standin that will collect the markup for us
   StringBufferResponse response=new StringBufferResponse();
   // swap the current response with the standin
   Response old=RequestCycle.get().getResponse();
   RequestCycle.get().setResponse(response);

   // let the component render its body
   super.onComponentTagBody();

   // put the old response back
   RequestCycle.get().setResponse(old);

   String output=response.toString();
   //transform the rendered output;

   replaceComponentTagBody(...., output)

  }
}

something like that might be used as a generic xslt transformer, if it works :)

-Igor



On 12/30/05, Jim McLaughlin <[EMAIL PROTECTED]> wrote:
Yes, I was not being clear with my question (my grasp of wicket is very
weak). I want to transform the markup being loaded from the markup file,
but *after* wicket has run it through the rendering process. What I want
to do is have wicket take the xml markup associated with the panel and
run it through its rendering process, and then capture that output
before it gets merged with the panel's parent, transform it with xslt
(into _javascript_ -- see my post from yesterday on wicket-contrib-gmap),
and then merge it with the panel's parent.

This way I am hoping to have _javascript_ rendered into the page that will
  know about urls for wicket components. To me, it seems like a natural
way to have _javascript_ objects call wicket Link objects and AjaxHandlers.

Apologies if this sounds like babbling -- I'm still trying to find my
wicket legs.

thx,
jim



Juergen Donnerstag wrote:
> On 12/30/05, Jim McLaughlin <[EMAIL PROTECTED]> wrote:
>
>>How to create a component that will transform its xml markup with xslt?
>>Looking at wicket-contrib-velocity, the VelocityPanel calls
>>replaceComponentTagBody inside of onComponentTagBody. It looks like
>>replaceComponentTagBody will skip all the RawMarkup. How can I get it to
>>be replaced by the xslt transformation?
>>
>
>
> The same way FreeMarkerPanel.onComponentTagBody works except that you
> don't call FreeMarker but you xslt processor.
> replaceComponentTagBody(markupStream, openTag, newBody) removes the
> body (as you already discovered) and gets replaced by "newBody" (third
> parameter).
>
> Could it be this is not your question? Are you asking to xslt
> transform the markup being loaded from the markup file. That would be
> similar to loading the markup from a database (or any other source you
> can think of). Add a IResourceStreamLocator to the
> DefaultResourceStreamLocator which is default an accessible through
> Application.getResourceStreamLocator(). Or replace
> Application.newMarkupResourceStream but than you loose all the default
> functionality.
>
> Juergen
>
>
>
>
>>thx,
>>jim
>>
>>
>>
>>-------------------------------------------------------
>>This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
>>for problems?  Stop!  Download the new AJAX search engine that makes
>>searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
>>http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
>>_______________________________________________
>>Wicket-user mailing list
>>[email protected]
>> https://lists.sourceforge.net/lists/listinfo/wicket-user
>>
>
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
> for problems?  Stop!  Download the new AJAX search engine that makes
> searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
> http://ads.osdn.com/?ad_idv37&alloc_id865&op=click



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to