Estoy tratando de ejecutar una simple selección DE la tabla ( también he tratado de SELECCIONAR DE package.Class consulta pero me sale este error :

 org.hibernate.MappingException: entity class not found: demo.Agents
    at org.hibernate.mapping.PersistentClass.getMappedClass(PersistentClass.java:125)
    at org.hibernate.tuple.PropertyFactory.getGetter(PropertyFactory.java:191)
    at org.hibernate.tuple.PropertyFactory.buildIdentifierProperty(PropertyFactory.java:67)
    at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:136)
    at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:475)
    at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:133)
    at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:84)
    at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:297)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1385)
    at org.hibernate.console.ConsoleConfiguration$5.execute(ConsoleConfiguration.java:278)
    at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
    at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:107)
    at org.hibernate.console.ConsoleConfiguration.buildSessionFactory(ConsoleConfiguration.java:273)
    at org.hibernate.eclipse.console.actions.ExecuteQueryAction.execute(ExecuteQueryAction.java:82)
    at org.hibernate.eclipse.console.actions.ExecuteQueryAction.run(ExecuteQueryAction.java:56)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
    at org.hibernate.eclipse.console.actions.ExecuteQueryAction.runWithEvent(ExecuteQueryAction.java:60)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
    at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
    at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Caused by: java.lang.ClassNotFoundException: demo.Agents
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
    at org.hibernate.mapping.PersistentClass.getMappedClass(PersistentClass.java:122)
    ... 43 more

Aquí es el hbm.xml archivo de la clase (aviso al completo calificador de demostración.Los agentes)

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated Jun 27, 2012 19:17:46 by Hibernate Tools 3.6.0 -->
<hibernate-mapping>
    <class name="demo.Agents" table="agents" schema="public">
        <id name="id" type="int">
            <column name="id" />
            <generator class="assigned"></generator>
        </id>
        <property name="ssn" type="long">
            <column name="ssn" precision="13" scale="0" not-null="true" />
        </property>
        <property name="namee" type="string">
            <column name="namee" length="15" not-null="true" />
        </property>
        <property name="surname" type="string">
            <column name="surname" length="30" not-null="true" />
        </property>
        <property name="adress" type="string">
            <column name="adress" length="100" />
        </property>
        <property name="phone" type="string">
            <column name="phone" length="20" />
        </property>
    </class>
</hibernate-mapping>

Algunos otros detalles, posiblemente útil:

http://img441.imageshack.us/img441/2572/ss20120627202116.png

http://img20.imageshack.us/img20/2236/ss20120624201620.png

Si usted necesita cualquier otra printscreens voy a estar feliz de proveer para ellos. Por favor, ayuda :). Estoy en un aprieto. Gracias ( y alguien en la mejora de las etiquetas es que estoy estresado ahora a pensar demasiado acerca de ellos)

LE

la hibernatecfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>

        <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
        <property name="hibernate.connection.password">blablabla</property>
        <property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/projteste</property>
        <property name="hibernate.connection.username">postgres</property>
            <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
    </session-factory>
</hibernate-configuration>

las asignaciones se realizan en la configuración de la consola

LE2 ver los comentarios (enlace 607) me sale que error si puedo eliminar las clases de asignaciones adicionales en la configuración de la consola..

aquí está el hibernatecfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
                                         "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
 <session-factory name="">
  <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
  <property name="hibernate.connection.password">123456</property>
  <property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/projteste</property>
  <property name="hibernate.connection.username">postgres</property>
  <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
  <mapping resource="demo/Clients.hbm.xml"/>
    <mapping resource="demo/Agents.hbm.xml"/>
 </session-factory>
</hibernate-configuration>

y los seguimientos de pila

org.hibernate.MappingNotFoundException: resource: demo/Clients.hbm.xml not found
at org.hibernate.cfg.Configuration.addResource(Configuration.java:665)
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1679)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1647)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1626)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1600)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1554)
at org.hibernate.console.ConfigurationFactory.loadConfigurationXML(ConfigurationFactory.java:351)
at org.hibernate.console.ConfigurationFactory.configureStandardConfiguration(ConfigurationFactory.java:279)
at org.hibernate.console.ConfigurationFactory.buildConfiguration(ConfigurationFactory.java:184)
at org.hibernate.console.ConfigurationFactory.createConfiguration(ConfigurationFactory.java:96)
at org.hibernate.console.ConsoleConfiguration$3.execute(ConsoleConfiguration.java:240)
at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:107)
at org.hibernate.console.ConsoleConfiguration.buildWith(ConsoleConfiguration.java:237)
at org.hibernate.console.ConsoleConfiguration.build(ConsoleConfiguration.java:188)
at org.hibernate.eclipse.console.workbench.ConsoleConfigurationWorkbenchAdapter.getChildren(ConsoleConfigurationWorkbenchAdapter.java:42)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:100)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:106)
at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:235)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)  

k4

  org.hibernate.console.HibernateConsoleRuntimeException: Could not compute classpath
    at org.hibernate.eclipse.console.EclipseLaunchConsoleConfigurationPreferences.getCustomClassPathURLS(EclipseLaunchConsoleConfigurationPreferences.java:103)
    at org.hibernate.eclipse.console.utils.ProjectUtils.findJavaProjects(ProjectUtils.java:302)
    at org.hibernate.eclipse.console.workbench.ProjectCompilerVersionChecker.validateProjectComplianceLevel(ProjectCompilerVersionChecker.java:35)
    at org.hibernate.eclipse.console.workbench.ConsoleConfigurationWorkbenchAdapter.getChildren(ConsoleConfigurationWorkbenchAdapter.java:37)
    at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:100)
    at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:106)
    at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:235)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.eclipse.core.runtime.CoreException: Unable to restore classpath entry.
    at org.eclipse.jdt.launching.JavaRuntime.abort(JavaRuntime.java:1376)
    at org.eclipse.jdt.launching.JavaRuntime.abort(JavaRuntime.java:1361)
    at org.eclipse.jdt.launching.JavaRuntime.newRuntimeClasspathEntry(JavaRuntime.java:731)
    at org.eclipse.jdt.launching.StandardClasspathProvider.recoverRuntimePath(StandardClasspathProvider.java:100)
    at org.eclipse.jdt.launching.StandardClasspathProvider.computeUnresolvedClasspath(StandardClasspathProvider.java:65)
    at org.eclipse.jdt.launching.JavaRuntime.computeUnresolvedRuntimeClasspath(JavaRuntime.java:1215)
    at org.hibernate.eclipse.console.utils.ClassLoaderHelper.getClasspath(ClassLoaderHelper.java:146)
    at org.hibernate.eclipse.console.EclipseLaunchConsoleConfigurationPreferences.getCustomClassPathURLS(EclipseLaunchConsoleConfigurationPreferences.java:94)
    ... 7 more
Caused by: org.xml.sax.SAXException: FWK005 parse may not be called while parsing.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:263)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
    at org.eclipse.jdt.launching.JavaRuntime.newRuntimeClasspathEntry(JavaRuntime.java:708)
    ... 12 more
  • Por favor, mostrar su hibernate-cfg.xml archivo. Y usted realmente debe su nombre a entidades Agent y Client en lugar de Agents y Clients.
  • se generan automáticamente y mis tablas están en el plural
  • enlace (607) img59.imageshack.us/img59/5913/ss20120628005009.png
  • stackoverflow antispam mechanosm es absoluta mierda
InformationsquelleAutor geogeorge | 2012-06-27

4 Comentarios

  1. 8

    Se le olvidó declarar la asignación de archivos en el archivo de configuración principal:

    <session-factory>
        ...
        <mapping resource="demo/Clients.hbm.xml"/>
        <mapping resource="demo/Agents.hbm.xml"/>
    </session-factory>

    Voy a repetir mi comentario aquí: las entidades deberán ser nombrado con una forma singular: Agent, Client. Ajustar la auto-generación (ver http://docs.jboss.org/tools/3.0.1.GA/en/hibernatetools/html_single/index.html#tab_and_col), o refactorizar el código generado después, porque todo el código de la aplicación se basará en estos nombres, y es realmente horrible para llamar a un Agent un Agents. El código va a ser confuso y difícil de entender. Las entidades son el núcleo de la aplicación de todas formas, y debe contener otros métodos que sólo los setters y getters. Para la generación automática está bien para empezar, pero debe ser olvidado después.

  2. 5

    En su xxx.hbm.xml uso calificado nombre de la clase: package_name.xxx en la hibernate-mapping elemento. Esta es una de jboss especificación para POJOs.

  3. 4

    Y Comprobar también la .hbm.xml de archivo, que el nombre de clase completamente calificado en contra de el nombre de la tabla.
    por ejemplo:

    <class name="com.test.Emp" table="Emp">.. </class>
    
  4. 0

    Se parece a lo resuelto en :

    1) yo no tenía necesidad de modificar mi original hibernatecfg.xml . Al parecer, había una incongruencia entre las asignaciones he definido en la configuración de la consola y el hbm.xml los archivos que tenía en mi carpeta de proyecto(sus nombres donde un poco diferente).

    A quien esté leyendo esto no debe agregar <sessionfactory> etiqueta si el uso de la hormiga para construir pojos de hbmxml archivos ( algo con el doble de errores de importación si recuerdo ir aquí
    http://docs.jboss.org/tools/latest/en/hibernatetools/html_single/ y la búsqueda de duplicados). Recuerde siempre para reconstruir y actualizar la configuración de la consola Y su proyecto

    2) el select id, número de seguro social DE demo.Agentes de la consulta funciona pero select id,número de seguro social DE los agentes que no …es it raro?

    3)recuerde guardar su consulta antes de ejecutar; parece que de lo contrario se ejecuta la consulta anterior

    4) si mi respuesta fue útil dejar un comentario 😀 incluso si te ayudó a 10 años después de lo publicado. Voy a comprobar 😀

    5) gracias a Nizet por sus sugerencias

    6) otra cosa que me perdí?

    • Respecto a su segunda pregunta: HQL espera encontrar el nombre de la clase (totalmente calificado o no), no los nombres de la tabla. Se trabaja con las entidades, no tablas. Por lo que se debe seleccionar … de los Agentes (en mayúsculas).

Dejar respuesta

Please enter your comment!
Please enter your name here