Visualizzazione dei risultati da 1 a 6 su 6

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Provo a postare tutto il progetto:
    codice:
    package org.massimo.dettagliUser;
    import javax.persistence.Entity;
    import javax.persistence.Id;
    
    @Entity
    public class UtenteUser {
        @Id
        private int userId;
        private String userName;
    
        public UtenteUser() {
            // TODO Auto-generated constructor stub
        }
    
        public UtenteUser(int userId, String userName) {
            super();
            this.userId = userId;
            this.userName = userName;
        }
    
        public int getUserId() {
            return userId;
        }
    
        public void setUserId(int userId) {
            this.userId = userId;
        }
    
        public String getUserName() {
            return userName;
        }
    
        public void setUserName(String userName) {
            this.userName = userName;
        }
    
    }
    Errori di parsing:
    codice:
    ott 17, 2016 11:34:27 AM org.hibernate.Version logVersion
    INFO: HHH000412: Hibernate Core {5.0.9.Final}
    ott 17, 2016 11:34:28 AM org.hibernate.cfg.Environment <clinit>
    INFO: HHH000206: hibernate.properties not found
    ott 17, 2016 11:34:28 AM org.hibernate.cfg.Environment buildBytecodeProvider
    INFO: HHH000021: Bytecode provider name : javassist
    ott 17, 2016 11:34:28 AM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
    INFO: HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
    Exception in thread "main" org.hibernate.boot.InvalidMappingException: Could not parse mapping document: org/massimo/config/utenteuser.hbm.xml (RESOURCE)
        at org.hibernate.boot.jaxb.internal.InputStreamXmlSource.doBind(InputStreamXmlSource.java:46)
        at org.hibernate.boot.jaxb.internal.UrlXmlSource.doBind(UrlXmlSource.java:36)
        at org.hibernate.boot.spi.XmlMappingBinderAccess.bind(XmlMappingBinderAccess.java:59)
        at org.hibernate.boot.MetadataSources.addResource(MetadataSources.java:274)
        at org.hibernate.boot.cfgxml.spi.MappingReference.apply(MappingReference.java:70)
        at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:413)
        at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:692)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:724)
        at org.massimo.hibernate.HibernateTest.main(HibernateTest.java:26)
    Caused by: org.hibernate.boot.MappingException: Unable to perform unmarshalling at line number 0 and column 0. Message: null : origin(org/massimo/config/utenteuser.hbm.xml)
        at org.hibernate.boot.jaxb.internal.AbstractBinder.jaxb(AbstractBinder.java:177)
        at org.hibernate.boot.jaxb.internal.MappingBinder.doBind(MappingBinder.java:61)
        at org.hibernate.boot.jaxb.internal.AbstractBinder.doBind(AbstractBinder.java:102)
        at org.hibernate.boot.jaxb.internal.AbstractBinder.bind(AbstractBinder.java:57)
        at org.hibernate.boot.jaxb.internal.InputStreamXmlSource.doBind(InputStreamXmlSource.java:43)
        ... 9 more
    Caused by: javax.xml.bind.UnmarshalException
     - with linked exception:
    [javax.xml.stream.XMLStreamException: ParseError at [row,col]:[13,20]
    Message: Le strutture di documenti XML devono iniziare e finire con la stessa entità.]
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(Unknown Source)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
        at org.hibernate.boot.jaxb.internal.AbstractBinder.jaxb(AbstractBinder.java:171)
        ... 13 more
    Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[13,20]
    Message: Le strutture di documenti XML devono iniziare e finire con la stessa entità.
        at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(Unknown Source)
        at com.sun.xml.internal.stream.XMLEventReaderImpl.peek(Unknown Source)
        at javax.xml.stream.util.EventReaderDelegate.peek(Unknown Source)
        at org.hibernate.boot.jaxb.internal.stax.BufferedXMLEventReader.peek(BufferedXMLEventReader.java:96)
        at javax.xml.stream.util.EventReaderDelegate.peek(Unknown Source)
        at org.hibernate.boot.jaxb.internal.stax.HbmEventReader.peek(HbmEventReader.java:47)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StAXEventConnector.handleCharacters(Unknown Source)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StAXEventConnector.bridge(Unknown Source)
        ... 16 more
    Classe test:
    codice:
    package org.massimo.hibernate;
    
    import java.util.List;
    import java.util.Scanner;
    
    import org.hibernate.HibernateException;
    import org.hibernate.Query;
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.hibernate.cfg.Configuration;
    import org.massimo.dettagliUser.UtenteUser;
    
    public class HibernateTest {
    
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            UtenteUser user = new UtenteUser();
            user.setUserId(1);
            user.setUserName("First user");
            UtenteUser userdue = new UtenteUser();
            userdue.setUserId(2);
            userdue.setUserName("Second user");
    
            SessionFactory sessionFactory = new Configuration().configure()
                    .buildSessionFactory();
            Session sessione = sessionFactory.openSession();
            sessione.beginTransaction();
            sessione.save(user);
            sessione.save(userdue);
            sessione.getTransaction().commit();
    
            System.out.println("numero id = " + user.getUserId());
            System.out.println("nome user = " + user.getUserName());
    
            System.out.println("numero id = " + userdue.getUserId());
            System.out.println("nome user = " + userdue.getUserName());
    
            System.out.println(HibernateTest.listaUtenti());
        }
    
        public static List<UtenteUser> listaUtenti() {
            List<UtenteUser> result = null;
            SessionFactory sessionFactory = new Configuration().configure()
                    .buildSessionFactory();
            Session session = sessionFactory.openSession();
            //Session session = HibernateUtil.getSessionFactory().openSession();
            Transaction tx = null;
            try {
                tx = session.beginTransaction();
                Query q = session.createQuery("from utenteuser");
                result = q.list();
                tx.commit();
            } catch (HibernateException he) {
                if (tx != null)
                    tx.rollback();
                throw he;
            } finally {
                session.close();
            }
            return result;
        }
    }
    File configurazione hibernate.cfg.xml:
    codice:
    <!DOCTYPE hibernate-configuration PUBLIC
            "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
            "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
    
    <hibernate-configuration>
        <session-factory>
            <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
            <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
            <property name="hibernate.connection.username">postgres</property>
            <property name="hibernate.connection.password">root</property>
            <property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/provahib</property>
    
            <property name="connection_pool_size">1</property>
    
            <property name="hbm2ddl.auto">create</property>
    
            <property name="show_sql">true</property>
    
            <mapping class="org.massimo.dettagliUser.UtenteUser" />
            
            <!--  <mapping resource="employee.hbm.xml" /> --> 
        <mapping resource="org/massimo/config/utenteuser.hbm.xml"/>
        </session-factory>
    </hibernate-configuration>
    File di risorse utenteuser.hbm.xml:
    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC 
     "-//Hibernate/Hibernate Mapping DTD//EN"
     "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    
    <hibernate-mapping schema="hibernate" package="org.massimo.dettagliUser.UtenteUser">
        <class name="UtenteUser" table="utenteuser" lazy="false">
            <id name="id" column="userid">
                <generator class="native" />
            </id>
            <property name="username" />
        </class>
    </hibernate-mapping
    hib.jpg

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Ironmax Visualizza il messaggio
    Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[13,20]
    Message: Le strutture di documenti XML devono iniziare e finire con la stessa entità.
    Errore di sintassi XML, proprio a livello di scrittura basilare del documento.

    Quote Originariamente inviata da Ironmax Visualizza il messaggio
    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC 
     "-//Hibernate/Hibernate Mapping DTD//EN"
     "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    
    <hibernate-mapping schema="hibernate" package="org.massimo.dettagliUser.UtenteUser">
        <class name="UtenteUser" table="utenteuser" lazy="false">
            <id name="id" column="userid">
                <generator class="native" />
            </id>
            <property name="username" />
        </class>
    </hibernate-mapping
    Hai dimenticato un ">" finale ?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Non mi dava errore specifico l'ide, ero tranquillo che era scritto tutto bene.
    Ho aggiunto la parentesi angolare di chiusura al file utenteuser.hbm.xml.
    Grazie, era proprio quello il problema.

  4. #4
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Non mi dava errore specifico l'ide, ero tranquillo che era scritto tutto bene.
    Ho aggiunto la parentesi angolare di chiusura al file utenteuser.hbm.xml
    </hibernate-mapping>
    Grazie, era proprio quello il problema.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.