Help I have a problem with query selection in JPA

I have a problem, I want

select store_name from magazine

and I already import all the required library

and

Query q = EntityManger.createQuery ("SELECT name_magazine FROM Magazine");

Result List = (List) q.getResultList ();

For (Sting s: result)

System.out.println (s);

but when i run this code it is error. Can anyone help me? thank

this is an error when starting the program

Exception on thread "AWT-EventQueue-0" java.lang.Error: java.lang.reflect.InvocationTargetException at org.jdesktop.application.ApplicationAction.actionFailed (ApplicationAction.java:859) at org.jdesktop.application.ProxylicationAction.noctionPerror (ApplicationAction.java:665) at org.jdesktop.application.ApplicationAction.actionPerformed (ApplicationAction.java:698) at javax.swing.AbstractButton.fireActionPerformed (AbstractButton.java:1995) at javax.swing.AbstractButton $ Handleraction AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed (DefaultButtonModel.java:242) at javax.swutton.Abstractton35 ) to javax.swing.plaf.basic.BasicMenuItemUI.doClick (BasicMenuItemUI.java:1220) at javax.swing.plaf.basic.BasicMenuItemUI $ Handler.mouseReleased (BasicMenuItemUI.java:1261) at java.awt.AWTEventMulticaster.mouseMouseReleased (AWTE2. .Component.processMouseEvent (Component.java:6041) at javax.swing.JComponent.processMouseEvent (JComponent.java:3265) at java.awt.Component.processEvent (Component.java:5806) at java.awt.Container.processEvent ( Container.java:2058) at java.awt.Component.dispatchEventImpl (Component.java:4413) at java.awt.Container.dispatchEventImpl (Container.java:2116) at java.awt.Component.dispatchEvent (Component.java:4243 ) at java.awt.LightweightDispatcher.retargetMouseEvent (Container.java:4322) at java.awt.LightweightDispatcher.processMouseEvent (Container.java:3986) at java.awt.LightweightDispatcher.dispatchEvent (Container.java:3916) at java.awt.Container.dispatchEventImpl (Container.java:2102) at java.awt.Window.dispatchEventImpl (Window.java:2440) at java. awt.Component.dispatchEvent (Component.java:4243) at java.awt.EventQueue.dispatchEvent (EventQueue.java"99) at java.awt.EventDispatchThread.pumpOneEventForFilters (EventDispatchThread.java:273) at java.awt.EventDumpEvent (EventDispatchThread.java:183) at java.awt.EventDispatchThread.pumpEventsForHierarchy (EventDispatchThread.java:173) at java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java.168) at java.wispatchThread.pumpEvents 160) in java.awt.EventDispatchThread.run (EventDispatchThread.java:121) Called by:java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) on sun.reflect.DelegatingMethodor:39) on sun.reflect.DelegatingMethodor java.lang.reflect.Method.invoke (Method.java:597) in org.jdesktop.application.ApplicationAction.noProxyActionPerformed (ApplicationAction.java:662) ... 29 more Caused by: java.lang.IllegalArgumentException: Exception was thrown on creation query in EntityManager at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:209) on tugas_rpl.Tugas_RPLView.Iseng (Tugas_RPLView.java:734) ... 34- more Exception TOP 8034] (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.EJBQLException Exception Description: Compile error request [Select m.Name from log m]. Unknown type of abstract schema [Log]. at oracle.toplink.essentials.exceptions.EJBQLException.unknownAbstractSchemaType (EJBQLException.java:494) at oracle.toplink.essentials.internal.parsing.ParseTreeContext.classForSchemaName: ParseTree16Context.ava:494 .VariableNode.resolveClass (VariableNode.java:280) at oracle.toplink.essentials.internal.parsing.DotNode.resolveMapping (DotNode.java:254) at oracle.toplink.essentials.internal.parsing.DotNode.endsWithDotToFava:254 : 213) at oracle.toplink.essentials.internal.parsing.SelectNode.selectingDirectToField (SelectNode.java:440) at oracle.toplink.essentials.internal.parsing.SelectNode.hasOneToOneSelected (SelectNode.java:265) at oracle.toplink.essentials.internal.parsing.SelectNode.hasOneToOneSelected (SelectNode.java:222) at oracle.sentialstoplink .internal.parsing.SelectGenerationContext.computeUseParallelExpressions (SelectGenerationContext.java:105) at oracle.toplink.essentials.internal.parsing.SelectGenerationContext. (SelectGenerationContext.java:88) at oracle.toplink.essentials.internal.parsing.ParseTree.buildContextForReadQuery (ParseTree.java:382) at oracle.toplink.essentials.internal.parsing.ParseTree.buildContext (ParseTree:buildContext) oracle.toplink.essentials.internal.parsing.EJBQLParseTree.buildContext (EJBQLParseTree.java:68) at oracle.toplink.essentials.internal.parsing.EJBQLParseTree.populateQuery (EJBQLParseTree.java:107) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:219) at oracle.toplink.essenbtialsJternalCase. buildEJBQLDatabaseQuery (EJBQueryImpl.java:189) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.jb.cmp3. (EJBQueryImpl.java:114) in oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more107) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:219) at oracle.toplink.essentials.internal.ejb.cmp3.base.EbuildEJavaJavaImpl. 189) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:114) in oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more107) in oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:219) in oracle.toplink.essentials.internal.ejb.cmp3.base.EbuildEJavaJavaImpl. 189) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:114) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 morebuildEJBQLDatabaseQuery (EJBQueryImpl.java:219) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:189) at oracle.toplink.jb.essentials. buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:114) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 morebuildEJBQLDatabaseQuery (EJBQueryImpl.java:219) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:189) at oracle.toplink.escap. buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:114) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more189) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:114) in oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more189) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.buildEJBQLDatabaseQuery (EJBQueryImpl.java:153) at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:114) in oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl. (EJBQueryImpl.java:99) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more99) in oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more99) in oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl. (EJBQueryImpl.java:86) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery (EntityManagerImpl.java:204) ... 35 more

I'm already trying Vincent Ramdhani, Gudmundur Bjarni's suggestion

Query q = entityManager.createQuery ("Select m.name from log m");

List result = (List) q.getResultList ();

For (Sting s: result)

System.out.print (c);

but still a mistake

this library and variable i am using

private javax.persistence.EntityManager entityManager;

import org.jdesktop.application.Action;

import org.jdesktop.application.ResourceMap;

import org.jdesktop.application.SingleFrameApplication;

import org.jdesktop.application.FrameView;

import org.jdesktop.application.TaskMonitor;

import org.jdesktop.application.Task;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

import java.util.List;

import javax.swing.Timer;

import javax.swing.Icon;

import javax.swing.JDialog;

import javax.swing.JFrame;

import javax.swing.event.ListSelectionEvent;

import javax.swing.event.ListSelectionListener;

import org.jdesktop.beansbinding.AbstractBindingListener;

import org.jdesktop.beansbinding.Binding;

import org.jdesktop.beansbinding.PropertyStateEvent;

import javax.persistence. *;

0


source to share


5 answers


You should probably say what the error is.

However, if you have an entity log, then the query should be:



 select m from Magazine m

      

If you want all the magazines.

+2


source


The answer to this question is right on the call stack for your exception:

Error compiling the query [Select m.Jenis_Motor from motor m]. Unknown abstract schema type [motor].

      



This is not a problem with your log query, but another invalid query - perhaps the named query is defined elsewhere.

+2


source


To do this, you need an entity defined as such:

@Entity
@Table(name = "magazines")
public class Magazine {
  /*
   * Some more attributes
   */

  @Column(name = "name_magazine")
  private String name;

  /*
   * Constructors, getters and setters
   */
}

      

Also, you need a persistence.xml file pointing to your entity. If all of this is in place, this query should work and give you a list of all the logs.

from Magazine m

      

The query you mentioned is a projection of this, and with the object I showed above, it should be

select m.name from Magazine m 

      

Hope this helps. :)

+1


source


Have you renamed your class?

The class name can be different from the name used in the named query

+1


source


If you are using JPA then in your request you need to write className and object like this

Query q = EntityManger.createQuery ("SELECT name_magazine e FROM Magazine e");

      

e is an object of class Magazine. and if you encounter this exception when making a request in EntityManager Check your persistance.xml file you need to add to this class after tag of duration unit

<class>PackageName.className</class>

      

0


source







All Articles