Eu acho que voce resolve debugando a aplicacao. Para que na hora que chama o metodo Save, o objeto que era para ser do tipo Paciente esta nulo.
Tem como colocar um pedacinho do codigo fonte ae? On 14 jun, 04:04, Rodrigo Valentim <[email protected]> wrote: > Mário, > > Obrigado pela resposta mas infelizmente não resolveu. > Deu o mesmo erro! > > Segue classe AS3 > > * > > package* com.JavaFlex.view.entity { > [RemoveClass(alias=*"com.JavaFlex.model.entity.Paciente"*)] > [*Bindable*] > *public* *class* Paciente { > * public* *var* CdPaciente:Number; > *public* *var* NmPaciente:String; > > } > } > > Algo me diz que a configuração que fiz (já olhei milhoes de vezes) não está > correta... digo isso por que existe uma consulta que gera o resultado para o > Grid e os valores não estão sendo jogados lá (o grid fica como se tivesse > uima linha em branco, se eu inserir 3 linhas no banco, a rotina vai gerar 3 > linhas em branco no grid) > > 2009/6/14 Mário Júnior <[email protected]> > > > > > opa. > > a msg de erro é clara:* > > > "... Cannot invoke method 'save'. The expected argument types are > > (com.JavaFlex.model.entity.* *Paciente) but the supplied types were > > (flex.messaging.io.amf.**ASObject) and converted to (null). ..."* > > > Seu método "save" está esperando um objeto do tipo Paciente como argumento, > > mas o BlazeDS passou um ASObject para seu método. Isso acontece quando o > > BlazeDS não sabe qual é o tipo do objeto que está vindo do flex. Você > > precisa "dizer" qual o tipo do seu objeto no Flex que corresponde ao objeto > > em java, e isso é feito pela Metadata > > [RemoteClass(alias="seu.objeto.java")]. > > > Então.. na sua classe AS3, que representa o objeto paciente, vc coloca: > > > [RemoteClass(alias="com.JavaFlex.model.entity.Paciente")] > > public class PacienteAS3QualquerCoisaPqAquiNaoImportaONomeWhatever { > > ... > > } > > > Simples assim. Isso é q chamamos de "mapeamento de objetos". > > > Bons estudos. > > > 2009/6/13 Rodrigo Valentim <[email protected]> > > > Pessoal, > >> Estou com um probleminha na integração entre java e flex usando o blazeDS > > >> Estou com o seguinte erro e não consigo descobrir onde pode ser... já fiz > >> milhares de consultas na interente e resolvi pedir um help básico! > > >> estou usando o plugin + eclipse + spring + blazeds + hibernate + mysql > >> (isso tudo!! eta trabalheira!) > > >> segue o erro.... e Obrigado ! :P > > >> [BlazeDS]06/13/2009 [ERROR] [Message.General] Exception when invoking > >> service 'remoting-service': flex.messaging.MessageException: Cannot invoke > >> method 'save'. The expected argument types are > >> (com.JavaFlex.model.entity.Paciente) but the supplied types were > >> (flex.messaging.io.amf.ASObject) and converted to (null). > >> incomingMessage: Flex Message (flex.messaging.messages.RemotingMessage) > >> operation = save > >> clientId = A7947876-BE08-8DDE-ECD1-2C439713E75F > >> destination = PacienteService > >> messageId = 90794C87-17C8-F298-36CF-DAF6D6D47203 > >> timestamp = 1244919158484 > >> timeToLive = 0 > >> body = null > >> hdr(DSEndpoint) = channel-amf > >> hdr(DSId) = A79477DC-EF1E-F746-C93F-9D06A1A41FA4 > >> Exception: flex.messaging.MessageException: Cannot invoke method 'save'. > >> The expected argument types are (com.JavaFlex.model.entity.Paciente) but > >> the > >> supplied types were (flex.messaging.io.amf.ASObject) and converted to > >> (null). > >> at > >> flex.messaging.util.MethodMatcher.methodNotFound(MethodMatcher.java:355) > >> at flex.messaging.util.MethodMatcher.getMethod(MethodMatcher.java:163) > >> at > >> flex.messaging.services.remoting.adapters.JavaAdapter.invoke(JavaAdapter.ja > >> va:420) > >> at > >> flex.messaging.services.RemotingService.serviceMessage(RemotingService.java > >> :183) > >> at > >> flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1503) > >> at > >> flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.j > >> ava:884) > >> at > >> flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter > >> .java:121) > >> at flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158) > >> at > >> flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:44) > >> at > >> flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.j > >> ava:67) > >> at > >> flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter > >> .java:146) > >> at > >> flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:278 > >> ) > >> at > >> flex.messaging.MessageBrokerServlet.service(MessageBrokerServlet.java:322) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > >> at > >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio > >> nFilterChain.java:290) > >> at > >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC > >> hain.java:206) > >> at > >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.j > >> ava:233) > >> at > >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.j > >> ava:191) > >> at > >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:12 > >> 8) > >> at > >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:10 > >> 2) > >> at > >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.jav > >> a:109) > >> at > >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > >> at > >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) > >> at > >> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Htt > >> p11Protocol.java:583) > >> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > >> at java.lang.Thread.run(Unknown Source) > >> Caused by: flex.messaging.io.amf.translator.TranslationException: Cannot > >> convert type flex.messaging.io.amf.ASObject with remote type specified as > >> 'null' to an instance of class com.JavaFlex.model.entity.Paciente > >> at > >> flex.messaging.io.amf.translator.decoder.DecoderFactory.invalidType(Decoder > >> Factory.java:369) > >> at > >> flex.messaging.io.amf.translator.decoder.DecoderFactory.getDecoder(DecoderF > >> actory.java:172) > >> at > >> flex.messaging.io.amf.translator.ASTranslator.convert(ASTranslator.java:69) > >> at > >> flex.messaging.io.Java15TypeMarshaller.convert(Java15TypeMarshaller.java:71 > >> ) > >> at flex.messaging.util.MethodMatcher.convertParams(MethodMatcher.java:211) > >> at flex.messaging.util.MethodMatcher.getMethod(MethodMatcher.java:132) > >> ... 24 more > > >> -- > >> Atenciosamente, > >> Rodrigo Valentim > > > -- > > Mário Júnior > > Programador Java / Adobe Flex > >http://blog.mariojunior.com > > -- > Atenciosamente, > Rodrigo Valentim --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
