Flex - 通过参数传递参数到Servlet的问题。 HttpService的

时间:2011-06-26 20:36:48

标签: java flex image servlets

我是Flex和使用HttpService从Flex客户端调用Java servlet的新手。我在传递一个值为Object

的参数时遇到了一些问题

以下是从网络摄像头捕获图像的flex代码:

            :
            var bitmapImageContainer:UIComponent = new UIComponent();
            bitmapData = new BitmapData(localVideo.width,localVideo.height);
            capturedImage = new Bitmap(bitmapData);
            bitmapImageContainer.addChild(capturedImage);
            addElement(bitmapImageContainer);
            :

             public function captureImage():void {      
                if (localVideo != null) {
                    bitmapData.draw(localVideo);
                    saveImage.enabled = true;
                }
             }

我正在尝试将捕获的图像发送到java servlet。 HttpService如下:

<fx:Declarations>
    <s:HTTPService id="service" url="http://localhost:8080/MyWebApp/CapturedImageSaver" result="resultHandler(event)" fault="faultHandler(event)" method="POST" showBusyCursor="true" resultFormat="text">
        <s:request xmlns="">
            <image>{bitmapData}</image>
            <hello>value</hello>
        </s:request>
    </s:HTTPService>
</fx:Declarations>  

问题

Q1。我应该将 bitmapData capturedImage 对象发送到servlet吗?

Q2。在服务器端(servlet),我需要从客户端转发收到的对象?

Q3。在服务器端(servlet),我只得到一个参数,即 hello 。为什么我没有得到第二个参数,即图像

2 个答案:

答案 0 :(得分:0)

不要使用内联参数,只需编码:

service.send({image:bitmapData,hello:value});

这应该有效,如果您的服务没有看到它,可能是配置错误。

答案 1 :(得分:0)

我没有测试过您的代码,但似乎您需要将BitmapData中的字节作为字节数组传递。这是转换的一个例子(你必须自己摘录)。

http://www.richardleggett.co.uk/blog/index.php/2006/08/11/getpixels

希望能帮到你。至于如何在服务器端解码,你需要将字节打包到正确类型的mime包装器中。