Foro Oficial de Java

No, muchas gracias por la ayuda men pero creo que pasaba era lo siguiente, ya lo arreglé.

Creo que el script era para un album fotografico, y yo le incrusté un video entonces el autoplay ese que está al final hacia pasar las fotos, simplemente le coloqué false y listo ya se reproduce el video normalmente. ^^

De todas formas muchas gracias por el interes.

Saludos.
 
Buenos dias,

Hay alguna forma de compartir documentos e imagenes entre varias apps alojadas dentro de Apache Tomcat?...

Es decir, que yo tenga una carpeta y que varias apps dentro de un mismo contenedor las puedan ver...

Gracias!!!
 
Buenos días,

Estoy haciendo una aplicación para el registro de clientes y tengo el siguiente problema. Manejo dos paquetes uno de interfaz (que tiene que ver con beans) y uno de lógica donde hago todo el análisis del programa. Con respecto al método de interfaz renovar envio los datos al paquete de lógica a una clase controladora Sesion y ahi me indica un error diciendo: non-static method (el método de la lógica) can't be referenced from a static context. Como puedo solucionarlo?
El código es este:

//Interfaz
public String renovar (String nit) throws Exception {
return Sesion.renovarJuridico(nit); //Aqui es el error
}

//Logica
public String renovarJuridico (String rNit) throws Exception {

if ((juridicos.containsKey(rNit))) {
personaJuridica aCambiar = juridicos.get(rNit);
if (aCambiar.getEstado().equals("Activo")) {
aCambiar.setEstado("Inactivo");
juridicos.remove(rNit);
juridicos.put(rNit, aCambiar);
}
else {
aCambiar.setEstado("Activo");
juridicos.remove(rNit);
juridicos.put(rNit, aCambiar);
}
return "renovado";
}
return "NoRenovado";
}

Gracias por su ayuda
 
amigo, tiene varias opciones para solucionar el error, sin embargo tiene que tener clara la diferencia entre métodos de objetos y métodos de clase, por lo que alcanzo a entender del código creo que lo más recomendable es hacer el llamado como método de objeto, es decir, en la Interfaz crear un nuevo objeto de clase sesión y usarlo para hacer el llamado:

//Interfaz
public String renovar (String nit) throws Exception {
Sesion sesionObj = new Sesion();
return sesionObj.renovarJuridico(nit); //Aqui es el error
}

la otra opción es hacer renovarJuridico un método de clase:

//Logica
public static String renovarJuridico (String rNit) throws Exception {

obviamente habría que entender un poco más la estructura de la aplicación para recomendar una de las dos opciones

saludos
 
  • Me gusta
Reacciones: 2 personas
Buenas.

Necesito un favor gigante, orientación sobre un trabajo final (no necesito que me hagan todo trabajo y tampoco es lo que estoy pidiendo).

Necesito realizar un juego de tablero, en java, primordialmente que el codigo este bien, ya la interfaz grafica se hara despues. El juego en cuestion es este: http://www.disfrutalasmatematicas.com/juegos/puntos-y-cuadros.html

El semestre pasado hice "casi" ese mismo, pero en C, y todo el codigo en un solo bloque (el main) pero el juego digamos estaba a medias. Por eso acuda por aca haber si me pueden dar unas buenas indicaciones para poder trabajar.

De antemano, gracias a toda la ayuda prestada.
 
Buenas.

Necesito un favor gigante, orientación sobre un trabajo final (no necesito que me hagan todo trabajo y tampoco es lo que estoy pidiendo).

Necesito realizar un juego de tablero, en java, primordialmente que el codigo este bien, ya la interfaz grafica se hara despues. El juego en cuestion es este: http://www.disfrutalasmatematicas.com/juegos/puntos-y-cuadros.html

El semestre pasado hice "casi" ese mismo, pero en C, y todo el codigo en un solo bloque (el main) pero el juego digamos estaba a medias. Por eso acuda por aca haber si me pueden dar unas buenas indicaciones para poder trabajar.

De antemano, gracias a toda la ayuda prestada.


Necesita mas ayuda con la UI o con la lógica... ??
 
Diria que con todo un pokito jejeje.

Aunque lo que mas canas me saca es hacer la validacion de si una posicion se puede jugar o no.
Teniendo como ejemplo el juego del link. tengo pensado hacerlo asi.

Una posicion dentro de la matriz, es donde el jugador puede dar click, otra posicion dentro de la matriz, seria la linea que se forma. En ese orden de ideas entonces para formar un cuadrado seria dado por 8 posiciones dentro de la matriz (4 correspondientes a los puntos de jugada y 4 correspondientes a las lineas marcadas de jugada). La posicion en la matriz dentro del cuadrado formado, seria un punto para un jugador.

Espero haberme hecho entender con palabras :D

Supongo que eso seria un metodo dedicado solo a validacion. ya lo otro creo que se me hace mas trabajable.

SI algo dejo mi msn: anfe.mtb@gmail.com
 
Experiencia en el desarrollo java sobre mac

Hola

quisiera conocer su experiencia en el desarrollo de java sobre mac OS, la idea es migrar de linux a mac pero no estoy muy seguro si es una buena decision

gracias por sus comentarios
 
Hola

quisiera conocer su experiencia en el desarrollo de java sobre mac OS, la idea es migrar de linux a mac pero no estoy muy seguro si es una buena decision

gracias por sus comentarios

No hay ningun problema. Puede usar Eclipse o JDeveloper para los desarrollos.
 
Otro Problema

amigo, tiene varias opciones para solucionar el error, sin embargo tiene que tener clara la diferencia entre métodos de objetos y métodos de clase, por lo que alcanzo a entender del código creo que lo más recomendable es hacer el llamado como método de objeto, es decir, en la Interfaz crear un nuevo objeto de clase sesión y usarlo para hacer el llamado:

//Interfaz
public String renovar (String nit) throws Exception {
Sesion sesionObj = new Sesion();
return sesionObj.renovarJuridico(nit); //Aqui es el error
}

la otra opción es hacer renovarJuridico un método de clase:

//Logica
public static String renovarJuridico (String rNit) throws Exception {

obviamente habría que entender un poco más la estructura de la aplicación para recomendar una de las dos opciones

saludos

Hola muchas gracias por su recomendación, opte por la segunda opción de dejar los métodos de la lógica como estáticos y en ella también sus atributos, ahora tengo un problema con respecto a las páginas JSP, estoy manejando Tomcat 7, JSF 1.2 y en base de datos Oracle. Tengo que realizar una consulta del sistema de clientes he empleado los dataTable que cuenta JSF pero no me genera ningún reporte. Cómo me recomendarían hacer esta consulta que trayendo la información de la base de datos debo mostrarla la pantalla de las páginas en una especie de tabla pero permitiendo manejar filtros (los clientes que tienen un estado determinado, con el tid y nid de un cliente, etc.) muy similar a las consultas en SQL.

Muchas gracias por su atención.
 
Saludos, soy nuevo en esto y tengo este inconveniente:

Tengo esto en un botón (Action Performed):
ResultSet rs = con.consultafechaH(historiac1);
try {
while (rs.next()){
jComboBox1.addItem(rs.getString(1));}


}
catch(Exception e){
javax.swing.JOptionPane.showMessageDialog(null, "Error:"+e);
}
para realizar un query y que me cargue los datetime de una BD en un combobox..

y esto para que me devuelva el valor del item seleccionado en el combobox y así hacer un Query y leer el resto de campos de la tabla de la BD al formulario...

historiac1.setFecha(jComboBox1.getSelectedItem().t oString().trim());
javax.swing.JOptionPane.showMessageDialog(null,his toriac1.getFecha());
try {
ResultSet rs = con.consultaHistoria(historiac1);
abdomen.setText(rs.getString(21).toUpperCase());
afamiliares.setText(rs.getString(12).toUpperCase() );
aobstetras.setText(rs.getString(11).toUpperCase()) ;
apersonales.setText(rs.getString(9).toUpperCase()) ;
quirurgicos.setText(rs.getString(10).toUpperCase() );
cardiop.setText(rs.getString(20).toUpperCase());
ccc.setText(rs.getString(18).toUpperCase());
diag.setText(rs.getString(25).toUpperCase());
dir.setText(rs.getString(4).toUpperCase());
extremidades.setText(rs.getString(23).toUpperCase( ));
fc.setText(rs.getString(14).toUpperCase());
fr.setText(rs.getString(15).toUpperCase());
gentomano.setText(rs.getString(22).toUpperCase());
lab.setText(rs.getString(26).toUpperCase());
mconsulta.setText(rs.getString(8).toUpperCase());
nmadre.setText(rs.getString(7).toUpperCase());
npadre.setText(rs.getString(6).toUpperCase());
peso.setText(rs.getString(16).toUpperCase());
respaciente.setText(rs.getString(3).toUpperCase()) ;
snc.setText(rs.getString(24).toUpperCase());
ta.setText(rs.getString(13).toUpperCase());
talla.setText(rs.getString(17).toUpperCase());
tel.setText(rs.getString(5).toUpperCase());
temp.setText(rs.getString(28).toUpperCase());
torax.setText(rs.getString(19).toUpperCase());
trat.setText(rs.getString(27).toUpperCase());
}
catch(Exception e)
{
javax.swing.JOptionPane.showMessageDialog(null, "Error:"+e);
}
pero, al devolverme del combobox, me devuelve la fecha y hora con un .0 ej: 2011-11-18 09:38:23.0, así me aparecen en el combobox, pero en la BD no está así, y pues no sé como quitarle ese .0 para poder hacer el query y poder llamar al resto de campos. Any idea?
 
Saludos, soy nuevo en esto y tengo este inconveniente:

Tengo esto en un botón (Action Performed):
ResultSet rs = con.consultafechaH(historiac1);
try {
while (rs.next()){
jComboBox1.addItem(rs.getString(1));}


}
catch(Exception e){
javax.swing.JOptionPane.showMessageDialog(null, "Error:"+e);
}
para realizar un query y que me cargue los datetime de una BD en un combobox..

y esto para que me devuelva el valor del item seleccionado en el combobox y así hacer un Query y leer el resto de campos de la tabla de la BD al formulario...

historiac1.setFecha(jComboBox1.getSelectedItem().t oString().trim());
javax.swing.JOptionPane.showMessageDialog(null,his toriac1.getFecha());
try {
ResultSet rs = con.consultaHistoria(historiac1);
abdomen.setText(rs.getString(21).toUpperCase());
afamiliares.setText(rs.getString(12).toUpperCase() );
aobstetras.setText(rs.getString(11).toUpperCase()) ;
apersonales.setText(rs.getString(9).toUpperCase()) ;
quirurgicos.setText(rs.getString(10).toUpperCase() );
cardiop.setText(rs.getString(20).toUpperCase());
ccc.setText(rs.getString(18).toUpperCase());
diag.setText(rs.getString(25).toUpperCase());
dir.setText(rs.getString(4).toUpperCase());
extremidades.setText(rs.getString(23).toUpperCase( ));
fc.setText(rs.getString(14).toUpperCase());
fr.setText(rs.getString(15).toUpperCase());
gentomano.setText(rs.getString(22).toUpperCase());
lab.setText(rs.getString(26).toUpperCase());
mconsulta.setText(rs.getString(8).toUpperCase());
nmadre.setText(rs.getString(7).toUpperCase());
npadre.setText(rs.getString(6).toUpperCase());
peso.setText(rs.getString(16).toUpperCase());
respaciente.setText(rs.getString(3).toUpperCase()) ;
snc.setText(rs.getString(24).toUpperCase());
ta.setText(rs.getString(13).toUpperCase());
talla.setText(rs.getString(17).toUpperCase());
tel.setText(rs.getString(5).toUpperCase());
temp.setText(rs.getString(28).toUpperCase());
torax.setText(rs.getString(19).toUpperCase());
trat.setText(rs.getString(27).toUpperCase());
}
catch(Exception e)
{
javax.swing.JOptionPane.showMessageDialog(null, "Error:"+e);
}
pero, al devolverme del combobox, me devuelve la fecha y hora con un .0 ej: 2011-11-18 09:38:23.0, así me aparecen en el combobox, pero en la BD no está así, y pues no sé como quitarle ese .0 para poder hacer el query y poder llamar al resto de campos. Any idea?
Hace mucho no toco Java pero se me ocurre una solución independiente del lenguaje.
Antes de hacer el Query le podés hacer un pre-procesamiento a la cadena que contiene la fecha con el que te encargués de buscar dónde está el punto "." y removerle tanto el "." como lo que esté después de él.

Podés utilizar el método "indexOf" de String para saber dónde está el punto y sabiendo esa posición podés eliminar lo que esté de ahí hacia adelante con el método "substring" desde la posición 0 hasta la que te devolvió indexOf - 1.
 
saludos,

supongo que es en este combobox que se sale el el cero de más: jComboBox1.addItem(rs.getString(1));

lo primero es que en la base de datos supongo que las fechas están almacenadas en algun tipo de dato date o timestamp, si es asi la forma correcta es utilizar el método getDate o getTimestamp del result set:
rs.getTimestamp(1);

el .0 que le sale es porque en java 5 se incluyo la precisión de nano segundos en los temas de fecha y hora, entonces al convertir el timestamp a string el le pone los nanosegundos después del punto, la forma correcta de convertir de Timestamp a String es por medio de la clase DateFormat, y que de acuerdo a lo que necesita mostrar (año-mes-dia-hora) considero que la clase SimpleDateFormat le puede servir mejor:
SimpleDateFormat

no tengo un compilador acá a la mano pero pensaría que queda algo asi:

SimpleDateFormat sf = new SimpleDateFormat();
jComboBox1.addItem(sf.format(rs.getTimestamp(1)));
 
  • Me gusta
Reacciones: 6 personas
saludos,

supongo que es en este combobox que se sale el el cero de más: jComboBox1.addItem(rs.getString(1));

lo primero es que en la base de datos supongo que las fechas están almacenadas en algun tipo de dato date o timestamp, si es asi la forma correcta es utilizar el método getDate o getTimestamp del result set:
rs.getTimestamp(1);

el .0 que le sale es porque en java 5 se incluyo la precisión de nano segundos en los temas de fecha y hora, entonces al convertir el timestamp a string el le pone los nanosegundos después del punto, la forma correcta de convertir de Timestamp a String es por medio de la clase DateFormat, y que de acuerdo a lo que necesita mostrar (año-mes-dia-hora) considero que la clase SimpleDateFormat le puede servir mejor:
SimpleDateFormat

no tengo un compilador acá a la mano pero pensaría que queda algo asi:

SimpleDateFormat sf = new SimpleDateFormat();
jComboBox1.addItem(sf.format(rs.getTimestamp(1)));
De esa forma me manda en formato dd/mm/yy hh:mm AM/PM :(

edit: corregí haciendo esto:
jComboBox1.addItem(rs.getString(1).replace(".0", "").trim()); y ya manda sin el .0, pero me esta arrojando java.lang.NullPointerException al consultar.
Consulto de esta forma:
historiac1.setFecha(jComboBox1.getSelectedItem().toString().trim());
javax.swing.JOptionPane.showMessageDialog(null,historiac1.getFecha());
try {
ResultSet rs = con.consultaHistoria(historiac1);
abdomen.setText(rs.getString(21).toUpperCase());
afamiliares.setText(rs.getString(12).toUpperCase());
aobstetras.setText(rs.getString(11).toUpperCase());
apersonales.setText(rs.getString(9).toUpperCase());
quirurgicos.setText(rs.getString(10).toUpperCase());
cardiop.setText(rs.getString(20).toUpperCase());
ccc.setText(rs.getString(18).toUpperCase());
diag.setText(rs.getString(25).toUpperCase());
dir.setText(rs.getString(4).toUpperCase());
extremidades.setText(rs.getString(23).toUpperCase());
fc.setText(rs.getString(14).toUpperCase());
fr.setText(rs.getString(15).toUpperCase());
gentomano.setText(rs.getString(22).toUpperCase());
lab.setText(rs.getString(26).toUpperCase());
mconsulta.setText(rs.getString(8).toUpperCase());
nmadre.setText(rs.getString(7).toUpperCase());
npadre.setText(rs.getString(6).toUpperCase());
peso.setText(rs.getString(16).toUpperCase());
respaciente.setText(rs.getString(3).toUpperCase());
snc.setText(rs.getString(24).toUpperCase());
ta.setText(rs.getString(13).toUpperCase());
talla.setText(rs.getString(17).toUpperCase());
tel.setText(rs.getString(5).toUpperCase());
temp.setText(rs.getString(28).toUpperCase());
torax.setText(rs.getString(19).toUpperCase());
trat.setText(rs.getString(27).toUpperCase());
}
catch(Exception e)
{
javax.swing.JOptionPane.showMessageDialog(null, "Error:"+e);
}

y el método con que consulto es este:
public ResultSet consultaHistoria(medicdoft.beans.historiac h)
{
PreparedStatement ps=null;
ResultSet rs = null;
try
{
ps = c.prepareStatement("select * from historia where cedula="+h.getCod()+", fecha="+h.getFecha()+"");
rs = ps.executeQuery();

while(rs.next())
{
return rs;
}
}catch (Exception ex){
System.out.print("Error al consultar: "+ex);
}

return null;

}

Que estoy haciendo mal?
 

Los últimos temas