Sébastien Geindre pisze:
> 
>> I see your saga with calling an external service continues 
> It's a real saga !!! I am writing the season 2 !!!
> 
>> what exactly http header parameters you need to set while
>> calling your service?
>>   
> i wrote a WFS transformer which take a WFS xml request and make the http
> post request to a WFS webservice. This transformer need that ALL the xml
> stream is a WFS request. It is build on httpclient library...
> 
> public class WFSProxy extends AbstractDOMTransformer {
> ...
> 
> protected org.w3c.dom.Document transform(org.w3c.dom.Document document)
> {...}
> 
> in transform method, i make the http request...
> Very simple, nothing to parse...before requesting. This is OK.
> 
> Now i need to make a transformer which take a subset of xml data and
> make the request.
> 
> First approach : use CIncludeTransformer !!
> It makes the httprequest, but it seems that some http parameters are not
> set...
> Which one ? That's the questions...
> How can i log the http header of a request made by CIcludeTransformer ?

To be honest, I have no idea... I fear only looking at source code can give you 
an answer.

> Second approach : use transformer given by franco
> (http://www.mail-archive.com/users@cocoon.apache.org/msg39623.html), but
> it seems to not be compatible with C2.2.
> 
> public class HTTPPostTransformer
>        extends AbstractTransformer
>        implements Recyclable, Composable { ...
> 
> 
> this transformer, written for C2.1, is based on AbstractTransformer.
> it has compose method which set the manager.
> Does it still work in C2.2 ?

I think it should work as long as you replace Composable with Serviceable 
interface and compose()
with service() method. However, if you write your own components from scratch I 
would suggest to
write them as Spring beans instead of Avalon components.

> In fact, the http post is made, but it fell in parsing the response
> because the transformer is not enable to find a parser :
> 
>                    FilterContentHandler lFilterContentHandler = new
> FilterContentHandler(this);
> 
>                    lSAXParser = (SAXParser)
> this.manager.lookup(SAXParser.ROLE);
> 
>                    lSAXParser.parse(lInputSource, lFilterContentHandler);
> 
> How can i handle it in C2.2 ?

What's exactly the exception thrown? This should work ok.

> Third approach (season3 !!!)  : C2.2 block !!!

Third approach would be implementing your own servlet making WFS call and using 
postable source but
it won't be much easier so I think writing transformer makes sense in this case.

> thanks for helping.

No problem.

-- 
Grzegorz Kossakowski
Committer and PMC Member of Apache Cocoon
http://reflectingonthevicissitudes.wordpress.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to