HTML5 Wordpress Java Quito Guayaquil
Mostrando entradas con la etiqueta Java. Mostrar todas las entradas
Mostrando entradas con la etiqueta Java. Mostrar todas las entradas

sábado, 8 de noviembre de 2014

[Glassfish] Configuraciones Multiples Glassfish en el mismo servidor

Hola a todos,

Hoy estuve configurando varias versiones del Glassfish y se me hizo necesario configurarlos en varios puertos respondiendo a las necesidades de cada aplicación

viernes, 31 de octubre de 2014

[JAVA] Localizar la ip de una URL

Hola a todos,

Aquí les dejo un pequeño código que me ha sido de utilidad.

  public static void main(String[] args) {
        try {
            InetAddress address = InetAddress.getByName(new URL("http://192.168.222.7/web.html").getHost());
            String ip = address.getHostAddress();
            System.out.println(ip);
        } catch (MalformedURLException | UnknownHostException ex) {
            Logger.getLogger(JavaApplication3.class.getName()).log(Level.SEVERE, null, ex);
        }
    }  


[JAVA] Dígito verificador de la cédula ecuatoriana

Hola a todos,

Hoy he vuelto comparto con ustedes un método para comprobar el último dígito de la cédula de identidad ecuatoriana.

 public boolean verificarCedula(String cedula) {  
     int total = 0;  
     int tamanoLongitudCedula = 10;  
     int[] coeficientes = {2, 1, 2, 1, 2, 1, 2, 1, 2};  
     int numeroProviancias = 24;  
     int tercerdigito = 6;  
     if (cedula.matches("[0-9]*") && cedula.length() == tamanoLongitudCedula) {  
       int provincia = Integer.parseInt(cedula.charAt(0) + "" + cedula.charAt(1));  
       int digitoTres = Integer.parseInt(cedula.charAt(2) + "");  
       if ((provincia > 0 && provincia <= numeroProviancias) && digitoTres < tercerdigito) {  
         int digitoVerificadorRecibido = Integer.parseInt(cedula.charAt(9) + "");  
         for (int i = 0; i < coeficientes.length; i++) {  
           int valor = Integer.parseInt(coeficientes[i] + "") * Integer.parseInt(cedula.charAt(i) + "");  
           total = valor >= 10 ? total + (valor - 9) : total + valor;  
         }  
         int digitoVerificadorObtenido = total >= 10 ? (total % 10) != 0 ? 10 - (total % 10) : (total % 10) : total;  
         if (digitoVerificadorObtenido == digitoVerificadorRecibido) {  
           return true;  
         }  
       }  
       return false;  
     }  
     return false;  
   } 


Número de RUC: 0801895186001

Estructura: El número del RUC es un número de 13 dígitos, sin letras ni caracteres especiales, de los cuales los 10 primeros dígitos corresponden a la cédula de identidad

  • 08 Los dos primeros dígitos corresponden al código de provincia siempre está entre 01 al 22
  • 0 El tercer dígito es siempre menor a 6: 0, 1, 2, 3, 4, 5.
  • 189518 Del cuarto al noveno dígito es un número consecutivo de 6 dígitos
  • 6 El décimo dígito es el dígito verificador
  • 001 Del décimo primer dígito al décimo tercer dígito, identifican en forma consecutiva el número de establecimientos. Empieza siempre con el 001

El número de RUC es: 0801895186001 independientemente del número de establecimientos que tenga el contribuyente, no existe un número de RUC tal como 0801895186002

La validación de la cédula de Identidad pasa un algoritmo "Módulo 10". Al número se lo divide en 13 partes, las 9 primeras son el número mismo, la 10 es el dígito auto verificador, y las 3 restantes indican si es principal o establecimiento adicional. Los coeficientes usados para verificar el décimo dígito de la cédula, mediante el algoritmo "Módulo 10" son: 2.1.2.1.2.1.2.1.2.

Para realizar la validación solo tomamos los 9 primeros dígitos del RUC y procedemos a realizar la multiplicación de la siguiente manera:

080189518
212121212
080116910116

El resultado de esta multiplicación sumamos por dígito no por resultado:


0+8+0+1+1+6+9+1+0+1+1+6= 34

El Resultado de ésta suma que es 34 restamos de la decena más próxima, o sea 40.

40 - 34 = 6


Si resultado que nos da en esta resta "6" es igual al décimo número del RUC, este esta correcto caso contrario incorrecto.

Si el resultado de la resta es 0, y el décimo número del RUC también es 0, este esta correcto caso contrario incorrecto.


miércoles, 25 de junio de 2014

[Glassfish] Comandos para administrar dominios en GlassFish

Hola a todos,

EL otro día estaba configurando un servidor para testing y me encontré con unos comandos muy interesantes los dejo a continuación, espero les sea útil.

asadmin delete-domain domain1
asadmin create-domain --portbase 8080 domain1

Comandos para iniciar y parar el servidor.
  • asadmin start-domain domain1
  • asadmin stop-domain domain1

domingo, 25 de agosto de 2013

[Java] Optimizar el entorno IDE Eclipse

Hola a todos,
A veces reniego con mi IDE Eclipse porque demora mucho. 
Aca vamos a ver una serie de parametros para optimizar Eclipse y que no se atortugue despues de un par de dias de estar encendido.
El archivo que vamos a tocar va a ser eclipse.ini que esta en el directorio ROOT de tu instalacion de Eclipse.
Primero vamos a tocar un par de settings para decirle cuanta memoria puede usar.
-Xms512m
-Xmx1024m
-XX:PermSize=256m
-XX:MaxPermSize=1024m
Tambien vamos a evitar que verifique el bytecode
-Xverify:none
Y por ultimo vamos a toquetear los settings del Garbage Collector
-XX: UseConcMarkSweepGC
-XX: CMSClassUnloadingEnabled
-XX: CMSPermGenSweepingEnabled
Espero les haga el Eclipse mas usable aun.

lunes, 7 de enero de 2013

Verificar y Crear directorio con Java

Hola a todos,


La creación de directorios o carpetas con Java es una tarea realmente muy sencilla, todo es cuestión de utilizar el objeto File del paquete java.io, el mismo nos ofrece métodos para crearlos y verificar su existencia incluso. Veamos primeramente como crearlo:
1
File folder = new File("x:\\devtroce\\java");
1
File folder = new File("/media/devtroce/java");
Arriba se ve la instancia que crearía la carpeta, el primer ejemplo es para un sistema operativo Windows y el segundo para los que están basado en Unix. Una vez instanciado el objeto podemos invocar sus métodos para crear los directorios, asi:
1
folder.mkdir(); // esto crea la carpeta java, y requiere que exista la ruta
1
folder.mkdirs(); // esto crea la carpeta java, independientemente que exista el path completo, si no existe crea toda la ruta necesaria
Ahora bien, quizá sólo queríamos verificar si el path que nos pasan corresponde a un directorio o un archivo, o también si existe o no el path o fichero.
1
if (!folder.exists()) { // escribimos algo si existe el fichero }
1
if (folder.isDirectory()) { // escribimos algo si es un directorio }
1
if (folder.isFile()) { // escribimos algo si es un fichero }

domingo, 6 de enero de 2013

Naming convention para "id" y"widgetvar" en primefaces/jsf

Hola a todos,

me encontré con un problema al momento de manejar los id y los widgetvar de un componente dentro de primefaces utilizando el mismo nombre, al parecer, no se recomienda tener el mismo valor para ambos atributos.

la solución es la siguiente,
Se tiene que utilizar un prefijo específico consistente. En realidad no hay un "naming convention "oficialmente recomendado. Lo es ser coherente lo largo de toda la aplicación web.


 id="tabs" widgetVar="_tabs">
 id="table" widgetVar="_table">
 id="calendar" widgetVar="_calendar">
or
 id="tabs" widgetVar="p_tabs">
 id="table" widgetVar="p_table">
 id="calendar" widgetVar="p_calendar">

Que es un convert en Primefaces


la idea es convertir el objeto que va a ser impreso en html en una clave reconocible, que luego te permita enviar al convertidor para crear un nuevo objeto desde la base de datos en base a la obtencion de la clave que se obtiene desde el componente html de la vista.

code: 

/**
 *
 * @author JNK
 */
@ManagedBean
@ApplicationScoped
public class CatalogoDetalleConverter implements Converter, Serializable {

    @EJB
    CtlgCatalogoDetalleFacade catalogoDetalleFacade;

    // ESTE CONVIERTE EL SELECTITEM SELECCIONADO EN OBJETO PARA ENVIAR AL OBEJETO PARA PERSISTIR
    @Override
    public Object getAsObject(FacesContext fc, UIComponent uic, String string) {
        CtlgCatalogoDetalle objRes = (CtlgCatalogoDetalle) catalogoDetalleFacade.find(new BigDecimal(string));
        return (string.trim().equals("") || string == null ) ? null : objRes;
    }

    // ESTE ES EL QUE SE EJECUTA AL INICIO Y HACE QUE EL CATALOGO MUESTRE LOS IDS
    @Override
    public String getAsString(FacesContext fc, UIComponent uic, Object o) {
        return (o == null || o.equals("")) ? "" : ((CtlgCatalogoDetalle) o).getId() + "";

    }
}

--
Att.
Juan Carlos Lafuente

viernes, 7 de diciembre de 2012

Configuración de ANT en windows

Hola a todos,

Bueno de nuevo me encontré con el desarrollo de una aplicación donde necesitaba configurar Apache ANT, por si alguien no sabe "Apache Ant es una herramienta usada en programación para la realización de tareas mecánicas y repetitivas, normalmente durante la fase de compilación y construcción (build)."(Wikipedia).

Y luego de buscar y buscar, Gustavo Peiretti nos trae la solución:

http://gustavopeiretti.com/2009/instalar-ant-en-windows/