Flex + Blase Erro: NetConnection.Call.Field: Http: Faild: url

1 resposta
Zenas

Olá Amigos,

Estou iniciando com flex, sendo que eu estou com o seguinte problema: consigo iniciar uma tela de login, mas quando clico no botão para se comunicar com um método java me é emitido o seguinte erro. NetConnection.Call.Failure: HTTP: Failed: url: “http://localhost:8080/WebContent/messageBroker/amf”, sendo que quando digito na url: http://localhost:8080/flex/messagebroker/amf, o site funciona, e me é apresentado a tela de login, para que quando eu clico no botão, ele direciona para esse link http://localhost:8080/WebContent/messageBroker/amf, alguém sabe como mudar essa configuração, abaixo está a configuração que eu fiz:

// classe java

package br.com.services;

import java.io.Serializable;

public class PersonalFinanceServices implements Serializable {

/**
 * 
 */
private static final long serialVersionUID = 7974542158595738426L;



public PersonalFinanceServices() {
	super();
	// TODO Auto-generated constructor stub
}


public String getTestLogin(String tiName, String tiPassword) {

	if (tiName.equals("ZENAS") && tiPassword.equals("123"))
		return "Bem vindo Zenas!";
	else
		return "Usuário ou Senha Inválidos!";

}

}

// mxml

<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx=“http://www.adobe.com/2006/mxml” layout=“absolute”>

<mx:Script>
	<![CDATA[
		import mx.controls.Alert;
		private function loginClickHandler(event:MouseEvent):void{
			
			financeService.testLogin( tiName.text, tiPassword.text );
			
		}
	]]>
</mx:Script>
<mx:RemoteObject id="financeService" destination="financeServices" showBusyCursor="true"
				 result="Alert.show(event.result.toString())" fault="Alert.show(event.fault.message)" />

<mx:Panel title="Login" id="loginPanel"
		  horizontalCenter="0" verticalCenter="0">
	
	<mx:Form>
		<mx:FormItem label="usuário:">
			<mx:TextInput id="tiName" />
		</mx:FormItem>
		<mx:FormItem label="senha:">
			<mx:TextInput id="tiPassword" displayAsPassword="true" />
		</mx:FormItem>
		<mx:FormItem>
			<mx:Button id="btLogin" label="logar" click="loginClickHandler(event)" />
		</mx:FormItem>
	</mx:Form>
	
</mx:Panel>

</mx:Application>

// remoting-config

<?xml version="1.0" encoding="UTF-8"?>

<adapters>
    <adapter-definition 
    	id="java-object" 
    	class="flex.messaging.services.remoting.adapters.JavaAdapter" 
    	default="true"/>
</adapters>

<default-channels>
    <channel ref="my-amf"/>
</default-channels>

<destination id="financeServices">
	<properties>
		<source>
			br.com.services.PersonalFinanceServices
		</source>
	</properties>
</destination>

Abraços a todos os que puderem ou tentarem me ajudar

1 Resposta

Zenas

Olá irmãos,

Consegui resolver o problema, por incrível que pareça, eu fiz as seguintes mudanças no arquivo [services-config.xml] que estava da seguinte forma abaixo:

<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
        <endpoint url="http://{server.name}:{server.port}/{context.root}

/messagebroker/amf" class=“flex.messaging.endpoints.AMFEndpoint”/>

<channel-definition id="my-secure-amf" class="mx.messaging.channels.SecureAMFChannel">
        <endpoint url="https://{server.name}:{server.port}/{context.root}

/messagebroker/amfsecure" class=“flex.messaging.endpoints.SecureAMFEndpoint”/>

false

<channel-definition id="my-polling-amf" class="mx.messaging.channels.AMFChannel">
        <endpoint url="http://{server.name}:{server.port}/{context.root}

/messagebroker/amfpolling" class=“flex.messaging.endpoints.AMFEndpoint”/>

true
4

e mudei os seguintes trechos de código

Obrigado a todos e espero ter ajudado a outros que estiverem iniciando com flex 4

Abraços

Criado 5 de março de 2011
Ultima resposta 5 de mar. de 2011
Respostas 1
Participantes 1