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