Hi Clem, Use the SecureAMFChannel on the client and the SecureAMFEndpoint at the server. Make sure your endpoint URL is correct (starts with "https://...).
Seth From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of gnu wolf Sent: Wednesday, June 18, 2008 5:14 PM To: [email protected] Subject: Re: [flexcoders] Help on error: Invalid AMFX packet. Content must start with an <amfx> node Hey Seth, I'm not getting anything from the response, no headers and no status code. Pretty weird. I had this request headers tho: POST /samples/messagebroker/http HTTP/1.1 Host: localhost:9400 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14 Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Content-type: application/xml Content-length: 653 It seems like it's still talking to the HTTP channel and not the AMF channel. If i'm using HTTPS, I should be talking to SecureAMFChannel, right? I already enable SSL in my blazeDS tomcat and use a self-signed keystore file. On Thu, Jun 19, 2008 at 7:50 AM, Seth Hodgson <[EMAIL PROTECTED]> wrote: Hey Clem, That raw request you're seeing is the client-side channel handshake with the server endpoint. This happens before any general messages/requests/data are shipped over the channel/endpoint connection. For some reason the response to this initial request isn't returning the server half of the handshake as valid AMFX. Do you see any other raw response info (say response headers and response status code) in addition to that odd body? Once this initial connect-time handshake is working, the SOAP request will be sent to the server where it'll be proxied through to the actual target SOAP endpoint. Seth From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of gnuwolf Sent: Wednesday, June 18, 2008 10:45 AM To: [email protected] Subject: RE: [flexcoders] Help on error: Invalid AMFX packet. Content must start with an <amfx> node Hi Seth, Thanks for replying. I'm creating a webservices client for Netsuite. The usual SOAP request for login operation would look something like this: <soapenv:Body> <platformMsgs:login xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:platformCore="urn:core_2008_1.platform.webservices.netsuite.com" xmlns:platformMsgs="urn:messages_2008_1.platform.webservices.netsuite.com"> <platformMsgs:passport> <platformCore:email>[EMAIL PROTECTED]</platformCore:email> <platformCore:password>mypassword</platformCore:password> <platformCore:account>724168</platformCore:account> </platformMsgs:passport> </platformMsgs:login> </soapenv:Body> Raw request from charles is this: <amfx ver="3" xmlns="http://www.macromedia.com/2005/amfx"> <body> <object type="flex.messaging.messages.CommandMessage"> <traits> <string>body</string> <string>clientId</string> <string>correlationId</string> <string>destination</string> <string>headers</string> <string>messageId</string> <string>operation</string> <string>timestamp</string> <string>timeToLive</string> </traits> <object> <traits/> </object> <null/> <string/> <string/> <object> <traits> <string>DSId</string> <string>DSMessagingVersion</string> </traits> <string>nil</string> <int>1</int> </object> <string>473AC219-432D-44B1-76AC-9CA3030ED6BA</string> <int>5</int> <int>0</int> <int>0</int> </object> </body> </amfx> Raw response was blank or some character like this: ________________________________________ Error from the flash debugger is this: [MessagingError message='Invalid AMFX packet. Content must start with an <amfx> node'] at mx.messaging.channels.amfx::AMFXDecoder$/decodePacket()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\amfx\AMFXDecoder.as:149] at mx.messaging.channels.amfx::AMFXDecoder/decode()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\amfx\AMFXDecoder.as:91] at mx.messaging.channels::HTTPChannel/decodePacket()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\HTTPChannel.as:539] at mx.messaging.channels::HTTPChannel/pingCompleteHandler()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\HTTPChannel.as:551] at ChannelRequestLoader/callEventCallback()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\HTTPChannel.as:1158] at ChannelRequestLoader/completeHandler()[E:\dev\3.0.x\frameworks\projects\rpc\src\mx\messaging\channels\HTTPChannel.as:1194] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flash.net::URLLoader/onComplete() I didn't touch services-config.xml tho. Do I need to edit the endpoint in the channel definition? Thanks. Cheers, Clem

