Bonjour,

J'ai créé dans une base sql une table image qui contient 3 champs:id, name et image. Ce dernier est un champ blob.
Le champ image est en fait un pdf converti en blob pour être stocké.

Je voudrais maintenant récupérer le champ image pour recréer un pdf.
Je réalise ceci dans dans une classe de test.
Je récupère bien mon image mais lorsque je tente d'accéder à un champ tel que sa taille, je reçois une exception sql.
Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
public class ImageTestCaseLectureEnBase {
 
		static EntityManager em;
		static EntityTransaction tx;
 
 
		@BeforeClass
		public static void createEntityManager() {
			EntityManagerFactory emFactory = Persistence
					.createEntityManagerFactory("myproject");
			em = emFactory.createEntityManager();
		}
 
		@Before
		public void clearEntityManager() {
			em.clear();
		}
 
		@Test
		public void testLecturePDF() {
 
 
		try {
			tx = em.getTransaction();
			tx.begin();
 
		         Image find = em.find(Image.class, 3);
		         Blob pdf = find.getImage();
		         long lengthOfPdf=pdf.length();
 
		} catch (SQLException e) {
		e.printStackTrace();
		}	
 
			tx.commit();
		}
 
		@AfterClass
		public static void closeEntityManager() {
			em.close();
		}
 
}

Si vous comprenez mon erreur vous me rendrez un grand service!
Merci d'avance!