Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-02-2008, 18:16   #1
nucce
Senior Member
 
L'Avatar di nucce
 
Iscritto dal: Apr 2006
Città: Bergamo
Messaggi: 440
[JAVA] [Hibernate] [Servlet] - Servlet execution threw an exception

salve a tutti...
mi stò avvicinando (tutto di un botto - lo so che si deve fare un passo alla volta, ma per motivi universitari devo cercare di fare tutto insieme per mancanza di tempo) al framework "Hibernate" e per prendere familiarità ho eseguito l'esempio presente sull'articolo "Introduzione ad Hibernate" e ho riportato il codice della Classe usata per testare la persistenza del javabean Persona nella seguente servlet:

Codice:
package test;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.RequestDispatcher;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

import beans.Persona;

public class PersonaUnitTest extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet
{
	/* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#HttpServlet()
	 */
	  public PersonaUnitTest()
	  {
	    super();
	  }
	
	  /* (non-Java-doc)
	   * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	   */
	  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
	  {
		  //System.out.println("Persona Unit Test");
		    
		  // Recupero la sessione: attenzione, questa operazione
		  // può essere gestita come un Singleton lungo tutta l'applicazione
		  
  
		  org.hibernate.Session session = 
			  new Configuration().configure().buildSessionFactory().getCurrentSession();
		    
		  //Creo una nuova persona
		  Persona p = new Persona();
		  p.setNome("Pasquale");
		  p.setNome("Congiustì");
		  p.setEmail("[email protected]");
		    
		  //Utilizziamo un modello transazionale dichiarativo
		  session.beginTransaction();
		    
		  //Chiedo al middleware di salvare questo oggetto nel database
		  session.save(p);
		    
		  //fine della transazione: salviamo tramite commit()
		  session.getTransaction().commit();
		    
		  //System.out.println("I dati inseriti sono:");
		  //System.out.println("Nome: " + p.getNome());
		  //System.out.println("Cognome: " + p.getCognome());
		  //System.out.println("E-Mail: " + p.getEmail());
		  
		  RequestDispatcher dispatcher;
		  dispatcher = getServletContext().getRequestDispatcher("/ShowUser.jsp");
		  dispatcher.forward(request,response);
		  
	  }
	  
	  /* (non-Java-doc)
	   * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	   */
	  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
	  {
	    this.doGet(request, response);
	  }
}
ho creato una web application con eclipse che si presenta così:
c'è una pagina html (index.html) che richiama tramite una form la servlet "PersonaUnitTest" che dopo aver effettuato l'inserimento ne db fa un forward alla pagina "ShowUser.jsp" che non fa altro che scrive un messaggio di conferma

il punto è che quando eseguo l'application mi esce questo errore:
Codice:
exception

javax.servlet.ServletException: Servlet execution threw an exception

root cause

java.lang.NoClassDefFoundError: org/dom4j/DocumentException
	test.PersonaUnitTest.doGet(PersonaUnitTest.java:44)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
cosa può essere?...un problema con Hibernate o con la Servlet?

scusate la domanda che forse è stupida ma sono i mie primi "esperimenti" sia con le Servlet che con hibrnate

un infinito grazie a chi mi rispondera!!!!
__________________
Guitar Pub, il sito dedicato al mondo della chitarra e dei chitarristi... e il mio Spazio
------------------------------------
Ho trattato positivamente con: teosc
nucce è offline   Rispondi citando il messaggio o parte di esso
Old 08-02-2008, 20:04   #2
vladix
Member
 
L'Avatar di vladix
 
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
io ho provato il tuo stesso pezzo di codice e a me funziona benissimo , nn sono il + esperto .... ma di sicuro quel errore lo lancia quando cerchi di istanziare una classe che nn trova , quindi controlla se hai importato tutte le librerie ,cmq ti consiglio caldamente di leggere il "manuale ufficiale" di hibernate invecce della guida su html.it , ( almeno i primi capitoli che parlano della configurazione)
vladix è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2008, 08:44   #3
nucce
Senior Member
 
L'Avatar di nucce
 
Iscritto dal: Apr 2006
Città: Bergamo
Messaggi: 440
ok grazie mille!!!...lo farò di sicuro!!!
__________________
Guitar Pub, il sito dedicato al mondo della chitarra e dei chitarristi... e il mio Spazio
------------------------------------
Ho trattato positivamente con: teosc
nucce è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2008, 11:53   #4
dupa
Senior Member
 
L'Avatar di dupa
 
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
sì quell'errore di solito si interpreta con la mancanza di un .jar
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino.
dupa è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2008, 14:22   #5
nucce
Senior Member
 
L'Avatar di nucce
 
Iscritto dal: Apr 2006
Città: Bergamo
Messaggi: 440
mi sa che non ho importato in modo corretto la libreria di hibernate con eclipse!...grazie a entrambi! quantomeno ora so che è solo un problema di importazione di librerie e non di codice!
__________________
Guitar Pub, il sito dedicato al mondo della chitarra e dei chitarristi... e il mio Spazio
------------------------------------
Ho trattato positivamente con: teosc
nucce è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2008, 10:17   #6
nucce
Senior Member
 
L'Avatar di nucce
 
Iscritto dal: Apr 2006
Città: Bergamo
Messaggi: 440
sono ancora qui a rompere su Hibernate...ho letto la documentazione di Hibernate core ma non riesco comunque a mappare le associazioni tra tabelle...ho questo schema:

Codice HTML:
  _____________        ___________
 |             |      |           |       _________________
 |  CUSTOMER   |      |   ORDER   |      |                 |       ____________
 |_____________|      |___________|      |  ORDER_MANAGER  |      |            |
 |             |      |           |      |_________________|      |   ADMIN    |
 | *ID         | <--> | CUSTOMER  |      |                 |      |____________|
 |  NAME       |      | *ID       | <--> | *ORDER          |      |  NICKNAME  |
 |  ADDRESS    |      |___________|      | *ADMIN          | <--> |  *ID       |
 |_____________|                         |_________________|      |  EMAIL     |
                                                                  |____________|
                                         
l'entità "Order" l'ho mappata nel seguente modo:
Codice:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="beans.Order" table="order">
		
		<id name="id" column="id">
			<generator class="identity"/>
		</id>
		
		<property name="notes"/>
		
		<set name="customer" table="customer">
			<key column="id"/>
			<element type="integer" column="id"/>
		</set>
		
	</class>
</hibernate-mapping>
solo che quando avvio l'applicazione di prova (che inserisce dei dati nella tabella "order") mi esce questo messaggio di errore:
Codice:
org.hibernate.MappingException: Repeated column in mapping for collection: beans.Order.customer column: id
	org.hibernate.mapping.Collection.checkColumnDuplication(Collection.java:306)
	org.hibernate.mapping.Collection.checkColumnDuplication(Collection.java:329)
	org.hibernate.mapping.Collection.validate(Collection.java:286)
	org.hibernate.mapping.Set.validate(Set.java:19)
	org.hibernate.cfg.Configuration.validate(Configuration.java:1106)
	org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1287)
	test.OrderTest.doGet(OrderTest.java:49)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
sulla documentazione mi pare di aver capito che la mia situazione si mappa così!...cosa sbaglio?...se cambiassi l'attributo "id" di customer in "idCustomer" il problema si risolve?

Grazie 1000 per l'aiuto!!!
__________________
Guitar Pub, il sito dedicato al mondo della chitarra e dei chitarristi... e il mio Spazio
------------------------------------
Ho trattato positivamente con: teosc
nucce è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2008, 14:38   #7
dupa
Senior Member
 
L'Avatar di dupa
 
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
Quote:
Originariamente inviato da nucce Guarda i messaggi
sono ancora qui a rompere su Hibernate...ho letto la documentazione di Hibernate core ma non riesco comunque a mappare le associazioni tra tabelle...ho questo schema:

Codice HTML:
  _____________        ___________
 |             |      |           |       _________________
 |  CUSTOMER   |      |   ORDER   |      |                 |       ____________
 |_____________|      |___________|      |  ORDER_MANAGER  |      |            |
 |             |      |           |      |_________________|      |   ADMIN    |
 | *ID         | <--> | CUSTOMER  |      |                 |      |____________|
 |  NAME       |      | *ID       | <--> | *ORDER          |      |  NICKNAME  |
 |  ADDRESS    |      |___________|      | *ADMIN          | <--> |  *ID       |
 |_____________|                         |_________________|      |  EMAIL     |
                                                                  |____________|
                                         
l'entità "Order" l'ho mappata nel seguente modo:
Codice:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="beans.Order" table="order">
		
		<id name="id" column="id">
			<generator class="identity"/>
		</id>
		
		<property name="notes"/>
		
		<set name="customer" table="customer">
			<key column="id"/>
			<element type="integer" column="id"/>
		</set>
		
	</class>
</hibernate-mapping>
solo che quando avvio l'applicazione di prova (che inserisce dei dati nella tabella "order") mi esce questo messaggio di errore:
Codice:
org.hibernate.MappingException: Repeated column in mapping for collection: beans.Order.customer column: id
	org.hibernate.mapping.Collection.checkColumnDuplication(Collection.java:306)
	org.hibernate.mapping.Collection.checkColumnDuplication(Collection.java:329)
	org.hibernate.mapping.Collection.validate(Collection.java:286)
	org.hibernate.mapping.Set.validate(Set.java:19)
	org.hibernate.cfg.Configuration.validate(Configuration.java:1106)
	org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1287)
	test.OrderTest.doGet(OrderTest.java:49)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
sulla documentazione mi pare di aver capito che la mia situazione si mappa così!...cosa sbaglio?...se cambiassi l'attributo "id" di customer in "idCustomer" il problema si risolve?

Grazie 1000 per l'aiuto!!!
credo sia dovuto al fatto che sulla stessa tabella stai cercando di usare gli stessi nomi di colonna, nn so che versione usi, cmq puoi anche evitare di dover dare tu a mano i nomi di colonna e far sì che sia hibernate ad assegnarli automaticamente.
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino.

Ultima modifica di dupa : 27-02-2008 alle 14:40.
dupa è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2008, 15:03   #8
nucce
Senior Member
 
L'Avatar di nucce
 
Iscritto dal: Apr 2006
Città: Bergamo
Messaggi: 440
uso l'ultima versione...la 3.2
Come faccio ad automatizzare?
scusa la/le domanda/e sciocche ma sono alle primissime armi e non ho nessuno che mi spieghi!
__________________
Guitar Pub, il sito dedicato al mondo della chitarra e dei chitarristi... e il mio Spazio
------------------------------------
Ho trattato positivamente con: teosc
nucce è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2008, 16:39   #9
dupa
Senior Member
 
L'Avatar di dupa
 
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
Quote:
Originariamente inviato da nucce Guarda i messaggi
uso l'ultima versione...la 3.2
Come faccio ad automatizzare?
scusa la/le domanda/e sciocche ma sono alle primissime armi e non ho nessuno che mi spieghi!
hai provato a non specificare il nome della column?
io uso hibernate annotations e con quelle è possibile, non so se con l'XML sia possibile non specificare il nome di colonna
ciao
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino.
dupa è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2008, 08:56   #10
yuki78
Member
 
Iscritto dal: Nov 2006
Messaggi: 33
java.lang.NoClassDefFoundError: org/hibernate/Session

Ciao!!!
Scusate l'intromissione, ma sto provando ad integrare con Hibernate un progetto già esistente e che faceva uso delle servlet di java.

Il problema è che mi dà questo errore:

java.lang.NoClassDefFoundError: org/hibernate/Session

Ho visto che questo problema è dato dal fatto che non vengono importate le librerie...
Io ce le ho sia in una cartella lib che importati nel progetto (che è su eclipse)

Quale protrebbe essere il problema???

Grazie!!!


Ciao ciao
yuki78 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2008, 09:15   #11
yuki78
Member
 
Iscritto dal: Nov 2006
Messaggi: 33
Ho risolto da sola
Praticamente le librerie le importavo sul progetto ma non nel classpath di tomcat... che stordita!!!
Grazie a tutti!!!
Buona giornata
yuki78 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
ASUS ROG Raikiri II Pro PC: controller d...
SteelSeries Aeon Pro: il primo controlle...
Il suo laptop lo stava 'cuocendo': bambi...
Motorola è pronta a seguire Samsung e Ap...
Cinque ricercatori hanno usato Claude su...
I nuovi Galaxy Z Fold 8 conquistano gli ...
d-Matrix sceglie NVIDIA NVLink Fusion pe...
BenQ MA270S o Apple Studio Display? Entr...
Apple Watch Series 12 e Ultra 4 su Amazo...
Apple AirPods 5 disponibili su Amazon a ...
Bending Spoons colpisce ancora: acquisit...
Il Tesla Cybercab non ha il volante ma p...
AMD aggiorna ancora AM4 e AM5: arrivano ...
Un graffio è sufficiente a far de...
Airbus realizzerà altri 229 satel...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:01.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v