você mudou o parâmetro no método java. Atualizar_Cliente2(Cliente); ???

-- 
****************************************************
www.brunobg.com
[email protected]  (MSN & Skype)
blogflex.brunobg.com
@brunogrohs
(21) 9913-2397



Em 16 de outubro de 2010 16:15, Bruno Ribeiro <[email protected]>escreveu:

> Quando Eu faço isso, não salva, e é  me apresenta um erro.
> *Multiple markers at this line:
> -Atualizar_Cliente2Result
> -1067: Coerção implícita de um valor do tipo valueObjects:Cliente para um
> tipo mx.collections:ArrayCollection não relacionado.
>
> .
> *
> Em 16 de outubro de 2010 13:41, bruno bg <[email protected]> escreveu:
>
> poh, passa como parâmetro então somente o objeto CLIENTE,  vc tem o form
>> todo para edição dos campos.
>> Já está montando o objeto.  passa somente ele.  Não precisa passar o Array
>> de 1 só.
>> passa somente o objeto.
>>
>>             protected function atualizar_Cliente():void
>>             {
>> *                // dados = ArrayCollection([cliente]);
>>                 // Certifique-se que o objeto CLIENTE está atualizado, de
>> acordo com os campos (textInput) alterados !!
>> *
>>                 Atualizar_Cliente2Result.token =
>> Service_Cliente.Atualizar_Cliente2(*cliente*);
>>             }
>>
>> e no JAVA receba o objeto Cliente e l[a joga para o BD.
>>
>>
>>
>> --
>> ****************************************************
>> www.brunobg.com
>> [email protected]  (MSN & Skype)
>> blogflex.brunobg.com
>> @brunogrohs
>> (21) 9913-2397
>>
>>
>>
>> Em 16 de outubro de 2010 13:36, Bruno Ribeiro 
>> <[email protected]>escreveu:
>>
>> *Desculpa pela sequencia de email´s.
>>>
>>> Segue todo código..
>>> <?xml version="1.0" encoding="utf-8"?>
>>> <s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009";
>>>          xmlns:s="library://ns.adobe.com/flex/spark"
>>>          xmlns:mx="library://ns.adobe.com/flex/mx" width="1150"
>>> height="794" xmlns:services="services.*"
>>> xmlns:valueObjects="valueObjects.*">
>>>     <s:layout>
>>>         <s:HorizontalLayout/>
>>>     </s:layout>
>>>
>>>     <fx:Declarations>
>>>         <s:CallResponder id="Clientes" result="cliente =
>>> Clientes.lastResult[0] as Cliente"/>
>>>         <services:Cliente1 id="Service_Cliente"
>>> fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)"
>>> showBusyCursor="true"/>
>>>         <valueObjects:Cliente id="cliente"/>
>>>         <s:CallResponder id="Atualizar_Cliente2Result"/>
>>>         <!-- Place non-visual elements (e.g., services, value objects)
>>> here -->
>>>     </fx:Declarations>
>>>
>>>
>>>     <fx:Script>
>>>         <![CDATA[
>>>             import mx.collections.ArrayCollection;
>>>             import mx.controls.Alert;
>>>             import mx.events.FlexEvent;
>>>             import mx.managers.PopUpManager;
>>>             import mx.validators.EmailValidator;
>>>
>>>             public var dados:ArrayCollection;
>>>
>>>             protected function
>>> BuscarCliente(pCampo:String,pValor:String):void
>>>             {
>>>                 Clientes.token =
>>> Service_Cliente.ListarCliente(pCampo,pValor);
>>>             }
>>>
>>>             public function Popular_Dados():void
>>>             {
>>>                 BuscarCliente('id_cliente','49');
>>>
>>>             }
>>>
>>>             protected function atualizar_Cliente():void
>>>             {
>>>                 dados = ArrayCollection([cliente]);
>>>
>>>                 Atualizar_Cliente2Result.token =
>>> Service_Cliente.Atualizar_Cliente2(dados);
>>>             }
>>>
>>>         ]]>
>>>     </fx:Script>
>>>     <s:NavigatorContent  label="Principal" width="100%" height="100%"
>>> id="nvgtPrincipal" >
>>>         <s:Label text="id_cliente" x="5" y="10"/><s:TextInput
>>> text="{cliente.id_cliente}" x="5" y="25" width="52"/>
>>>         <s:Label text="nome" x="61" y="10"/><s:TextInput
>>> text="@{cliente.nome}" x="61" y="25" width="380"/>
>>>         <s:Label text="cpf_cnpj" x="448" y="10"/><s:TextInput
>>> text="@{cliente.cpf_cnpj}" x="447" y="25" width="164"/>
>>>         <!--
>>>             <s:Label text="data_nascimento" x="621" y="10"/><mx:DateField
>>> text="@{toString(cliente.data_nascimento)}" x="619" y="25"/>
>>>         -->
>>>         <s:Label text="cep" x="500" y="98"/><s:TextInput
>>> text="@{cliente.cep}" x="500" y="113"/>
>>>         <s:Label text="denominacao" x="10" y="53"/><s:TextInput
>>> text="@{cliente.denominacao}" x="10" y="69" width="427"/>
>>>         <s:Label text="numero" x="449" y="54"/><s:TextInput
>>> text="@{cliente.numero}" x="449" y="69" width="67"/>
>>>         <s:Label text="complemento" x="526" y="55"/><s:TextInput
>>> text="@{cliente.complemento}" x="523" y="68" width="226"/>
>>>         <s:Label text="cidade" x="3" y="100"/><s:TextInput
>>> text="@{cliente.cidade}" x="1" y="114" width="209"/>
>>>         <s:Label text="estado" x="223" y="101"/><s:TextInput
>>> text="@{cliente.estado}" x="223" y="114"/>
>>>         <s:Label text="uf" x="366" y="97"/> <s:TextInput
>>> text="@{cliente.uf}" x="361" y="115"/>
>>>
>>>         <s:Label text="ddi" x="8" y="152"/> <s:TextInput
>>> text="@{cliente.ddi}" x="5" y="162" width="73"/>
>>>         <s:Label text="ddd" x="91" y="147"/> <s:TextInput
>>> text="@{cliente.ddd}" x="88" y="162" width="76"/>
>>>         <s:Label text="numero_tel" x="175" y="141"/><s:TextInput
>>> text="@{cliente.numero_tel}" x="172" y="161"/>
>>>         <s:Label text="ramal" x="315" y="147"/><s:TextInput
>>> text="@{cliente.ramal}" x="307" y="164"/>
>>> <s:Label text="id_cliente_categoria" x="8" y="195"/><s:TextInput
>>> text="{cliente.id_cliente_categoria}" x="6" y="216"/>
>>>         <s:Button x="25" y="264" label="Popular Dados"
>>> click="Popular_Dados()"/>
>>>         <s:Button x="141" y="266" label="Altarar Dados"
>>> click="atualizar_Cliente()"/>
>>>     </s:NavigatorContent>
>>> </s:TitleWindow>
>>> *
>>>
>>> Em 16 de outubro de 2010 13:01, bruno bg <[email protected]> escreveu:
>>>
>>> parece que você está fazendo o CRUD direto no dataGrid !?!? é isso mesmo
>>>> ??
>>>> não é o recomendável, mas é possível sim fazer desse jeito.
>>>> O usual é enviar para o JAVA somente o objeto Cliente (contendo um só
>>>> cliente), e não uma lista de clientes, como você está criticando e 
>>>> validando
>>>> os campos.
>>>>
>>>> no seu exemplo vc criou um ArrayCollection protected e na verdade seria
>>>> melhor colocar como public e bindabled.
>>>> no seu result do ListarCliente() , "setar" o event.result no "dados";
>>>> no seu dataGrid =>dataProvider colocar esse "dados"
>>>>
>>>> abraço
>>>> --
>>>> ****************************************************
>>>> www.brunobg.com
>>>> [email protected]  (MSN & Skype)
>>>> blogflex.brunobg.com
>>>> @brunogrohs
>>>> (21) 9913-2397
>>>>
>>>>
>>>>
>>>> Em 16 de outubro de 2010 12:44, Bruno Ribeiro 
>>>> <[email protected]>escreveu:
>>>>
>>>>> Prezados,
>>>>>
>>>>>    Em minhas andanças, futucando em tutoriais, artigos, etc,  a
>>>>> integração java e flex, me deparei com uma situação que não sei se é
>>>>> possível.  Caso isso já tenha sito discutido no grupo, favor me apontar 
>>>>> como
>>>>> devo procurar por essa situação. Minha itenção não é pegar já pronto, mas
>>>>> não encontrei nada, ou talvez procurei errado.
>>>>>
>>>>> No java tenho minha classe cliente, que tem 2 métodos,
>>>>> listar_cliente  *public static List<Cliente> ListarCliente()*
>>>>>  e atualizar_cliente      *public static void
>>>>> Atualizar_Cliente(List<Cliente> Lista_CLiente)*
>>>>>
>>>>> No listar_cliente passo para o flex uma lista que consigo apresentar na
>>>>> grid.
>>>>> No método atualizar_cliente, no java Eu recebo um cliente, Tem como
>>>>> passar um array de cliente do Flex para Java?
>>>>>
>>>>>
>>>>>
>>>>> No Flex criei uma variável.
>>>>>       protected var dados:ArrayCollection = new
>>>>> ArrayCollection([cliente]);
>>>>>
>>>>> *    <fx:Declarations>
>>>>>              <s:CallResponder id="Clientes" result="cliente =
>>>>> Clientes.lastResult[0] as Cliente"/>
>>>>>             <services:Cliente1 id="Service_Cliente"
>>>>> fault="Alert.show(event.fault.faultString + '\n' + 
>>>>> event.fault.faultDetail)"
>>>>> showBusyCursor="true"/>
>>>>>             <valueObjects:Cliente id="cliente"/>
>>>>>             <s:CallResponder id="Atualizar_Cliente2Result"/>
>>>>>             <!-- Place non-visual elements (e.g., services, value
>>>>> objects) here -->
>>>>>     </fx:Declarations>
>>>>> *
>>>>>
>>>>> E depois que altero o valor de alguns campos, chamo o método
>>>>>             protected function atualizar_Cliente():void
>>>>>             {
>>>>>                 Atualizar_Cliente2Result.token =
>>>>> Service_Cliente.Atualizar_Cliente2(dados);
>>>>>             }
>>>>>
>>>>> Tem como pegar isso no Java? Isso é uma boa prática?
>>>>>
>>>>>
>>>>> VL,
>>>>>
>>>>>
>>>>> Bruno
>>>>>
>>>>>
>>>>>  --
>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>> [email protected]
>>>>> Para sair da lista, envie um email em branco para
>>>>> [email protected]
>>>>> Mais opções estão disponíveis em
>>>>> http://groups.google.com/group/flexdev
>>>>
>>>>
>>>>
>>>>
>>>>  --
>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>>> Para sair da lista, envie um email em branco para
>>>> [email protected]
>>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>>
>>>  --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>> Para sair da lista, envie um email em branco para
>>> [email protected]
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>
>>
>>  --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>
>
>  --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a