[RESOLVIDO] Problema com Marge

Ola,

Estou trabalhando com conexão Blueetooth utilizando o Marge. Construi um chat para enviar mensagens de texto entre dois celulares e funcionou perfeitamente.
O problema é quando tento enviar uma quantidade grande de texto, por algum motivo, o marge não envia o texto todo.

Por exemplo quando tento enviar a string
CAB#0#1#0#25/02/2011 18:00#25/02/2011 18:07#4150#572943#1%CAB#0#1#0#25/02/2011 17:00#25/02/2011 17:3#4150#572943#0

O outro celular recebe somente:
CAB#0#1#0#25/02/2011 18:00#25/02/2011 18:07#4150

Existe alguma restrição no tamanho da string a ser enviada pelo Marge?

Estou usando dois celulares Nokia 3120 Classic no teste.

Se alguém tive alguma luz serei grato.

Abraços

Por que usar marge, eu fiz uma chat q suporta mais de duas pessoas sem usar marge e nao vi nenhum probleama se quiser posso te passar um codigo rapido e simples de conexao bluetooth servidor-cliente.
E quantos caracters tem sua string porque o meu ja enviei ate 64.

Ola Antonio,

Eu só fiz o chat para aprender como utilizar o Marge.

Agora estou desenvolvendo outro sistema que armazena dados em um RMS e algumas vezes será necessário enviar os dados que estiverem gravados no RMS para outro celular. Foi neste caso que identifiquei o problema.

Mas gostaria sim de receber seu código para fazer testes com outros meios de enviar os dados que não seja o Marge.
O teste que fiz tinha aproximadamente 115 caracteres mas é bem provavel que a aplicação envie quantidade maiores.

Servidor

public void runServer(){
new Thread(){
public void run(){
try{
StreamConnectionNotifier notfier=(StreamConnectionNotifier)Connector.open("btspp://localhost:12345");//pode trocar 12345
StreamConnection conn=notifier.acceptAndOpen();
DataInputStream in=conn.openDataInputStream();
DataOutputStream os=conn.openDataOutputStream();
os.writeUTF("ola");
os.flush();
System.out.print(in.readUTF());
}catch(Exception e){
ex.printStackTrace();
}
}
}.start();
}

Cliente

public void runCliente(){
new Thread(){
public void run(){
try{
LocalDevice local=LocalDevice.getLocalDevice();
DiscoveryAgent agent=local.getDiscoveryAgent();
String conURL=agent.selectService(new UUID("12345",false),ServiceRecord.NOAUTHENTICATE_NOENCRYPT,false);
if(connURL!=null){
StreamConnection conn=notifier.acceptAndOpen();
DataInputStream in=conn.openDataInputStream();
DataOutputStream os=conn.openDataOutputStream();
os.writeUTF("ola");
os.flush();
System.out.print(in.readUTF());
}else{
//Nada encontrado
}

}catch(Exception e){
ex.printStackTrace();
}
}
}.start();
}

Obrigado.
Infelizmente terei mesmo que deixar de usar o Marge e usar outro caminho pois o erro continua.

[quote=AntonioDiego]Servidor

public void runServer(){
new Thread(){
public void run(){
try{
StreamConnectionNotifier notfier=(StreamConnectionNotifier)Connector.open("btspp://localhost:12345");//pode trocar 12345
StreamConnection conn=notifier.acceptAndOpen();
DataInputStream in=conn.openDataInputStream();
DataOutputStream os=conn.openDataOutputStream();
os.writeUTF("ola");
os.flush();
System.out.print(in.readUTF());
}catch(Exception e){
ex.printStackTrace();
}
}
}.start();
}

Cliente

[code]
public void runCliente(){
new Thread(){
public void run(){
try{
LocalDevice local=LocalDevice.getLocalDevice();
DiscoveryAgent agent=local.getDiscoveryAgent();
String conURL=agent.selectService(new UUID(“12345”,false),ServiceRecord.NOAUTHENTICATE_NOENCRYPT,false);
if(connURL!=null){
StreamConnection conn=notifier.acceptAndOpen();//Na verdade é StreamConnection conn=Connector.open(connURL);
DataInputStream in=conn.openDataInputStream();
DataOutputStream os=conn.openDataOutputStream();
os.writeUTF(“ola”);
os.flush();
System.out.print(in.readUTF());
}else{
//Nada encontrado
}

}catch(Exception e){
ex.printStackTrace();
}
}
}.start();
}
[/code][/quote]