Mascarar endereço

Pessoal uma ajuda

Tenho uma pagina jsp nem existe uma link que abre um arquivo

<'a href=“306622_<%=tx_login%>.exe”>teste

queria mascarar o endereço, pois ele ele vai aparecer no browser e outro pessoa pode mudar e ativar outro usuario

Sinceramente, tentei mas não consegui entender nada.

esse link na verdade abri um arquivo xml

a href="/shared/files/Tiss/download/sp/306622_<%=tx_login%>.xml">Download da chave de ativação

ou seja na hora que eu clicar no link ele abrirá esse arquivo no proprio browser:

http://www.meusite.com.br/shared/files/Tiss/download/sp/306622_5831.xml

se o cara quiser mudar o tx_login no browser ele pode ativar a conta de outro usuario

entendeu?

ja pensou em fazer em java script?

ficaria mais o menos assim:


<a href="#" onclick="window.open('link.xml', 'janela', ' location=no')"/>

se eu nao mi engano o location=no desabilita a barra de enderecos, se nao for o location procura no google sobre a funcao javascript window.open que vc vai descobrir qual a propriedade certa.

isso ajuda?

Cria um servlet que retorna o xml.

Exemplo:

[code]package app;

public class ChaveAtivacaoServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res){
String login = //obtem esse tal de tx_login

  File arq = new File(getServletContext().getRealPath("/shared/files/Tiss/download/sp/306622_"+login+".xml"));

  res.setContentType("text/xml");
  res.setHeader("Content-Disposition", "attachment; filename=chave_ativacao.xml");

  OutputStream out = res.getOutputStream();

  InputStream in = new FileInputStream(arq);
 
  int b;

  while((b = in.read())>-1){
     out.write(b);         
  }

  in.close();
  out.close();

}
}[/code]

web.xml

[code]
ChaveAtivacao
app.ChaveAtivacaoServlet

ChaveAtivacao /chave_ativacao.xml [/code]
<a href="/chave_ativacao.xml">Download da chave de ativação</a>

jairelton,

que massa nem sabia que dava de mapear servlets desse jeito, a duvida não é minha mas essa solução é muito boa.

valew

Boa dica, o url-pattern pode ser mapeado para qualquer path.

Esse /chave_ativacao.xml significa que ele vai gerar esse arquivo dinamicamente é isso?

Significa que ao chamar a url /chave_ativacao.xml, você estará chamando o servlet, que poderia fazer qualquer coisa, mas que nesse caso está lendo um arquivo e escrevendo na resposta.

pow… blz 100% entendido.