Olá novamente Anderson... Então cara, o aplicação FLEX (o swf final) está dentro do contexto da minha aplicação. ou seja dentro da WebApp chamada "AplicacaoFlexJava". O contexto do action chamado e do swf é o mesmo. O problema é quando eu coloco o bendito do "http://" dentro da propriedade URL do HTTPService. Ele acha que estou tentando acessar uma aplicação externa, não sei e por isso dá o problema.
O que eu fiz também foi criar um Servlet que tem o objetivo apenas de retransmitir a URL, só que para acessar o Servlet eu tinha que colocar o "http://192.168.0.1:8084/....", ou seja o caminho até o meu servlet e com isso acontecia o mesmo problema. Peguei então esse servlet e transformei em JSP, onde eu coloquei na URL "JSPProxy.jsp?url=http:// 192.168.0.1:8084/.....", daí funcionou. Porque, pelo que entendi, como coloco só a JSP ele procura no local onde está no contexto pela JSP, encontra e faz o redirecionamento ao action. Como eu disse, eu não entendi mesmo o porque desse erro, já que o swf e o action são do mesmo contexto, da mesma aplicação. E não estou utilizando o BlazeDS, eu cheguei a fazer um exemplo com ele, mas acabei nem utilizando. Só estou comentando sobre isso, porque aqui nesse post " http://groups.google.com.br/group/flexdev/browse_thread/thread/a73b3f1d3beb5f20 ", o Mário Júnior está falando justamente sobre Sessão Java + Flex. Estou utilizando a versão 1.2.9 do Struts. Cara, muito obrigado mesmo. E não sei o que está acontece, tipo, o swf e o action não teriam que se enchergar por estarem no mesmo contexto? Obrigado mais uma vez Anderson... Atenciosamente, Júnior On 30 out, 16:29, "Anderson Satriani" <[EMAIL PROTECTED]> wrote: > Ola Junior, > > Aparentemente esta certo, mas deixa eu ver se entendi sua arquitura: Vc tem > uma WebApp chamada "AplicacaoFlexJava", e nele contem Action Struts que > serve como chamadas de serviço para seu projeto Flex(no caso SWF), que esta > rodando em outro contexto (É isso mesmo?), pois como voçê comentou, ocorre a > violação de acesso ao recurso e por isso estais usando o > crossdomain.xml(nesse caso dentro da sua WebApp) para liberar esses acessos. > > Bom, a unica diferença eh que quando precisei utilizar o crossdomain.xml foi > um esquema parecido, so que acessei um Servlet ao invez de Actions Struts, > ja que se tratave de serviços simples(upload de imagens) pra nao ter que > subutilizar recursos. Entao tente fazer um teste com Servlet para ver se > funciona. > > Ah, nesse caso meu crossdomain.xml ficou assim: > > <?xml version="1.0??> > <cross-domain-policy> > <allow-access-from domain="*" /> > </cross-domain-policy> > > PS:So pra constar, qual versao do Struts estais usando? > > 2008/10/30 juniorgarcon <[EMAIL PROTECTED]> > > > > > > > Olá Anderson, tudo bem cara? > > Antes de mais nada queria agradecer aí pela atenção cara... rs... > > E o meu arquivo de crossdomain.xml eu fiz assim: > > <?xml version="1.0"?> > > <!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/ > > cross-domain-policy.dtd<http://www.adobe.com/xml/dtds/cross-domain-policy.dtd> > > "> > > <cross-domain-policy> > > <site-control permitted-cross-domain-policies="all"> > > <allow-access-from domain="*"> > > </allow-access-from> > > <allow-http-request-headers-from domain="*" to-ports="*"> > > </allow-http-request-headers-from> > > </site-control> > > </cross-domain-policy> > > > também tentei assim: > > > <?xml version="1.0"?> > > <!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/ > > cross-domain-policy.dtd<http://www.adobe.com/xml/dtds/cross-domain-policy.dtd> > > "> > > <cross-domain-policy> > > <allow-access-from domain="*" to-ports="*" /> > > </cross-domain-policy> > > > e assim: > > <?xml version="1.0"?> > > <!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/ > > cross-domain-policy.dtd<http://www.adobe.com/xml/dtds/cross-domain-policy.dtd> > > "> > > <cross-domain-policy> > > <allow-access-from domain="*" secure="false"/> > > </cross-domain-policy> > > > Mais não funcionou dos 3 jeitos, sempre dava o erro de segurança. Como > > eu disse, eu coloquei na raiz da minha aplicação ("http:// > > 192.168.0.1:8084/AplicacaoFlexJava/crossdomain.xml") e configurei no > > flex para acessar esse XML. > > > áh, só para informar: estou usando JAVA (Struts) + Flex + Apache > > Tomcat. > > > Obrigado mais uma vez aí, pessoal... E obrigado mesmo Anderson... > > > Abraços... > > > On 30 out, 14:50, "Anderson Satriani" <[EMAIL PROTECTED]> > > wrote: > > > Ola Júnior, > > > > Tem como vc postar o seu arquivo crossdomain.xml? Pra gente ver seu > > esquema > > > de acesso. > > > > 2008/10/30 juniorgarcon <[EMAIL PROTECTED]> > > > > > Olá Pessoal do fórum, tudo bem aí como todo mundo? Eu espero que sim. > > > > Boa tarde a todos. > > > > > Estou começando a desenvolver em Flex e acabei de finalizar minah > > > > primeira aplicação. Esta aplicação tem por objetivo exibir uma galeria > > > > de imagens e fornecer ferramentas de brilho e contraste para o > > > > usuário. Os caminhos das imagens a ser exibidas são enviados por uma > > > > aplicação JAVA já existente através de um arquivo XML. A aplicação > > > > Flex faz uma solicitação através de um HTTPService para o Java (action > > > > do Struts) onde é obtido o arquivo XML. > > > > Minha aplicação estava funcionando "bunitinha", funcionando da maneira > > > > que eu queria, até o momento em que resolvi testar pela rede > > > > (intranet) e internet então, o problema piora... rs > > > > Quando o HTTPService tenta acessar o action contido na minha > > > > aplicação, é exibida a seguinte mensagem: > > > > > Security Error Accessing URL > > > > faultCode:Channel.Security.Error faultString:'Security error accessing > > > > url' faultDetail:'Destination: DefaultHTTP' > > > > > Fui atrás de informações para a resolução deste problema. > > > > - Criei o arquo "crossdomain.xml", joguei na raiz da minha aplicação > > > > ("http://192.168.0.1:8084/AplicacaoFlexJava/crossdomain.xml") e > > > > configurei minha aplicação Flex da seguinte maneira, na função > > > > "init()": > > > > Security.allowDomain("*"); > > > > Security.loadPolicyFile("http://192.168.0.1:8084/AplicacaoFlexJava/ > > > > crossdomain.xml< > >http://192.168.0.1:8084/AplicacaoFlexJava/crossdomain.xml> > > > > "); > > > > E nada funcionou. > > > > > - Resolvi criar um servlet de proxy para ser acessado pelo flex, mas > > > > também não funcionou. > > > > - Modifiquei esse servlet para se tornar uma JSP e realizar o acesso > > > > ao meu action do struts. Eu consigo o acesso, fazendo uma atribuição : > > > > <mx:HTTPService url="JSPProxy.jsp?url=http://192.168.0.1:8084/ > > > > AplicacaoFlexJava/carregarDados.do< > >http://192.168.0.1:8084/AplicacaoFlexJava/carregarDados.do>" > > > > useProxy="false" ........ /> > > > > Isso funciona, mas tive que modificar o meu action que antes pegava os > > > > dados da sessão, pois chamando desta maneira acima as sessões parecem > > > > ser diferentes. É como se o SWF não estivesse no mesmo servidor que a > > > > aplicação. > > > > > Eu modifiquei e está funcionando mais ou menos da maneira que eu > > > > queria, consegui solucionar o problema, mas não consigo utilizar isso > > > > corretamente na web, principalmente em conexão HTTPS. > > > > > Gostaria muito da ajuda de vocês, não sei o que eu estou fazendo de > > > > errado com a configuração do crossdomain. E não era para eu conseguir > > > > acessar tranquilamente meu action do java?! TIpo, eu não poderia > > > > colocar na URL do HTTPService o caminho direto do action, sem precisar > > > > passar por um "proxy" ? ou até mesmo acessar o action do struts sem > > > > precisar informar o ip ne nada na configuração da URL, exemplo: > > > > <mx:HTTPService url="/carregarDados.do" useProxy="false" ..... /> > > > > > Pessoal, por favor, gostaria muito que me ajudassem, não sei o que > > > > fazer para resolver esse problema. > > > > > Muito obrigado desde já, por toda a ajuda que têem me dado. > > > > > Obrigado mesmo. > > > > > Abraços a todos. > > > > > Atenciosamente, > > > > > Júnior > > > > -- > > > Anderson Silveira > > > Desenvolvedor de Sotfware > > > Site:http://jsatriani.wordpress.com > > > MSN: [EMAIL PROTECTED] > > -- > Anderson Silveira > Desenvolvedor de Sotfware > Site:http://jsatriani.wordpress.com > MSN: [EMAIL PROTECTED] --~--~---------~--~----~------------~-------~--~----~ Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com 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 -~----------~----~----~----~------~----~------~--~---