Boa noite pessoal!
Estou fazendo um contador de acessos com validade de 12 horas (cookie).
Quando o cookie perder a validade, entao leio um arquivo texto e o incremento.
Mas quando abro o arquivo, nada eh gravado, mas consigo ler o arquivo q ja esta criado.
Ja tente com arquivo texto e com arquivo .properties
Alguma luz no fundo do tunel???
Codigo (usando properties):
<jsp:useBean class="configuracoes.Configuracoes" id="configu" scope="page" />
String cookieName = "xxx";
Cookie listaPossiveisCookies[] = request.getCookies();
Cookie cookieJSP = null;
if ( listaPossiveisCookies != null )
{
//quando não existe cookies associados o método getCookies() retorna um valor null
int numCookies = listaPossiveisCookies.length;
for (int i = 0 ; i < numCookies ; ++i)
{
if (listaPossiveisCookies[i].getName().equals(cookieName)) //procura pelo cookie
{
cookieJSP = listaPossiveisCookies[i];
break;
}
}
}
if ( cookieJSP == null )
{
Cookie z = new Cookie("xxx", "presente" );
z.setMaxAge(1 * 24 * 60 * 60 / 2); //12 horas
z.setSecure( false );
z.setVersion( 0 );
response.addCookie( z );
configu.setArquivo( "Visitas.properties" );
configu.setPropriedade( "Numero.Visitas", "2" );
//Grava mais um no arquivo de visitas
//out.println("mais uma visita");
}
Codigo do setPropriedade
try
{
props.load(Configuracoes.class.getResourceAsStream( getArquivo() ));
props.setProperty( propriedade, valor );
FileOutputStream out = new FileOutputStream( getArquivo() );
props.store(out, "---");
out.close();
}
catch( Exception e )
{
e.printStackTrace();
}