Saludos y espero que les sirva
Categoría: PROGRAMACIÓN Página 3 de 4
Saludos y espero que les sirva
Saludos y espero que les sirva
Buenos días amigos,les dejo este video en donde les muestro como ocultar el precio de compra del producto por derecho
Saludos y espero que les sirva
Saludos y esperemos que les sirva
Saludos y esperemos que les sirva
Pueden seguirme en las siguientes redes sociales

INTRODUCCIÓN
Hace algunos días desarrollamos una aplicación en Java el cual tiene como función
principal generar un archivo PDF con la información del XML de la
factura que se generan aquí en México, actualmente van en la
versión 3.3 y este programa es para esa versión.
Pero a lo mas que logramos
hacer es ejecutar dentro de una carpeta el programa con un archivo
.sh, sin instalarlo como se debe.
Ahora queremos que nuestro
programa sea mas profesional y se instale en nuestro sistema
operativo con todo y los iconos en el menú listo para funcionar en cualquier sistema basado en debían y que se ejecute sin problemas,
de manera que el usuario no necesite hacer ajustes.
OBJETIVO
Crear el instalador de un programa escrito en Java con su icono en el menú y que funcione sin necesidad de usar la terminal.
CONOCIMIENTOS PREVIOS
Es necesario conocer los directorios en los que vamos a instalar, de hecho primeramente vamos instalarlo en el sistema de archivos.

nos vamos a la raíz de disco duro donde tenemos instalado vemos que
tenemos la carpetas OPT y USR .
En la carpeta OPT
guardamos normalmente los programas de terceros auto contenidos, es
el equivalente a archivos de programa de Windows.
URS
aquí van archivos relativos al
programa como los iconos que estos están dentro de una carpeta que
se llama Applications,
ademas aquí meteremos una carpeta llamada XMLAPDF
donde vendrán los reportes y nuestro archivo de base de datos, como
vamos hacer lectura y escritura de ese archivo dejamos esa carpeta
con acceso a lectura y escritura.
Archivos Carpeta OPT
Vamos
a meter nuestro ejecutable jar
con su carpeta lib en
una carpeta con el nombre de la aplicación dentro de la carpeta OPT
y para no tener problemas
con la versión de JAVA
que podría tener instalado el sistema operativo, nosotros mismos
agregaremos el jdk,
así nos ahorramos cualquier problema de incompatibilidad.
El jdk que utilizaremos
para este programa lo pueden descargar desde nuestra nube de Telegram
haciendo clic aquí.
Ahora
creamos el archivo llamado ejecutar.sh ,
este ejecutara el programa a través de jdk , dentro de ejecutar.sh
tendremos el siguiente comando
/opt/ConvertidorXMLPDF/jdk/bin/java
-jar /opt/ConvertidorXMLPDF/LeerXML.jar
Igual puede descargar el
archivo completo haciendo clic aquí

final esa carpeta nos quedaría así
Ahora le tenemos que crear un
acceso directo a ejecutar.sh dentro de la carpeta usr/bin
para que lo ejecute con los
máximos derechos, eso he
escuchado, por lo que entiendo es para que no requiera ejecutarlo
como sudo en la terminal.
sudo
ln -sf /opt/ConvertidorXMLPDF/ejecutar.sh /usr/bin/ConversorXML
Lanzador
con icono

un archivo de texto con el siguiente contenido, vemos como tomar el
icono de la carpeta que tenemos en OPT. Este archivo lo dejáramos en
la carpeta /usr/share/applications/
Ahora hacemos la prueba y si
nos vamos al menú y lo buscamos como Convertidor ya nos debe salir y
si le damos clic ya podremos ejecutar el programa.
Si el programa ya se ejecuta
correctamente ahora sigue el empaquetado.
CREANDO
EL INSTALADOR .DEB
Ahora lo que sigue es crear una carpeta con el nombre de la aplicación que ustedes preferían ponerle en mi caso le pondré ConvertidorXMLPDF Y allí meteremos todos los archivos que hemos creado con la misma ruta.
Ejemplo lo que metimos en OPT, agregaremos la carpeta OPT y metemos allí los archivos.
Ojo solo los archivos que hemos creado nosotros, no vallan a copiar toda la carpeta de OPT Igual hacer con la carpeta de USR donde tenemos la carpeta de trabajo XMLAPDF, el lanzador y el archivo que dejamos en la carpeta bin Igual crearemos una carpeta llamada DEBIAN y dentro de ella meteremos un archivo con el nombre control así sin extención.
Para que se puedan dar una idea es así como quedarían los archivos.


Se ve difícil pero en realidad es sencillo, en el video mostraremos como hacerlo. Ahora procederemos a crear el archivo .DEB Para ello nos vamos a la terminal y ubicamos la carpeta que hemos hecho, y la generamos con el siguiente comando
dpkg –build ConvertidorXMLPDF


podemos abrir el paquete para instalarlo
Que tal camaradas, continuando con el post anterior en el cual se mostró como escribir o generar un XML usando Java con la IDE NetBeans, en esta ocasión se mostrara como el programa leerá internamente dicho XML.
[code languaje=”XML”]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Configuracion>
<Servidor>localhost</Servidor>
<DB>comercial</DB>
<Usuario>Julio8</Usuario>
</Configuracion>
[/code]
Para ello igual tenemos que importar las librerías que importamos en la publicación anterior y llamarlas en el encabezado.
Bien desde de ello creamos la función que lee el archivo
[code languaje=”Java”]
public void leerConfiguracion(){
try{
File fXmlFile = new File("Conexion.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(fXmlFile);
//optional, but recommended
//read this – http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-work
doc.getDocumentElement().normalize();
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("Configuracion");
System.out.println("—————————-");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
System.out.println("nCurrent Element :" + nNode.getNodeName());
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
this.txtServer.setText( eElement.getElementsByTagName("Servidor").item(0).getTextContent());
this.txtBase.setText(eElement.getElementsByTagName("DB").item(0).getTextContent());
this.txtUsuario.setText(eElement.getElementsByTagName("Usuario").item(0).getTextContent());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
[/code]
En el código que se muestra arriba podrán ver que la información leída sera puesta en los campos de textos correspondientes, pero ustedes pueden hacer lo que sea con ello, mostrarlos en pantalla o guardarlos en base de datos, ya depende de sus necesidades.
Y luego invocan la función en donde la quieran usar
[code languaje=”Java”]
leerConfiguracion();
[/code]
Vídeo demostrativo
[youtube https://www.youtube.com/watch?v=XkKrQ2bMNtc&w=560&h=315]
No se olviden de dejar su comentario
Saludos Espero que les sirva
Suerte
Estimados lectores buen día, gracias por pasarse por aquí, este es su espacio y siempre serán bienvenidos, recuerden que pueden dejar su opinión en cada publicación, también se avisa que toda información publicada aquí es de libre distribución.
En la entrada anterior en lo referente a Java, vimos como instalar la IDE NetBeans mostrando a cada detalle cada paso, continuando en ello en esta ocasión mostraremos como generar un “XML” escribiendo código Java desde la IDE que hemos instalado.
Para ello se ha diseñado y programado una forma la que simula ser un Login para dar acceso a usuarios en la cual pedirá el servidor, base de datos, usuario y contraseña tal como se ve en la imagen.
La información que va a almacenar el XML serán los datos de conexión, por ejemplo tomando en cuenta la imagen de arriba seria, localhost, comercial y julio.
El contenido del archivo XML final sera el siguiente:
[code language=”xml”]
localhost
comercial
Julio
[/code]
Bien para ello tenemos que agregar al proyecto las librerias JDOM 2.0.6 el cual podrás descargar de la pagina oficial http://www.jdom.org/ o también del enlace de nuestra cuenta de Mediafire haciendo click aquí.
El próximo paso sera descomprimir y agregar todas las librerías de este paquete que son 5 archivos *.*jar al proyecto, para ello nos vamos al árbol del proyecto, damos click derecho en donde dice libraries y damos clic en add JAR/folder, tal como se muestra en la imagen, al principio batalle para posicionarme en la carpeta donde están las librerías por que hacia doble click en una carpeta y se agregaba toda la carpeta, después se soluciono.
Luego nos saldrá una ventana en la cual tendremos que buscar las librerías de Jdom que descargamos, una vez descargada podremos ver las librerías agregadas al proyecto así como se ven en la imagen de arriba.
Ya con esto podemos agregar los encabezados en la clase en donde se van a usar las librerías, aunque, no es muy necesario ya que al poner el código el mismo IDE nos marcara de que sera necesario importar las librerías en la clase, de una u otra forma les dejare el código por si desean copiar y pegar para ahorrarse tiempo.
[code language=”Java”]
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package interfaces;
import clases.classUsuarios;
import herramientas.conexion;
import java.awt.List;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.URLDecoder;
import java.util.jar.Attributes;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;
import javax.xml.*;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
[/code]
El siguiente paso sera crear la función que genere nuestro preciado y hermoso XML y usarlo en el transcurso del programa como acceso de configuraciones locales por equipo, entonces les dejo el código para que lo puedan adaptar a sus necesidades
[code language=”Java”]
public void crearXML2() throws ParserConfigurationException, TransformerConfigurationException, TransformerException{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
DOMImplementation implementation = builder.getDOMImplementation();
Document document = implementation.createDocument(null, “Configuracion”, null);
document.setXmlVersion(“1.0”);
Element raiz = document.getDocumentElement();
Element nodoServidor = document.createElement(“Servidor”); //creamos un nuevo elemento
Text nodoValorServidor = document.createTextNode(this.txtServer.getText()); //Ingresamos la info
nodoServidor.appendChild(nodoValorServidor);
raiz.appendChild(nodoServidor); //pegamos el elemento a la raiz “Documento”
Element nododb = document.createElement(“DB”); //creamos un nuevo elemento
Text nodoValorDB = document.createTextNode(this.txtBase.getText()); //Ingresamos la info
nododb.appendChild(nodoValorDB);
raiz.appendChild(nododb); //pegamos el elemento a la raiz “Documento”
Element nodoUsuario = document.createElement(“Usuario”); //creamos un nuevo elemento
Text nodoValorUsuario = document.createTextNode(this.txtUsuario.getText()); //Ingresamos la info
nodoUsuario.appendChild(nodoValorUsuario);
raiz.appendChild(nodoUsuario); //pegamos el elemento a la raiz “Documento”
Source source = new DOMSource(document);
StreamResult result = new StreamResult(new
java.io.File(“Conexion.xml”));//nombre del archivo
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(source, result);
}
[/code]
Y listo, esta función la podrás ejecutar en cualquier parte de la clase en donde este declarada, yo la use al momento de darle click en accesar
[code language=”Java”]
private void cmdAccesarActionPerformed(java.awt.event.ActionEvent evt) {
try {
// TODO add your handling code here:
// File archivoConexion = new File(“Conexion.xml”);
//
// if (archivoConexion.exists())
// System.out.println(“El fichero”);
// else
crearXML2();
conexion con = new conexion();
con.strServidor=this.txtServer.getText();
con.strPSWSQL=””;
con.strUsuarioSQL=”root”;
con.strBaseDeDatos=this.txtBase.getText();
con.conectado();
leerConfiguracion();
frmPrincipal principal= new frmPrincipal();
classUsuarios usuarios = new classUsuarios();
if (usuarios.blnChecaUsuarioContra(“SELECT * FROM Usuarios where Usuario='”+this.txtUsuario.getText() +”‘ and Contra='”+this.pswContraseña.getText()+”‘”)==true){
this.setVisible(false);
principal.setVisible(true);
}
else
JOptionPane.showMessageDialog(null, “USUARIO O CONTRASEÑA INCORRECTO”+this.pswContraseña.getText());
System.out.println(“SELECT * FROM Usuarios where Usuario='”+this.txtUsuario.getText() +”‘ and Contra='”+this.pswContraseña.getText()+”‘”);
} catch (ParserConfigurationException ex) {
Logger.getLogger(frmLogueo.class.getName()).log(Level.SEVERE, null, ex);
} catch (TransformerException ex) {
Logger.getLogger(frmLogueo.class.getName()).log(Level.SEVERE, null, ex);
}
}
[/code]
Y eso seria así de fácil sin complicarse mucho.
Bien espero que les sea de utilidad, yo busque por muchos blogs y algunos de ellos me ayudaron y después se adapto el código para que funcionara de acuerdo a nuestras necesidades.
Saludos no olviden dejar su huella en la caja de comentarios y puntuar la publicación.
Camaradas bienvenidos a mi blog, cada vez me esta gustando wordpress, aunque aun no termino de dejar blogger, luego veremos los pros y contras de cada servicio de blogueo.
Este post será el primero de una serie de publicaciones en los cuales se hablara de programación en JAVA, en esta serie de entradas se describira de manera detallada desde como instalar la IDE para programar, hasta de como realizar programas que ayuden a las personas a realizar sus labores cotidianas, tal vez para los usuarios avanzados de programación en JAVA sea algo aburrido explicar todo a detalle, es cierto, puede ser así por que las entradas estan dirigidas a todo tipo de publico sea programador con experiencia o no lo sea.
Bien lo primero que tenemos que hacer es descargar el NetBeans, la versión que se estará utilizando será la 8.0.2, lo podemos descargar de la pagina oficial https://netbeans.org/ o bien descargarlo desde este enlace de nuestra cuenta de mediafire, es un ejecutable que pesa alrededor de 200Mb
Como podran ver en la imagen, esta instalacion es el que tiene todas las caracteristicas, de esta forma no nos faltara nada, como somos principiantes vale mas que sobre a que falte.
Una vez que que concluya la descarga comenzaremos a instalar, para ello abriremos el ejecutable y nos saldra la primera pantalla en la cual nos dice el contenido de la instalación, tal como se ve en la imagen.
Despues de dar click al boton Next nos aparecera una ventana en la cual nos preguntara si estamos de acuerdo con la licencia del producto, asi que la leemos y si estamos de acuerdo seleccionamos el check con una palomita “I Accept the terms….” para despues dar click en Next.
En la siguiente ventana aparecera los terminos de licencia de JUnit los cuales tambien tenemos que leer, se que si van a leer, si estamos de acuerdo con la licencia aceptamos los terminos pero si por alguna razón religiosa, politica etc no estan de acuerdo con los terminos de la licencia pues eligen No instalar JUnit y le dan siguiente, tal como se observa en la siguiente pagina.
Prosiguiendo, nos pedira la ruta de la instalación de NetBeans y tambien nos pedira la ruta de JDK, si no tenemos instalado el JDK nos pondra ese campo de texto en blanco y si el campo de texto esta en blanco la instalacion dejara de avanzar de manera que no se realizara.
En caso de eso tienes que descargar el JDK de JAVA, que lo puedes descargar de la siguiente pagina http://www.oracle.com/technetwork/es/java/javase/downloads/index.html
Debe de aparecer tal y como se ve en la imagen siguiente:
Si todo ha salido bien hasta aqui y damos Click en Next entonces la pantalla siguiente saldra la instalación en curso, va a tardar unos minutos, así que sean pacientes.
Al final de la instalación les saldra una ultima ventana en donde se le pedira apoyo para enviar datos de forma anonima para mejorar este producto, yo en lo particular le puse que no, pero igual si ustedes desean ayudar les recomiendo que investiguen mas a fondo la manera de recolección y tratado de tales datos, yo en mi caso como ignoro la manera en la cual se usaran y recolectaran tales datos preferi darle que no.
Aun asi camaradas no olviden apoyar al software libre distribuyendo o donando, recuerden siempre que el software libre es patrimonio de la humanidad, y mucha gente de manera desinterezada trabaja en ello y libera su trabajo no quedandoselo para si mismo.
Bien una vez instalado ya tendremos la IDE tal y como se muestra en la imagen.
Y ya esta hecho el primera paso para empezar lo que podria ser un gran proyecto, de aqui en adelante lo unico que te limita es tu imaginación, y tambien en donde todos vean problemas tu encuentrales solución, los problemas de otros pueden ser tu mina de oro tu alimento tu pan de cada dia, muchos buscan soluciones y tu las puedes dar generando aplicaciones.
Muchas gracias camaradas por llegar a leer hasta el final, si te ha servido este blog favor de comentar y puntuar sea negativo y positivo, los comentarios para mejorar bien fundamentados y no anonimos seran bien recibidos, no olviden tambien compartir si la información les es de utilidad, saludos y hasta la proxima