J'ai un ORM JPA Spring Data implémenté à partir du générateur JHipster avec le cache de 2ème niveau utilisant EHCache. (Je pense)Spring Data JPA, findOne null, @Query renvoie l'enregistrement
J'ai copié les données d'une table de base de données à l'autre (directement dans SQL en utilisant la voie de migration):
CREATE TABLE lobby (LIKE command_center INCLUDING ALL);
INSERT INTO lobby SELECT * FROM command_center;
et a créé une nouvelle entité:
@Entity
@Table(name = "lobby")
@Document(indexName = "lobby")
public class Lobby {
...
Lobby lobby = lobbyRepository.findOne(id)
(retours null même si l'enregistrement est dans la base de données).
Cependant, si je crée une requête:
@Query("SELECT lobby FROM Lobby lobby WHERE id = ?1)
public getOneById(Long id)
Renvoie l'enregistrement?
Cela peut ne pas être le cas mais je ne peux pas penser à n'importe quoi d'autre qui pourrait causer ceci. Si je crée de nouveaux enregistrements de lobby, ils sont renvoyés correctement par findOne
De même, findAll
retourne tous les enregistrements correctement.
Cela a du sens, après avoir examiné je serais d'accord. Je trouve tous les enregistrements si je fais un 'lobbyRepository.findAll()', mais si je fais 'lobbyRepository.findOne (..)' renvoie null. –