listener

All posts tagged listener

Crear un listener o escuchador en Android

En Android podemos crear listener o escuchadores de dos maneras diferentes, por código o a través del fichero AndroidManifiest.xml

En este ejemplo vamos a crear un listener por código para que lance un evento al pulsar o hacer click un botón.

Lo hemos dividido en tres pasos:

Primero- Creamos el botón que vamos a utilizar para lanzar el evento.

Segundo- Vamos al evento onClick (Versión +1.6) del botón y escribimos el nombre de la función que queremos ejecutar cuando presionemos el botón.
En este caso llamaremos a la función lanzarExit(), que finalizará y saldrá del programa.

Tercero- Por último, declaramos el botón y le asignamos el listener o escuchador por código. Solo es necesario añadir las lineas que están comentadas, las demás las genera Eclipse cuando creas la Activity

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class NombreDeLaClase extends Activity {
 
	private Button bSalir; //Evento por código 
	@Override
	protected void onCreate(Bundle savedInstanceState) {
 
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
 
	        bSalir =(Button) findViewById(R.id.button4); //Evento por código 
	        bSalir.setOnClickListener(new OnClickListener() { //button4 corresponde al id del botón
	                   public void onClick(View view) {
	                	   lanzarExit(null);  //llamamos a la función después del onclick
	                  }
	            });
	}
 
	@Override
	public boolean onCreateOptionsMenu(Menu menu) {	
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}
 
	 public void lanzarExit(View view){ // Función a la que llamamos
	 finish();
}
}
Leer más

ORA-12516: TNS:listener could not find available handler with matching protocol stack

Resolver error ORA-12516

En este artículo resolvemos el error “ORA-12516″ de Oracle que traducido sería algo así:

TNS:el listener no ha encontrado ningún manejador disponible con una pila de protocolos coincidente

Al tratar de conectar a BBDD nos dio este error, y era porque estabamos cerca de alcanzar el número máximo de sesiones y procesos establecidos.

Si en máquina ejecutáis cualquiera de estas dos líneas, os dará el número de conexiones que hay en ese momento:

ps -ef | grep oracleSID | grep -v grep | wc -l
ps aux | grep oracleSID | grep -v grep | wc -l

Tenéis que poner oracle unido al SID de vuestra BBDD.

Luego os conectáis a BBDD para comprobar si estáis cerca del valor máximo de procesos y sesiones establecido:

select NAME, DISPLAY_VALUE, DESCRIPTION from v$parameter where name in (’processes’,’sessions’);

Si es así, lo podéis aumentar de esta manera:

SQL> alter system set processes=300 scope=spfile;
SQL> alter system set sessions=300 scope=spfile;

Luego sólo queda tirar y levantar la BBDD (siempre que tengamos los permisos suficientes)

SQL> shutdown immediate;
SQL> startup;

Claro que si no tenéis permisos hacer esto, siempre podéis “eliminar” conexiones. Si no sabéis como, echarle un ojo a otro post que hay por ahí publicado sobre esto.

Resolver error ORA-12516

Leer más