JSP não traz caminho completo do arquivo

4 respostas
R

Ola galera!!!

Estou tendo um problema que concerteza deve ser uma bobeira que estou fazendo…rsrsr…

Fiz uma aplicação em JSP na qual ele pega o caminho do arquivo, mais ele não traz o caminho do arquivo…bom acho q ai ja eh problema de HTML um exemplo:
O caminho eh C:\foto\img1.jpg ele so traz img1.jpg

Alguem ja viu um errinho assim!!!..

Codigo fonte:

<%   
       	 if(request.getParameter("file") != null){	 
		 SalvaFigura sf = new SalvaFigura();
		 sf.insereFigura(request.getParameter("file"));
		 }
		 
		 out.println(request.getParameter("file"));		 
  
%>

Valeu e q Deus abençõe a todos

4 Respostas

R

Galera acabei de ver o problema, deve ser HTML mesmo, pois ele so funciona no Internet Explorer.

Alguem pode me ajudar a funcionar no Firefox??

Codigo Completo

<%@page language="java"
        import="java.io.*"
        import="java.sql.*"
		import="programa.ConectaBD"
		import="programa.SalvaFigura"
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Documento sem t&iacute;tulo</title>

</head>

<body>
<%---------------------------------------------------------------------%>
<%   
       	 if(request.getParameter("file") != null){	 
		 SalvaFigura sf = new SalvaFigura();
		 sf.insereFigura(request.getParameter("file"));
		 }
		 
		 out.println(request.getParameter("file"));		 
  
%>


<%---------------------------------------------------------------------%>
<form action="teste.jsp" method="post" name="form1">
  <p>
    <input name="file" type="file" size="100" maxlength="100">
  </p>
  <p> 
    <input name="id" type="text" id="id">
  </p>
  <p>&nbsp;</p>
  <p>
    <input type="submit" name="Submit" value="Enviar">
  </p>
</form>
</body>
</html>
xgucax

Opa.
Eu não entendi. Você está usando um campo input de FILE para recuperar apenas o PATH do arquivo, é isso?
Bem, eu não sei se o input do tipo file gera o parâmetro no POST passando o PATH do arquivo. Creio que não, pois o que realmente interessa para ele é apenas o NOME.EXTENSÃO e os bytes do arquivo.
Um saída que eu vejo é você criar um campo oculto e atribuir um ID para o input do arquivo e, na chamada do botão, você submeter o formulário por uma chamada JavaScript.
Ex:

&lt;form action="teste.jsp" method="post" name="form1"&gt;
     &lt;input name="hidden_file" id="oculto" type="hidden"/&gt;
   <p>
     &lt;input id="arquivo" name="file" type="file" size="100" maxlength="100"/&gt;
   </p>
   <p> 
     &lt;input name="id" type="text" id="id"/&gt;
   </p>
   <p> </p>
   <p>
     &lt;input type="button" name="Submit" value="Enviar" onclick="submeteForm1()"&gt;
   </p>
 &lt;/form&gt;

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
FUNÇÃO JAVASCRIPT:

function submeteForm1(){
var campo_oculto = document.getElementById("oculto");
var campo_file = document.getElementById("arquivo");
campo_oculto.value = campo_file.value;
documento.form1.submit();
}

Espero ter ajudado
Boa sorte

R

Ola,

Cara eu o path que eu quero mesmo, so que se eu faço pelo IE da certo vem o Path completo, mais se for no Firefox vem apenas o nome do arquivo e a extensão…

Por que isso??!!

xgucax

Cada browser deve implmenetar do jeito que quer a criação das requisições http
E sendo isto um parâmetro, fica a critério do desenvolvedor, tendo em vista que ele realmente quer o NOME do arquivo e os bytes que o formam.

Vai ver o pessoal do Mozilla fez isso como um aspecto de segurança para os servidores que recebam as requisições não conheçam detalhes do sistema de arquivos do usuário

Criado 6 de janeiro de 2007
Ultima resposta 6 de jan. de 2007
Respostas 4
Participantes 2