Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Neodatis. Fallo al acceder a objeto para consultar

Estas en el tema de Neodatis. Fallo al acceder a objeto para consultar en el foro de Java en Foros del Web. Estoy haciendo unos ejercicios básicos para aprender a manejarme en Neodatis con Java y me ha surgido un pequeño problema. Tengo dos tipos de objetos ...
  #1 (permalink)  
Antiguo 03/03/2016, 17:09
inazense
Invitado
 
Mensajes: n/a
Puntos:
Pregunta Neodatis. Fallo al acceder a objeto para consultar

Estoy haciendo unos ejercicios básicos para aprender a manejarme en Neodatis con Java y me ha surgido un pequeño problema.

Tengo dos tipos de objetos almacenados en la base de datos. Departamentos y Empleados.
El objeto Departamentos tiene las siguientes propiedades:
private*int*deptNo;
private*String*dnombre;
private*String*loc;

Y la clase Empleados éstas:
private*int*empNo;
private*String*apellido;
private*String*oficio;
private*Empleados*dir;
private*java.sql.Date*fechaAlt;
private*float*salario;
private*float*comisión;
private*Departamentos*dept;

Ambas con sus respectivos getters y setters, claro.

El caso es que ahora quiero listar todos los apellidos de los empleados que trabajen en el departamento 10, pero no tengo muy claro como debo acceder a la propiedad deptNo del Departamento.

El código que he probado es tal que así:

Código Java:
Ver original
  1. ODB odb = ODBFactory.open("primeraBase.db");
  2. System.out.println("Apellidos del departamento 10");
  3. ICriterion criterio = Where.equal("dept.getDeptno()", 10);
  4. CriteriaQuery query = new CriteriaQuery(Empleados.class, criterio);
  5. obEmp = odb.getObjects(query);
  6.  
  7. while(obEmp.hasNext()){
  8.     Empleados empleados = obEmp.next();
  9.     System.out.println(empleados.getApellido());
  10. }

Y al fallar probé con esta cláusula Where también
Código Java:
Ver original
  1. ICriterion criterio = Where.equal("dept.get(deptNo)", 10);

En ambas me tira el siguiente error:
NeoDatisError:1000:Attribute get(deptNo) used in criteria queria does not exist on class informacion.Departamentos

¿Alguna guía de como puedo hacer el Where sobre ese campo?
  #2 (permalink)  
Antiguo 03/03/2016, 17:48
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: Neodatis. Fallo al acceder a objeto para consultar

http://neodatis.wikidot.com/5m-tutorial#toc2

Lo que tienes que poner es el nombre del campo, no del método.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #3 (permalink)  
Antiguo 03/03/2016, 17:55
inazense
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Neodatis. Fallo al acceder a objeto para consultar

Lo había comprendido mal, pensaba que al ser propiedad privada debía acceder con un getter.
Gracias

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:34.