Para poder parsear un fichero XML desde javascript tenemos que hacer:
var xmlDoc;
function loadXML(archivoXML) {
if (window.ActiveXObject) {
//--- Creo un nuevo objeto de la librería Microsoft.XMLDOM que es la que se encarga
//--- en Internet Explorer de 'parsear' un archivo XML.
var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
data = archivoXML;//"http://google.es";//
xmlHttp.open("GET", data, false);
xmlHttp.send(archivoXML_2);
xmlDoc = xmlHttp.responseXML;
mostrarDatosIe();
} else {
if (document.implementation && document.implementation.createDocument) {
xmlDoc = document.implementation.createDocument("", "", null);
xmlDoc.load(archivoXML);
xmlDoc.onload = mostrarDatosFx;
} else {
alert("Su navegador no puede soportar este script");
}
}
}
function mostrarDatosFx() {
var listaParcelas = xmlDoc.getElementsByTagName("Parcela");
document.formLicencias.mapa_pdf.value = xmlDoc.getElementsByTagName("LicenciaUrbanistica")[0].getElementsByTagName("Plano").item(0).textContent;
}
function mostrarDatosIe() {
var listaParcelas = xmlDoc.getElementsByTagName("Parcela");
document.formLicencias.mapa_pdf.value = xmlDoc.getElementsByTagName("LicenciaUrbanistica")[0].getElementsByTagName("Plano").item(0).text;
}
miércoles, 26 de septiembre de 2007
Variables Globales con TOMCAT
Para poder tener variables de configuración en un proyecto web con TOMCAT debemos hacer:
añadir los diferentes parámetros al fichero web.xml
dir_ficherosXML
xml/
y luego en los diferentes servlets que usemos:
public void init(ServletConfig config) throws ServletException {
super.init(config);
dir_real = config.getServletContext().getRealPath("/");
dir_ficherosXML = dir_real+
config.getServletContext().getInitParameter("dir_ficherosXML");
}
Con esto ya tenemos variables como por ejemplo la dirección de tal o cual directorio sin que tengamos que cambiar el código fuente cada vez que hagamos una nueva instalación.
añadir los diferentes parámetros al fichero web.xml
y luego en los diferentes servlets que usemos:
public void init(ServletConfig config) throws ServletException {
super.init(config);
dir_real = config.getServletContext().getRealPath("/");
dir_ficherosXML = dir_real+
config.getServletContext().getInitParameter("dir_ficherosXML");
}
Con esto ya tenemos variables como por ejemplo la dirección de tal o cual directorio sin que tengamos que cambiar el código fuente cada vez que hagamos una nueva instalación.
martes, 8 de mayo de 2007
Instalación de un Oracle sobre Linux:
Los pasos que hay que seguir para la instalación de un servidor Oracle sobre una máquina Linux son:
1º.- Hacer espacio suficiente:
Para ello lo primero que debemos hacer es crear una nuava partición donde metamos la instalación y los datos de Oracle.
Si lo queremos hacer correctamente lo que deberiamos hacer es hacerlo por separado, pero dependerá del servidor que utilicemos y sus caracteristicas.
Para crear una nueva partición sobre Linux debemos utilizar el siguiente comando:
fdisk sdXXX
siendo sdXX el disco físico donde queremos realizar la partición, (para ver los discos disponibles podemos utilizar el comando df).
Una vez en fdisk podemos usar “m” para obtener la ayuda correspondiente, pero básicamente los pasos a seguir son:
a.- Crear la nueva partición (n).
b.- Asignarle un tipo (t).
c.- Escribir los datos en el sistema de ficheros (w).
Una vez creada la partición con fdisk debémos darle formato, para ello usamos la instrucción: mkfs con los siguientes parámetros:
mkfs –t ext3 /dev/ sdXXX1
Esto le dará formato al nuevo disco que hayamos creado, ahora solo nos quedará que se pueda montar de forma automática cada vez que arranquemos el sistema, para ello debemos añadir la siguiente línea al fichero fstab, que se encuentra en /etc.
/dev/ sdXXX1 / ext2 defaults 1 1
Una vez hecho esto ya tenemos el espacio necesario para la instalación de Oracle.
2º.- Bajamos Oracle Database.
Una vez que hemos hecho los prerrequisitos de espacio en disco duro, debemos asegurarnos que cumplimos con el resto de requisitos para ello podemos bajarnos de forma gratuita la última versión de Oracle desde la página de Oracle:
http://www.oracle.com/technology/software/products/database/oracle10g/index.html
3º.- Instalación del oracle:
Una vez descargado los archivos hay que seguir los pasos que se están en la documentación que viene con el cd.
Si seguimos todos los pasos y cumplimos los prerrequisitos no debería darnos problemas.
4º.- Automatizar el arranque de Oracle al iniciar el sistema:
Para debemos hacer lo siguiente:
a.- Modificar el fichero /etc/oratab para que tenga la siguiente forma:
# This file is used by ORACLE utilities. It is created by root.sh
# and updated by the Database Configuration Assistant when creating
# a database.
# A colon, ':', is used as the field terminator. A new line terminates
# the entry. Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
# $ORACLE_SID:$ORACLE_HOME::
#
# The first and second fields are the system identifier and home
# directory of the database respectively. The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
*:/oracle/app/product/10.1.0/Db_1:N
#SIGC:/oracle/app/product/10.1.0/Db_1:N
SIGC:/oracle/app/product/10.1.0/Db_1:Y
Este fichero se genera durante la instalación de Oracle.
b.- Crearnos un fichero oracle en /etc/init.d con el siguiente contenido:
#!/bin/bash
#
# Run-level Startup script for the Oracle Instance and Listener
#
# chkconfig: 345 93 15
# description: Startup/Shutdown Oracle listener and instance
ORA_HOME="/oracle/app/oracle/product/10.1.0/db_1"
ORA_OWNR="oracle"
# if the executables do not exist -- display error
if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
start)
## Oracle listener and instance startup
echo -n "Starting Oracle: "
# start TNS listener
su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl start"
# start database
su - $ORA_OWNR -c $ORA_HOME/bin/dbstart
touch /var/lock/subsys/oracle
# Arrancamos el Oias
#echo -n "Starting Oracle Application Server: "
#su - $ORA_OWNR -c "./arranca_ias.sh"
echo "OK"
;;
stop)
# Paramos el Oias
#echo -n "Shutdown Oracle Application Server"
#su - $ORA_OWNR -c "./para_ias.sh"
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
# stop TNS listener
su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl stop"
# stop database
su - $ORA_OWNR -c $ORA_HOME/bin/dbshut
rm -f /var/lock/subsys/oracle
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 start|stop|restart|reload"
exit 1
esac
exit 0
Es muy importante la línea que se encuentra comentada al principio: # chkconfig: 345 93 15 porque va a ser la que determine los parámetros de arranque (345) y su prioridad (93 15) al arrancarlos o matarlos.
Para poder incluirlo dentro del arranque del sistema debemos ejecutar:
chkconfig --add oracle
Donde oracle es el fichero que nos hemos creado antes (/etc/init.d/oracle).
5º.- Configuración de las conexiones desde el exterior:
Para poder realizar las conexiones desde el exterior hay que modificar el fichero tnsnames.ora en el caso de que no lo hay hecho automáticamente para que tenga el siguiente formato:
# tnsnames.ora Network Configuration File: /oracle/app/product/10.1.0/Db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
SIGC= (DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=
(PROTOCOL=TCP)
(HOST=localhost.localdomain)
(PORT=1521)
)
)
(CONNECT_DATA=
(SID=sigc)
(SERVER=DEDICATED)
)
)
#EXTPROC_CONNECTION_DATA =
# (DESCRIPTION =
# (ADDRESS_LIST =
# (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
# )
# (CONNECT_DATA =
# (SID = PLSExtProc)
# (PRESENTATION = RO)
# )
# )
Corolario: Comandos de Oracle
emctl status dbconsole nos muestra el estado de la consola de oracle, pero debemos tenerlo apagado por defecto porque consume muchos recursos.
lsnrctl listener de oracle, que es donde se configura el acceso desde la red de nuestro servidor, para que funcione, por derfecto tiene un fichero de configuración llamado listener.ora donde se pueden configurar las restricciones de acceso a nuestro servidor, nosostros en principio simplemente lo debemos quitar.
sqlplus programa de oracle que nos permite el acceso a la base de datos con sql, también desde aquí podemos arrancar y parar las difernetes instancias de la Base de Datos mediante shut inmediate y startup.
Si queremos entrar como dba debemos ejecutar: <>
dbca Data Base Control Administration, sirve para crear/modificar/borrar instancias de una Base de Datos.
1º.- Hacer espacio suficiente:
Para ello lo primero que debemos hacer es crear una nuava partición donde metamos la instalación y los datos de Oracle.
Si lo queremos hacer correctamente lo que deberiamos hacer es hacerlo por separado, pero dependerá del servidor que utilicemos y sus caracteristicas.
Para crear una nueva partición sobre Linux debemos utilizar el siguiente comando:
fdisk sdXXX
siendo sdXX el disco físico donde queremos realizar la partición, (para ver los discos disponibles podemos utilizar el comando df).
Una vez en fdisk podemos usar “m” para obtener la ayuda correspondiente, pero básicamente los pasos a seguir son:
a.- Crear la nueva partición (n).
b.- Asignarle un tipo (t).
c.- Escribir los datos en el sistema de ficheros (w).
Una vez creada la partición con fdisk debémos darle formato, para ello usamos la instrucción: mkfs con los siguientes parámetros:
mkfs –t ext3 /dev/ sdXXX1
Esto le dará formato al nuevo disco que hayamos creado, ahora solo nos quedará que se pueda montar de forma automática cada vez que arranquemos el sistema, para ello debemos añadir la siguiente línea al fichero fstab, que se encuentra en /etc.
/dev/ sdXXX1 /
Una vez hecho esto ya tenemos el espacio necesario para la instalación de Oracle.
2º.- Bajamos Oracle Database.
Una vez que hemos hecho los prerrequisitos de espacio en disco duro, debemos asegurarnos que cumplimos con el resto de requisitos para ello podemos bajarnos de forma gratuita la última versión de Oracle desde la página de Oracle:
http://www.oracle.com/technology/software/products/database/oracle10g/index.html
3º.- Instalación del oracle:
Una vez descargado los archivos hay que seguir los pasos que se están en la documentación que viene con el cd.
Si seguimos todos los pasos y cumplimos los prerrequisitos no debería darnos problemas.
4º.- Automatizar el arranque de Oracle al iniciar el sistema:
Para debemos hacer lo siguiente:
a.- Modificar el fichero /etc/oratab para que tenga la siguiente forma:
# This file is used by ORACLE utilities. It is created by root.sh
# and updated by the Database Configuration Assistant when creating
# a database.
# A colon, ':', is used as the field terminator. A new line terminates
# the entry. Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
# $ORACLE_SID:$ORACLE_HOME:
#
# The first and second fields are the system identifier and home
# directory of the database respectively. The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
*:/oracle/app/product/10.1.0/Db_1:N
#SIGC:/oracle/app/product/10.1.0/Db_1:N
SIGC:/oracle/app/product/10.1.0/Db_1:Y
Este fichero se genera durante la instalación de Oracle.
b.- Crearnos un fichero oracle en /etc/init.d con el siguiente contenido:
#!/bin/bash
#
# Run-level Startup script for the Oracle Instance and Listener
#
# chkconfig: 345 93 15
# description: Startup/Shutdown Oracle listener and instance
ORA_HOME="/oracle/app/oracle/product/10.1.0/db_1"
ORA_OWNR="oracle"
# if the executables do not exist -- display error
if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
start)
## Oracle listener and instance startup
echo -n "Starting Oracle: "
# start TNS listener
su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl start"
# start database
su - $ORA_OWNR -c $ORA_HOME/bin/dbstart
touch /var/lock/subsys/oracle
# Arrancamos el Oias
#echo -n "Starting Oracle Application Server: "
#su - $ORA_OWNR -c "./arranca_ias.sh"
echo "OK"
;;
stop)
# Paramos el Oias
#echo -n "Shutdown Oracle Application Server"
#su - $ORA_OWNR -c "./para_ias.sh"
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
# stop TNS listener
su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl stop"
# stop database
su - $ORA_OWNR -c $ORA_HOME/bin/dbshut
rm -f /var/lock/subsys/oracle
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 start|stop|restart|reload"
exit 1
esac
exit 0
Es muy importante la línea que se encuentra comentada al principio: # chkconfig: 345 93 15 porque va a ser la que determine los parámetros de arranque (345) y su prioridad (93 15) al arrancarlos o matarlos.
Para poder incluirlo dentro del arranque del sistema debemos ejecutar:
chkconfig --add oracle
Donde oracle es el fichero que nos hemos creado antes (/etc/init.d/oracle).
5º.- Configuración de las conexiones desde el exterior:
Para poder realizar las conexiones desde el exterior hay que modificar el fichero tnsnames.ora en el caso de que no lo hay hecho automáticamente para que tenga el siguiente formato:
# tnsnames.ora Network Configuration File: /oracle/app/product/10.1.0/Db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
SIGC= (DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=
(PROTOCOL=TCP)
(HOST=localhost.localdomain)
(PORT=1521)
)
)
(CONNECT_DATA=
(SID=sigc)
(SERVER=DEDICATED)
)
)
#EXTPROC_CONNECTION_DATA =
# (DESCRIPTION =
# (ADDRESS_LIST =
# (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
# )
# (CONNECT_DATA =
# (SID = PLSExtProc)
# (PRESENTATION = RO)
# )
# )
Corolario: Comandos de Oracle
emctl status dbconsole nos muestra el estado de la consola de oracle, pero debemos tenerlo apagado por defecto porque consume muchos recursos.
lsnrctl listener de oracle, que es donde se configura el acceso desde la red de nuestro servidor, para que funcione, por derfecto tiene un fichero de configuración llamado listener.ora donde se pueden configurar las restricciones de acceso a nuestro servidor, nosostros en principio simplemente lo debemos quitar.
sqlplus programa de oracle que nos permite el acceso a la base de datos con sql, también desde aquí podemos arrancar y parar las difernetes instancias de la Base de Datos mediante shut inmediate y startup.
Si queremos entrar como dba debemos ejecutar: <
dbca Data Base Control Administration, sirve para crear/modificar/borrar instancias de una Base de Datos.
martes, 24 de abril de 2007
Formateo de Tablas con Scroll y fileteado de filas
Para poder dar un aspecto con scroll y fileteado a nuestras tablas tendremos que hacer lo siguiente:
- Parte CSS:
- Parte Javascript:
martes, 27 de marzo de 2007
Cambio de estados en javascript
Este código sirve para establecer los diferentes estados de una barra de herramientas.
Pero no solo eso sino que nos puede servir como introducción para el manejo de eventos de Javascript.
La parte de javascript seía:
// Función asociada a un evento vacio
var doNothing = function () {
return true;
};
// Número de Imagenes o botones que dispone la botonera (se Incia en 1)
var _numButtons;
/** Inicializa la botonera
// Para ello se debe introducir el numero de las diferentes imagenes que
// se van a utilizar como botonera.
// las imagenes deben ser identificados por id="ImageX"
// donde X es el número de la imagen (empezando por 1)
**/
function initButtonTool(_num) {
_numButtons = _num;
var x;
try {
for (i = 1; i <= _numButtons; i++) {
x = document.getElementById("Image" + i);
// Firefox
if (x.addEventListener) {
x.addEventListener("mouseover", buttonIn, true);
x.addEventListener("mouseout", buttonOut, true);
x.addEventListener("click", buttonClick, true);
}
// IE
if (x.attachEvent) {
x.attachEvent("onmouseover", buttonIn);
x.attachEvent("onmouseout", buttonOut);
x.attachEvent("onclick", buttonClick);
}
}
}
catch (e) {
alert(e);
}
}
/**
Función asociada al evento que se produce cuando el
puntero del ratón entra en la imagen
**/
function buttonIn() {
try {
if (/MSIE/.test(navigator.userAgent)) {
_this = event.srcElement;
} else {
_this = this;
}
img = _this.src;
if ((img.search("_active") == -1) && (img.search("_off") == -1)) {
_this.src = img.replace(".gif", "_on.gif");
}
}
catch (e) {
alert(e);
}
}
/**
Función asociada al evento que se produce cuando el
puntero del ratón sale de la imagen
**/
function buttonOut() {
var img;
try {
if (/MSIE/.test(navigator.userAgent)) {
_this = event.srcElement;
} else {
_this = this;
}
img = _this.src;
if ((img.search("_active") == -1) && (img.search("_off") == -1)) {
_this.src = img.replace("_on.gif", ".gif");
}
}
catch (e) {
alert(e);
}
}
/**
Función asociada al evento que se produce cuando el
puntero del ratón pulsa la imagen
**/
function buttonClick() {
var img;
var img_old;
var elemento;
try {
if (/MSIE/.test(navigator.userAgent)) {
_this = event.srcElement;
} else {
_this = this;
}
img = _this.src;
for (var i = 1; i <= _numButtons; i++) {
if (/MSIE/.test(navigator.userAgent)) {
elemento = document.getElementById("Image" + i);
}else{
elemento = document.getElementById("Image" + i);
}
if (elemento == _this) {
if (img.search("_on.gif") != -1) {
elemento.src = img.replace("_on.gif", "_active.gif");
}
// Firefox
if (elemento.addEventListener) {
elemento.addEventListener("mouseout", doNothing, false);
}
// IE
if (elemento.attachEvent) {
elemento.attachEvent("onmouseout", doNothing);
}
} else {
img_old = elemento.src;
if (img_old.search("_active.gif") != -1) {
elemento.src = img_old.replace("_active.gif", ".gif");
}
}
}
}
catch (e) {
alert(e);
}
}
Para más información puede consultar también:
http://www.anieto2k.com/2006/10/16/gestion-de-eventos-en-javascript/
http://www.elcodigo.com/tutoriales/javascript/javascript5.html
Pero no solo eso sino que nos puede servir como introducción para el manejo de eventos de Javascript.
La parte de javascript seía:
// Función asociada a un evento vacio
var doNothing = function () {
return true;
};
// Número de Imagenes o botones que dispone la botonera (se Incia en 1)
var _numButtons;
/** Inicializa la botonera
// Para ello se debe introducir el numero de las diferentes imagenes que
// se van a utilizar como botonera.
// las imagenes deben ser identificados por id="ImageX"
// donde X es el número de la imagen (empezando por 1)
**/
function initButtonTool(_num) {
_numButtons = _num;
var x;
try {
for (i = 1; i <= _numButtons; i++) {
x = document.getElementById("Image" + i);
// Firefox
if (x.addEventListener) {
x.addEventListener("mouseover", buttonIn, true);
x.addEventListener("mouseout", buttonOut, true);
x.addEventListener("click", buttonClick, true);
}
// IE
if (x.attachEvent) {
x.attachEvent("onmouseover", buttonIn);
x.attachEvent("onmouseout", buttonOut);
x.attachEvent("onclick", buttonClick);
}
}
}
catch (e) {
alert(e);
}
}
/**
Función asociada al evento que se produce cuando el
puntero del ratón entra en la imagen
**/
function buttonIn() {
try {
if (/MSIE/.test(navigator.userAgent)) {
_this = event.srcElement;
} else {
_this = this;
}
img = _this.src;
if ((img.search("_active") == -1) && (img.search("_off") == -1)) {
_this.src = img.replace(".gif", "_on.gif");
}
}
catch (e) {
alert(e);
}
}
/**
Función asociada al evento que se produce cuando el
puntero del ratón sale de la imagen
**/
function buttonOut() {
var img;
try {
if (/MSIE/.test(navigator.userAgent)) {
_this = event.srcElement;
} else {
_this = this;
}
img = _this.src;
if ((img.search("_active") == -1) && (img.search("_off") == -1)) {
_this.src = img.replace("_on.gif", ".gif");
}
}
catch (e) {
alert(e);
}
}
/**
Función asociada al evento que se produce cuando el
puntero del ratón pulsa la imagen
**/
function buttonClick() {
var img;
var img_old;
var elemento;
try {
if (/MSIE/.test(navigator.userAgent)) {
_this = event.srcElement;
} else {
_this = this;
}
img = _this.src;
for (var i = 1; i <= _numButtons; i++) {
if (/MSIE/.test(navigator.userAgent)) {
elemento = document.getElementById("Image" + i);
}else{
elemento = document.getElementById("Image" + i);
}
if (elemento == _this) {
if (img.search("_on.gif") != -1) {
elemento.src = img.replace("_on.gif", "_active.gif");
}
// Firefox
if (elemento.addEventListener) {
elemento.addEventListener("mouseout", doNothing, false);
}
// IE
if (elemento.attachEvent) {
elemento.attachEvent("onmouseout", doNothing);
}
} else {
img_old = elemento.src;
if (img_old.search("_active.gif") != -1) {
elemento.src = img_old.replace("_active.gif", ".gif");
}
}
}
}
catch (e) {
alert(e);
}
}
Para más información puede consultar también:
http://www.anieto2k.com/2006/10/16/gestion-de-eventos-en-javascript/
http://www.elcodigo.com/tutoriales/javascript/javascript5.html
viernes, 23 de marzo de 2007
INSTALAR Y CONFIGURAR JAVA EN REDHAT
Si no hay opción de instalar java a través de los repositorios oficiales de nuestra distribución, que sería la opción recomendada,
también es posible instalar java de forma manual.
Lo primero es descargar de http://java.sun.com la versión de java que queramos utilizar. En el caso de RedHat es
siempre conveniente descargar la versión que acaba con extensión rpm.bin, ya que de esta forma, podremos instalar
java con el comando rpm -i nombre_de_la_version_de_java.rpm. Una vez descargado el archivo cambiaremos los permisos
con chmod +x nombre_de_la_version_de_java.rpm.bin y luego lo ejecutamos ./nombre_de_la_version_de_java.rpm.bin, se generará
un archivo nombre_de_la_version_de_java.rpm, ejecutamos entonces rpm -i nombre_de_la_version_de_java.rpm y tendremos java instalado.
Normalmente estará en /usr/java/nombre_de_la_version_de_java/. Si no está aquí podemos ejecutar como root updatedb y luego hacer un
locate /bin/javac, para ver el directorio donde está java instalado.
Ahora ya está java instalado, pero si ejecutamos java nos saldrá esto:
libgcj-java-placeholder.sh
This script is a placeholder for the /usr/bin/java
master link required by jpackage.org conventions. libgcj's
rmiregistry, rmic and jar tools are now slave symlinks to these
masters, and are managed by the alternatives(8) system.
...
Esta no es la versión de java que necesitamos, para configurarlo lo mejor (tal y como dice el libgcj-java-placeholder.sh) es utilizar alternatives.
Alternatives nos permite tener distintas versiones de un mismo componente e intercambiar entre ellas de forma transparente, sin tocar archivos
de configuración o paths:
[root@equipo /]# update-alternatives
versiones alternativas 1.3.11 - Copyright (C) 2001 Red Hat, Inc.
Este programa puede que sea libremente distribuido bajo los términos de la
licencia pública de GNU.
uso: alternativas --install <link> <name> <path> <priority>
[--initscript <service>]
[--slave <link> <name> <path>]*
alternatives --remove <name> <path>
alternatives --auto <name>
alternatives --config <name>
alternatives --display <name>
alternatives --set <name> <path>
opciones comunes: --verbose --test --help --usage --version
--altdir <directory> --admindir <directory>
Lo que tenemos que hacer es añadir (--install) el nuevo java y para ello necesitamos saber la ruta del ejecutable de java:
[root@equipo /]# locate java | grep bin/java
/usr/sbin/javaconfig
/usr/bin/java
/usr/bin/javac
/usr/bin/java_cup
/usr/bin/java_cup-10.11
/usr/java/j2sdk1.4.2_13/bin/java-rmi.cgi
/usr/java/j2sdk1.4.2_13/bin/java
/usr/java/j2sdk1.4.2_13/bin/javac
/usr/java/j2sdk1.4.2_13/bin/javadoc
/usr/java/j2sdk1.4.2_13/bin/javah
/usr/java/j2sdk1.4.2_13/bin/javap
/usr/java/j2sdk1.4.2_13/jre/bin/java
/usr/java/j2sdk1.4.2_13/jre/bin/java_vm
El que nos interesa es /usr/java/j2sdk1.4.2_13/bin/java. Ahora simplemente hay que ejecutar el comando de instalación en el que le
decimos el nombre del enlace simbólico (/usr/bin/java) el nombre del paquete (java), la ruta del ejecutable java y la prioridad (300 por
defecto):
[root@equipo /]# update-alternatives --install /usr/bin/java java /usr/java/j2sdk1.4.2_13/bin/java 300
Para terminar comprobamos que ahora java utiliza el ejecutable que necesitamos y hacemos un java -version:
[root@equipo /]# update-alternatives --config java
Hay 2 programas que proporcionan 'java'.
Selección Comando
-----------------------------------------------
1 /usr/share/java/libgcj-java-placeholder.sh
*+ 2 /usr/java/j2sdk1.4.2_13/bin/java
Presione Intro para mantener la selección actual[+], o escriba el número de la selección:
[root@equipo /]# java -version
java version "1.4.2_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_13-b06)
Java HotSpot(TM) Client VM (build 1.4.2_13-b06, mixed mode)
[root@equipo /]#
Más información en:
http://www.yiluda.net/manual/linux/man/alternatives.html
http://blog.stevenkroon.com/2006/08/29/debian-update-alternatives
también es posible instalar java de forma manual.
Lo primero es descargar de http://java.sun.com la versión de java que queramos utilizar. En el caso de RedHat es
siempre conveniente descargar la versión que acaba con extensión rpm.bin, ya que de esta forma, podremos instalar
java con el comando rpm -i nombre_de_la_version_de_java.rpm. Una vez descargado el archivo cambiaremos los permisos
con chmod +x nombre_de_la_version_de_java.rpm.bin y luego lo ejecutamos ./nombre_de_la_version_de_java.rpm.bin, se generará
un archivo nombre_de_la_version_de_java.rpm, ejecutamos entonces rpm -i nombre_de_la_version_de_java.rpm y tendremos java instalado.
Normalmente estará en /usr/java/nombre_de_la_version_de_java/. Si no está aquí podemos ejecutar como root updatedb y luego hacer un
locate /bin/javac, para ver el directorio donde está java instalado.
Ahora ya está java instalado, pero si ejecutamos java nos saldrá esto:
libgcj-java-placeholder.sh
This script is a placeholder for the /usr/bin/java
master link required by jpackage.org conventions. libgcj's
rmiregistry, rmic and jar tools are now slave symlinks to these
masters, and are managed by the alternatives(8) system.
...
Esta no es la versión de java que necesitamos, para configurarlo lo mejor (tal y como dice el libgcj-java-placeholder.sh) es utilizar alternatives.
Alternatives nos permite tener distintas versiones de un mismo componente e intercambiar entre ellas de forma transparente, sin tocar archivos
de configuración o paths:
[root@equipo /]# update-alternatives
versiones alternativas 1.3.11 - Copyright (C) 2001 Red Hat, Inc.
Este programa puede que sea libremente distribuido bajo los términos de la
licencia pública de GNU.
uso: alternativas --install <link> <name> <path> <priority>
[--initscript <service>]
[--slave <link> <name> <path>]*
alternatives --remove <name> <path>
alternatives --auto <name>
alternatives --config <name>
alternatives --display <name>
alternatives --set <name> <path>
opciones comunes: --verbose --test --help --usage --version
--altdir <directory> --admindir <directory>
Lo que tenemos que hacer es añadir (--install) el nuevo java y para ello necesitamos saber la ruta del ejecutable de java:
[root@equipo /]# locate java | grep bin/java
/usr/sbin/javaconfig
/usr/bin/java
/usr/bin/javac
/usr/bin/java_cup
/usr/bin/java_cup-10.11
/usr/java/j2sdk1.4.2_13/bin/java-rmi.cgi
/usr/java/j2sdk1.4.2_13/bin/java
/usr/java/j2sdk1.4.2_13/bin/javac
/usr/java/j2sdk1.4.2_13/bin/javadoc
/usr/java/j2sdk1.4.2_13/bin/javah
/usr/java/j2sdk1.4.2_13/bin/javap
/usr/java/j2sdk1.4.2_13/jre/bin/java
/usr/java/j2sdk1.4.2_13/jre/bin/java_vm
El que nos interesa es /usr/java/j2sdk1.4.2_13/bin/java. Ahora simplemente hay que ejecutar el comando de instalación en el que le
decimos el nombre del enlace simbólico (/usr/bin/java) el nombre del paquete (java), la ruta del ejecutable java y la prioridad (300 por
defecto):
[root@equipo /]# update-alternatives --install /usr/bin/java java /usr/java/j2sdk1.4.2_13/bin/java 300
Para terminar comprobamos que ahora java utiliza el ejecutable que necesitamos y hacemos un java -version:
[root@equipo /]# update-alternatives --config java
Hay 2 programas que proporcionan 'java'.
Selección Comando
-----------------------------------------------
1 /usr/share/java/libgcj-java-placeholder.sh
*+ 2 /usr/java/j2sdk1.4.2_13/bin/java
Presione Intro para mantener la selección actual[+], o escriba el número de la selección:
[root@equipo /]# java -version
java version "1.4.2_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_13-b06)
Java HotSpot(TM) Client VM (build 1.4.2_13-b06, mixed mode)
[root@equipo /]#
Más información en:
http://www.yiluda.net/manual/linux/man/alternatives.html
http://blog.stevenkroon.com/2006/08/29/debian-update-alternatives
jueves, 22 de marzo de 2007
Como crear un sinonimo publico en Oracle
Cuando queremos poder ver una tabla de oracle desde diferentes esquemas necesitimos crearnos un sinónimo público.
Para poder crear un sinónimo público debemos hacer:
create [or replace] [public] synonym [schema .] synonym_name
for [schema .] object_name [@ dblink];
ejemplo:
CREATE PUBLIC SYNONYM sinonimo_publico FOR tabla
GRANT SELECT, UPDATE, DELETE, INSERT ON nombre _tabla for usuario (esquema)
Con esto debería funcionar sin problemas.
Para poder crear un sinónimo público debemos hacer:
- Crear el Sinónimo:
create [or replace] [public] synonym [schema .] synonym_name
for [schema .] object_name [@ dblink];
ejemplo:
CREATE PUBLIC SYNONYM sinonimo_publico FOR tabla
- Dar permiso de aceso al esquema de destino:
GRANT SELECT, UPDATE, DELETE, INSERT ON nombre _tabla for usuario (esquema)
Con esto debería funcionar sin problemas.
Paginas Interesantes
Código Fuente:
Esta es una recopilación de páginas donde se pueden encontrar código ya hecho de forma rápido y fácil. Pueden llegar a ser de gran ayuda.
Cualquier Código:
Javascript:
Esta es una recopilación de páginas donde se pueden encontrar código ya hecho de forma rápido y fácil. Pueden llegar a ser de gran ayuda.
Cualquier Código:
Javascript:
viernes, 16 de marzo de 2007
Inicial
Suscribirse a:
Entradas (Atom)