I am not seeing the bug where a GET is being used instead of a POST, though, to the back-end server, though.
I'm working on a patch to make the server proxy's XML handling less picky. Since the XML is being parsed on the server, any violations of the XML spec are unfortunately flagged as errors, even if the Flash XML parser might be more lenient and let them slide.
I am planning to modify the server proxy so that it does not parse the XML at all on the server, but passes it through as a byte stream directly to the client. This would be a simple matter except for the fact that we try to make up for Flash's deficient HTTP handling by wrapping the back-end data with some elements which contain the HTTP response headers from the back-end. This forces us to do some groveling over the back-end XML in order to find and move any <?xml ..?> declaration to the start of our wrapped result. I am planning to put in an optimization so that if the client did not request HTTP header info, the server can just pass the XML data back verbatim as a byte stream.
On 3/28/06, James Howe <[EMAIL PROTECTED]> wrote:
Yes, I noticed the same error in my debug window. Didn't get this sort of
error in 3.1.1. I'm also confused by the error message itself. I don't
see anything wrong with my XML. I also noticed that even though I set the
header to be application/xml, the actual header was changed to
application/x-www-form-urlencoded. There has to be a simple way to POST
straight XML from the client to the server but with the 3.2 release I'm no
longer sure how to do it.
On Tue, 28 Mar 2006 07:53:05 -0500, <[EMAIL PROTECTED]> wrote:
>
> but why when i run the application below i have this messages
> ERROR: data conversion error for
> http://10.172.69.155:8080/my-laszlo-webapp/command?lzpostbody=%CdsNAN.000000%CfooNAN.000000%Cbar
> NaNdNAN%22NAN.000000NAN.000000%CNAN.000000fooNAN.000000%CNAN.000000dsNAN.000000:
> Parsing XML: only whitespace content allowed before start tag and not n
> (position: START_DOCUMENT seen n... @1:1)
>
>
> ???
>
> seems use GET instead POST
>
>
> -----Messaggio originale-----
> Da: [EMAIL PROTECTED] per conto di James Howe
> Inviato: mar 28/03/2006 0.00
> A: Henry Minsky
> Cc: [email protected]
> Oggetto: Re: [Laszlo-user] Change in the way lzpostbody works in 3.2?
> My application is running in proxied mode.
>
>
> On Mon, 27 Mar 2006 16:35:20 -0500, Henry Minsky <[EMAIL PROTECTED]>
> wrote:
>
>> I've seen a couple of reports about the lzpostbody behavior and the
>> 3.2release. I am looking at it now. Note that lzpostbody is only
>> supported for proxied data requests, it is not supported for SOLO data
>> requests at this
>> time (this was true in previous releases also, it's not a regression).
>>
>>
>>
>> On 3/27/06, James Howe < [EMAIL PROTECTED]> wrote:
>>>
>>> I'm trying to get my application to work under 3.2 and I've run into a
>>> problem with submitting information to my back end server via POST.
>>> Take
>>> this program, for example:
>>>
>>> <canvas debug="true">
>>> <dataset name="ds">
>>> <foo><bar id="25030"/></foo>
>>> </dataset>
>>> <dataset name="updater" type="http"/>
>>> <view>
>>> <button Me
>>> <method name="doit">
>>> var pointer = ds.getPointer();
>>> updater.setSrc(" http://localhost/test/foo
>>> ");
>>> updater.setHeader("Content-Type",
>>> "application/xml");
>>> updater.setQueryType("POST");
>>> updater.setQueryParam("lzpostbody",
>>> pointer.serialize());
>>> updater.doRequest();
>>> </method>
>>> </button>
>>> </view>
>>> </canvas>
>>>
>>> I have a simple servlet which writes information to a log file based on
>>> the information contained in the request. When I run this program
>>> under
>>> 3.1.1, I get my XML content as the content of the request (I ask the
>>> request for the content length and then get an input stream on the
>>> request
>>> and read the content). Under 3.1.1, the content information is this:
>>>
>>> Content-Type: application/xml
>>> Content-Length: 41
>>> Content: <ds><foo><bar>Some Stuff</bar></foo></ds>
>>>
>>> However, when I run the same application under 3.2, the content is not
>>> retrievable via the input stream for the request, instead, the content
>>> is
>>> contained as a parameter value. My servlet produces the following
>>> information for the content:
>>>
>>> Content-Type: application/x-www-form-urlencoded;charset=UTF-8
>>> Content-Length: 37
>>> Content:
>>>
>>> Something obviously changed. If 3.2 has some improvement which
>>> corrects a
>>> defect in 3.1.1, I'm happy to make code changes to work with the new
>>> way
>>> of doing things. I've already had to do that with namespaces.
>>> Basically
>>> what I need to be able to do is execute a POST operation with arbitrary
>>> XML as the posted value. I'm not posting a form, I'm using a
>>> REST-style
>>> interaction where I want to POST some XML which is used to update a
>>> resource identified by the URL.
>>>
>>> Thanks!
>>>
>>> --
>>> James Howe
>>> _______________________________________________
>>> Laszlo-user mailing list
>>> [email protected]
>>> http://www.openlaszlo.org/mailman/listinfo/laszlo-user
>>>
>>
>>
>>
>> --
>> Henry Minsky
>> Software Architect
>> [EMAIL PROTECTED]
>
>
>
--
James Howe
_______________________________________________
Laszlo-user mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-user
--
Henry Minsky
Software Architect
[EMAIL PROTECTED]
_______________________________________________ Laszlo-user mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-user
