Bueno, despues de mucho tiempo de escribir nada en el blog, por fin me estoy desocupando de mi trabajo, termine de estudiar para la certificacion de Oracle SCBCD 5 y logre pasar el examen, com esta ya tengo tres en mi CV!
Ahora estoy esperando a que liberen las nuevas certificaciones de Oracle para la version 6 de JEE!
Saludos.
miércoles, 1 de diciembre de 2010
miércoles, 12 de mayo de 2010
Uso de Rangos en Groovy
Uso de Rangos en Groovy
Para definir un rango se usa .., por ejemplo
10..20
un rango del 10 hasta el 20.
Para que el 20 sean exlusivo se debe definir con el menor que, por ejemplo
10..<20
un rango del 10 hasta el 19
A continuacion unos ejemplos
Si ejecutamos el programa la salida es
Suerte.
Para definir un rango se usa .., por ejemplo
10..20
un rango del 10 hasta el 20.
Para que el 20 sean exlusivo se debe definir con el menor que, por ejemplo
10..<20
un rango del 10 hasta el 19
A continuacion unos ejemplos
if ( 1 in 3..5 ) {
println "Si esta dentro del rango"
} else {
println "No esta dentro del rango"
}
//No esta dentro del rango
for (i in 1..4) {
print "${i} ";
}
//1 2 3 4
println ""
for (i in 1..<4) {
print "${i} ";
}
//1 2 3
println ""
for (a in 'a'..'g') {
print "${a} "
}
//a b c d e f g
println ""
(1..10).each(){ a->
print "${a} "
}
//1 2 3 4 5 6 7 8 9 10
println ""
5.each () {
print "${it}"
}
//5
println ""
switch (2) {
case 1..4:
print "Dentro del rango 1-4"
break
case 5..10:
print "Dentro del rango 5-10"
break
}
//Dentro del rango 1-4
Si ejecutamos el programa la salida es
No esta dentro del rango
1 2 3 4
1 2 3
a b c d e f g
1 2 3 4 5 6 7 8 9 10
5
Dentro del rango 1-4
Suerte.
lunes, 3 de mayo de 2010
Uso de env-entry de EJB 3.0
Uso de env-entry de EJB 3.0
Con este ejercicio se muestra el uso de la inyeccion de una cadena desde el XML de EJB 3.0. Desde el XML se inyecta la cadena Dracof a la propiedad nombreCliente del EJB Stateless.
Primero se define la clase SaludoBean como un Stateless con nombre InyeccionSaludoBean y JNDI ejb/InyeccionSaludoBean.
Se observa que el EJB define la propiedad nombreCliente el cual se le inyectara el recurso con nombre nombreCliente.
El recurso nombreCliente sera definido en el XML ejb-jar-xml como sigue
Dentro del XML se define el nombre de la entrada de entorno (env-entry-name) su tipo (env-entry-type) y valor (env-entry-value).
Se crea un cliente para ejecutar el metodo imprimeSaludo() del Stateless.
Nota: Para este ejercicio el jar del EJB se deploya en un WebLogic 10
Suerte.
Con este ejercicio se muestra el uso de la inyeccion de una cadena desde el XML de EJB 3.0. Desde el XML se inyecta la cadena Dracof a la propiedad nombreCliente del EJB Stateless.
Primero se define la clase SaludoBean como un Stateless con nombre InyeccionSaludoBean y JNDI ejb/InyeccionSaludoBean.
@Stateless(name="InyeccionSaludoBean", mappedName="ejb/InyeccionSaludoBean")
public class SaludoBean implements Saludo {
@Resource(name="nombreCliente")
private String nombreCliente;
@Override
public void imprimeSaludo() {
if (nombreCliente == null) {
System.out.println("El nombreCliente es NULL");
} else {
System.out.println("El nombreCliente NO! es NULL");
}
System.out.println("Dentro del metodo imprimeSaludo " + nombreCliente);
}
}
Se observa que el EJB define la propiedad nombreCliente el cual se le inyectara el recurso con nombre nombreCliente.
El recurso nombreCliente sera definido en el XML ejb-jar-xml como sigue
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd">
<display-name>Inyeccion</display-name>
<enterprise-beans>
<session>
<ejb-name>InyeccionSaludoBean</ejb-name>
<env-entry>
<env-entry-name>nombreCliente</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>Dracof</env-entry-value>
</env-entry>
</session>
</enterprise-beans>
</ejb-jar>
Dentro del XML se define el nombre de la entrada de entorno (env-entry-name) su tipo (env-entry-type) y valor (env-entry-value).
Se crea un cliente para ejecutar el metodo imprimeSaludo() del Stateless.
Nota: Para este ejercicio el jar del EJB se deploya en un WebLogic 10
public static void main(String[] args) {
Properties props = new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
props.put(Context.PROVIDER_URL, "t3://localhost:7030");
try{
Context context = new InitialContext(props);
Object obj = context.lookup("ejb.InyeccionSaludoBean#org.dracof.inyeccion.Saludo");
Saludo saludo = (Saludo) PortableRemoteObject.narrow(obj, Saludo.class);
saludo.imprimeSaludo();
} catch (Exception ex) {
ex.printStackTrace();
}
}
El nombreCliente NO! es NULL
Dentro del metodo imprimeSaludo Dracof
Suerte.
domingo, 21 de febrero de 2010
Passwords en Oracle 11g
Despues de una instalacion exitosa de Oracle 11g en W7, intente entrar a la consola de administracion con
https://localhost:1158/em/
antes para usar el password SYS abri una session SQL PLUS usando el comando
y ejecutando el siguiente alter al usuario SYS
Con esto ya puedo usar Oracle 11g y hacer uso de la BD.
Suerte.
https://localhost:1158/em/
antes para usar el password SYS abri una session SQL PLUS usando el comando
sqlplus / as sysdba
y ejecutando el siguiente alter al usuario SYS
alter user SYS identified by "manager";
Con esto ya puedo usar Oracle 11g y hacer uso de la BD.
Suerte.
miércoles, 13 de enero de 2010
Atributo method del action en Struts2
Atributo method del action en Struts2
En el primer ejemplo de struts2 (PrimerProgramaStruts2) se muestra la accion org.dracof.struts2.actions.MiAccion con alias miAccion, cuando se realice el llamado a esta por default struts buscara el metodo public String execute(), si no lo encuentra lanza una excepcion diciendo que El recurso requerido (No result defined for action org.dracof.struts2.actions.MiAccion and result success) no esta disponible.
Para escribir multiples metodos dentro del Action se puede usar el atributo method del elemento action de nuestro xml, quedando
Se modifica el nombre del metodo execute por otroMetodo de la clase MiAccion y se manda el mensaje ‘Pasando por el metodo otroMetodo de MiAccion’
Quedando la clase como sigue
Con esto cada vez que se llame a miAccion se ejecutara el metodo otroMetodo.
Si probamos el ejercicio velos la salida a consola
Descargar war MethodAction.war
Descargar proyecto MethodAction.zipwar
Suerte.
En el primer ejemplo de struts2 (PrimerProgramaStruts2) se muestra la accion org.dracof.struts2.actions.MiAccion con alias miAccion, cuando se realice el llamado a esta por default struts buscara el metodo public String execute(), si no lo encuentra lanza una excepcion diciendo que El recurso requerido (No result defined for action org.dracof.struts2.actions.MiAccion and result success) no esta disponible.
Para escribir multiples metodos dentro del Action se puede usar el atributo method del elemento action de nuestro xml, quedando
…
<struts>
<package name="default" extends="struts-default" namespace="/">
<action name="miAccion" method="otroMetodo" class="org.dracof.struts2.actions.MiAccion">
<result name="success">resultado.jsp</result>
</action>
</package>
</struts>
…
Se modifica el nombre del metodo execute por otroMetodo de la clase MiAccion y se manda el mensaje ‘Pasando por el metodo otroMetodo de MiAccion’
Quedando la clase como sigue
public class MiAccion {
public String otroMetodo() throws Exception {
System.out.println("Pasando por el metodo otroMetodo de MiAccion!");
return "success";
}
}
Con esto cada vez que se llame a miAccion se ejecutara el metodo otroMetodo.
Si probamos el ejercicio velos la salida a consola
Descargar war MethodAction.war
Descargar proyecto MethodAction.zipwar
Suerte.
Suscribirse a:
Entradas (Atom)