Hi Raghu,
Yes, you can, but it requires some manual work to compose the multipart
response. I happen to have some code to do that. Composing the response can be
done like this:
let $boundary := soap:_init-multipart-response()
return (
soap:_add-multipart-to-response($boundary, 'soap-envelop',
<env:Envelop>
<env:Header>
{$headers}
</env:Header>
<env:Body>
{$payload}
</env:Body>
</env:Envelop>
),
for $attachment-name at $pos in
$attachments[(position() mod 2) = 1]
let $attachment :=
$attachments[$pos * 2]
return
soap:_add-multipart-to-response($boundary, string($attachment-name),
$attachment)
It uses these two functions:
(:~
: Protected function.
:
: Initializes response for a multipart body.
:
: @return $boundary The boundary id.
:
: @since release 1.0
:)
declare function soap:_init-multipart-response() as xs:string {
let $boundary := concat('-----------------------------',
xdmp:random())
let $content-type :=
xdmp:set-response-content-type(concat("multipart/form-data; boundary=",
$boundary))
return
$boundary
};
(:~
: Protected function.
:
: Adds a part to the multipart response body.
:
: @return $body-part The part to be added to the response.
:
: @since release 1.0
:)
declare function soap:_add-multipart-to-response($boundary as xs:string,
$part-name as xs:string, $part as item()*) as item()* {
concat(
$boundary, '
Content-Disposition: form-data; name="',
$part-name,
'"
'
),
$part
};
Kind regards,
Geert
Van: [email protected]
[mailto:[email protected]] Namens Raghu
Verzonden: donderdag 7 april 2011 9:17
Aan: [email protected]
Onderwerp: [MarkLogic Dev General] sending an xml and pdf in a single response
Hi,
I have an xml which contains the information about a pdf which is also
stored as a binary file in the same ML db as the xml. Now I need to send both
the xml and pdf in a single response and should be able to retrieve them
separately in Java using HttpClient. How do I do that? Can I send it as a
multipart response?
Thanks in advance
Raghu
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general