Ho un'applicazione che è in esecuzione su tomcat, uno dei metodi è, creando una semplice anteprima da un'immagine jpeg. Le funzioni funzionano bene offline e una settimana fa anche su tomcat. Ma ora ottengo il seguente errore:NoClassDefFoundError durante l'accesso a GraphicsEnvironment.getLocalGraphicsEnvironment su Tomcat
java.lang.NoClassDefFoundError
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:164)
java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)
java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1141)
eval.impl.ImageEval.getThumbnail(ImageEval.java:155)
eval.impl.ImageServlet.doGet(ImageServlet.java:79)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Non penso che ho cambiato nulla quello che dovrebbe influenzare questo (effettivamente non ho cambiato la funzione, a secondo il repository SVN), quindi deve essere un problema di biblioteca Ma non riesco a capire cosa manca. Qui ci sono le linee reali dalla funzione di getThumbnail, dove l'errore occures:
BufferedImage thumbImage = new BufferedImage(thumbWidth,
thumbHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics2D = thumbImage.createGraphics();
graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
graphics2D.drawImage(simage, 0, 0, thumbWidth, thumbHeight, null);
[modifica] Ho deciso di aggiornare la descrizione del problema un po '. Sì, sembra che non riesca a trovare qualche classe da java.awt o da una relativa. Ma esistono sul server nella jvm. La modalità headless di Java non risolve il problema. In un altro progetto lo stesso codice esatto, ma all'interno di un servizio web asse2 su questo server funziona correttamente. [/ edit]
Non hai classe. – user105033
È in esecuzione in modalità headless? –
Lo stacktrace dovrebbe contenere il nome della classe mancante - non è vero? –