JBO-29000: Exception [TOPLINK-4002] – Luchando contra JDeveloper y ADF

Definitivamente en Oracle necesitan contratar a algún que otro incompetente. El motivo esta bien claro, al ser todos tan eficaces y preparados, cuando se encuentran con un mensaje de error semejante siempre sabrían como resolverlo inmediatamente.Este error ocurria siempre que intentabamos insertar un usuario en la tabla USERS a traves de un formulario. Depurando paso por paso hemos descubierto que todo funcionaba correctamente hasta llegar a la llamada a uow.commit(); donde se lanza la excepción.

Hemos seguido todos los pasos (incluso varias veces) del tutorial para ADF que Oracle proporciona intentando adaptar todos los pasos a nuestra aplicación.

Dejando nuestro código en la clase que hace de PublicFacadeBean de la siguiente manera:

public Users createUser(Long userID, String name,String password, String email, String perm){
UnitOfWork uow = getSessionFactory().acquireUnitOfWork();

Users newInstance = (Users)uow.newInstance(Users.class);

newInstance.setId(userID);
newInstance.setName(name);
newInstance.setEmail(email);
newInstance.setPassword(password);
newInstance.setPerm(perm);
newInstance.setAtempts(0);

uow.commit();

return newInstance;
}

Tras probar un montón de alternativas y buscar información por todos lados (solo hemos descubierto que esta excepción se lanza siempre sea cual sea el problema, así que no nos vale investigar), al final nos iluminamos con la idea feliz de usar la técnica del avestruz, consistente en meter el “commit” en un bloque “try” (meter la cabeza debajo de la tierra y hacer como si no pasara nada).

try{
uow.commit();
}
catch (Exception e){

}

No dabamos crédito cuando descubrimos que con esto todo funciona bien, pero digo yo que podrían dar un poco más de detalle en los mensajes de error.

13 Responses to “JBO-29000: Exception [TOPLINK-4002] – Luchando contra JDeveloper y ADF”

  1. Titiritero dice:

    Eso por utilizar oracle y cosas raras. Other option is anwser to your teacher.

  2. Titiritero dice:

    Sorry, yesterday i said answer and this word not exits. I should want to say/tell ask (preguntar).

    The aprendiz boicot is motived by your ingrato pagerank. In my blog, ingrato’s link has be saboteado by a titiritero.

  3. Titiritero dice:

    Al igual que gulmu, el blog de Repako (significa energúmeno en polako), no se puede acceder.

    En tus primeros post noruegos hablabas de las bicis, hoy tengo que decirte que aquí en la UM también se pueden usar bicis dentro del campus. Yo y mi aprendiz hemos estrenado este nuevo servicio.

  4. Titiritero dice:

    Where i said “has be” then i say “has been” now.
    Donde dije digo ahora digo digo.

    The best, i left to say my aprendiz has broken a pedal.
    Olvide decir que mi aprendiz ha roto un pedal.

    Opening Titiritero (Escuela financiada por la comunidad de titiriteros sin arreglo)

  5. Alfredo dice:

    Habeis sacado fotos a las bicis? teneis que hacerlo, quiero verlas

  6. Alfredo dice:

    No has enseñado a tu aprendiz a pedalear como las gentes de bien, en lugar de eso le has enseñado a pedalear como un rompedor de Españas, que ha empezado a roper España desde esa bicicleta española que no tenia culpa ninguna.

  7. Titiritero dice:

    Aquí está la foto con los mandamases.

    Tienen su cestita y todo. La bici que ha destrozado mi aprendiz era azul y la mía era roja como la de la izquierda de la foto. Y no tienen marchas (y en Barcelona cuna de la masonería sí), cosa que mi aprendiz crítica porque hay que ir a piñon fijo ya sea cuesta abajo o con un puerto de subida desde las facultades de veterinaria a informática (De primera categoría).

  8. Alfredo dice:

    Eso para cuando llegue la calor con toda las chicharras agonizando

  9. Titiritero dice:

    Si no te gusta la foto, ya mandaré a mi aprendiz a echar una foto con más fundamento.

  10. Carlos dice:

    Mola, el post habla de una cosa y la peña pone comentarios de lo que le sale del n***

  11. Alfredo dice:

    Esa es la magia de este blog.

  12. Titiritero dice:

    En efecto. Creo que debo de sentirme aludido. Esto le da riqueza al foro. Si no tuviera comentarios aunque se desviarán de la cuestión de largo, puesto sería muy soso. Además de que el ingrato pasaría de ingrato a ingrato censurador. Y además este blog es mio como ya dije en los comentarios de las primeras entradas por mis *******.

  13. Titiritero dice:

    He dicho foro cuando quería decir riqueza en el blog.

    Ante todo esto no es un foro y menos un fogo libegal.

Leave a Reply


4 + = 13