Ver Mensaje Individual
  #5 (permalink)  
Antiguo 14/01/2015, 04:57
daviffg
 
Fecha de Ingreso: enero-2015
Mensajes: 7
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Escapar caracter "\" de una ruta recuperada de BBDD

Hola de nuevo,

Eso es, como comentas el enlace tiene backslashes en lugar de la barra normal porque se trata de un recurso compartido, (en este caso una aplicación web) accesible desde la máquina desde la que se desea acceder.

Lo he probado, pero no me funciona. Da este error:

Código:
GRAVE: Error compiling file: /C:/Tomcat5.0.28/work/Catalina/localhost/esportal//org/apache/jsp/apps/netportal/default_/shared/skin/page/labo\pageheader_jsp.java     [javac] Compiling 1 source file

C:\Tomcat5.0.28\work\Catalina\localhost\esportal\org\apache\jsp\apps\netportal\default_\shared\skin\page\labo\pageheader_jsp.java:2045: replace(char,char) in java.lang.String cannot be applied to (java.lang.String,java.lang.String)
      out.print(link.replace("\\", "\\\\"));
He probado también metiendo comillas simples en el replace, pero también da error:

Código:
GRAVE: Error compiling file: /C:/Tomcat5.0.28/work/Catalina/localhost/esportal//org/apache/jsp/apps/netportal/default_/shared/skin/page/labo\pageheader_jsp.java     [javac] Compiling 1 source file

C:\Tomcat5.0.28\work\Catalina\localhost\esportal\org\apache\jsp\apps\netportal\default_\shared\skin\page\labo\pageheader_jsp.java:2045: unclosed character literal
      out.print(link.replace('\\', '\\\\'));
                                   ^
C:\Tomcat5.0.28\work\Catalina\localhost\esportal\org\apache\jsp\apps\netportal\default_\shared\skin\page\labo\pageheader_jsp.java:2045: illegal character: \92
      out.print(link.replace('\\', '\\\\'));
                                      ^
C:\Tomcat5.0.28\work\Catalina\localhost\esportal\org\apache\jsp\apps\netportal\default_\shared\skin\page\labo\pageheader_jsp.java:2045: illegal character: \92
      out.print(link.replace('\\', '\\\\'));
                                       ^
C:\Tomcat5.0.28\work\Catalina\localhost\esportal\org\apache\jsp\apps\netportal\default_\shared\skin\page\labo\pageheader_jsp.java:2045: unclosed character literal
      out.print(link.replace('\\', '\\\\'));
                                        ^
C:\Tomcat5.0.28\work\Catalina\localhost\esportal\org\apache\jsp\apps\netportal\default_\shared\skin\page\labo\pageheader_jsp.java:2045: ')' expected
      out.print(link.replace('\\', '\\\\'));
También he probado con replaceAll
var link = '<%=link.replaceAll("\\", "\\\\")%>';
Y en este caso el error es de javascript, aunque es poco aclarativo, dice que se esperaba un objeto.


Muchas gracias!!

Última edición por daviffg; 14/01/2015 a las 05:05 Razón: Más datos