Hi,
I have problem when closing session. The progblem is IoSession close method
wich close
session immediately. It seams like session is closed even write buffer is no
emty.
Is there any solution to close session after writing all data to a client.
Thanks for any help.
P.S
This is snippet of code :
WriteFuture future =
session.write(transformator.transform(context.getResponse().getParameters()));
//uzimanje terminala.
//future.addListener(new IoFutureListener<IoFuture>(){
future.addListener(new IoFutureListener(){
@Override
public void operationComplete(IoFuture ioFuture) {
try{
WriteFuture future = (WriteFuture)ioFuture;
//provrad da li su podaci poslati terminalu.
if (!future.isWritten() ){
log.info("podaci nisu poslati terminalu
"+context.getRequest().getString(TerminalKeys.TERMINAL_SERIAL_NUMBER));
//provera da li je doslo do greske pri slanju
odgovora.
Throwable t = null;//future.getException();
if (t != null){
log.error("Greska u slanju odgovora
terminalu",t);
}
}else{
//TODO sta ako je seriaol number null.
log.info("podaci su poslati terminalu
"+context.getRequest().getString(TerminalKeys.TERMINAL_SERIAL_NUMBER));
}
}catch(Throwable t){
log.error("Greska ", t);
}finally{
//zatvaranje konekcije.
session.close();
}
}});