openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Beer <david.m.b...@btinternet.com>
Subject Re: Understanding getResultList()
Date Tue, 22 Jan 2008 23:48:45 GMT
Hi Guys

The Entry class is actually an entity I just changed the code to use 
native query as I was getting the same result using just createQuery. I 
have attached the Entry.class and the class containing the query 
(EntryQuery). As you can see in EntryQuery there is various code 
commented out, this is just where I have tried different things.

When I return the list of results and try and display them in a JList 
with the following code:

data = eq.getAll();
jList1.setListData((Vector<Entry>)data);

I get the following exception:

java.lang.ClassCastException: 
org.apache.openjpa.kernel.DelegatingResultList cannot be cast to 
java.util.Vector
        at 
veilig.mainui.VeiligTopComponent.<init>(VeiligTopComponent.java:37)
        at 
veilig.mainui.VeiligTopComponent.getDefault(VeiligTopComponent.java:94)
        at 
veilig.mainui.VeiligTopComponent$ResolvableHelper.readResolve(VeiligTopComponent.java:149)
        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 
java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:1061)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1762)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at 
org.netbeans.modules.settings.convertors.XMLSettingsSupport$SettingsRecognizer.readSerial(XMLSettingsSupport.java:542)
        at 
org.netbeans.modules.settings.convertors.XMLSettingsSupport$SettingsRecognizer.instanceCreate(XMLSettingsSupport.java:574)
        at 
org.netbeans.modules.settings.convertors.SerialDataConvertor$SettingsInstance.instanceCreate(SerialDataConvertor.java:415)
[catch] at 
org.netbeans.core.windows.persistence.PersistenceManager.getTopComponentPersistentForID(PersistenceManager.java:513)
        at 
org.netbeans.core.windows.persistence.PersistenceManager.getTopComponentForID(PersistenceManager.java:618)
        at 
org.netbeans.core.windows.PersistenceHandler.getTopComponentForID(PersistenceHandler.java:422)
        at 
org.netbeans.core.windows.PersistenceHandler.load(PersistenceHandler.java:147)
        at 
org.netbeans.core.windows.WindowSystemImpl.load(WindowSystemImpl.java:69)
        at org.netbeans.core.NonGui$3.run(NonGui.java:205)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        at 
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
        at 
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
        at 
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
        at 
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
        at 
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

Any help or guidance is very much appreciated.

David

Craig L Russell wrote:
> Hi David,
>
> One other thing that occurs to me is whether you're using the native 
> query appropriately.
>
> I assume that Entry.class is *not* an Entity. It's just a plain old 
> Java class with no persistence annotations.
>
> Perhaps we can help better if you would include your Entity.java and 
> schema in the message. And the exception with stack trace.
>
> Regards,
>
> Craig
>
> On Jan 22, 2008, at 2:55 AM, David Beer wrote:
>
>> Hi Patrick
>>
>> I will be able to get the exact information retruned later when I am 
>> back home.
>>
>> I am trying to display a list of the items returned from the query in 
>> a JList (javax.swing.JList). A JList takes either an array, a 
>> ListModel or a Vector; I was trying to use a Vectory as I can just 
>> add elements to it and not worry about memory allocation or the size 
>> of the Vector being too large.
>>
>> My point is that when I tried to cast the resulting data from the 
>> query I got an exception. Cannot Cast Delegate org.apache.openjpa
>>
>> I will get the exact data this evening when i get home
>>
>> Thanks
>>
>> David
>>
>> ----- Original Message ----
>> From: Patrick Linskey <plinskey@gmail.com>
>> To: users@openjpa.apache.org; david.m.beer@btinternet.com
>> Sent: Monday, 21 January, 2008 11:52:15 PM
>> Subject: Re: Understanding getResultList()
>>
>> Hi,
>>
>>> and in return I am seeing a list containing a delegate and a
>>> persistence object.
>>
>> Can you include a printout of the data you see, or some more detailed
>> explanation, such as class names of the instances returned?
>>
>>> display. This is fine with a small amount of records but what about a
>>> large amount of records.
>>
>> Are you concerned about the overhead involved in iterating through a
>> result list fully just to copy it over to the Vector? If the framework
>> that you are using does not provide any interface-based support, then
>> you might not have many options. One idea might be to try to create a
>> subclass of Vector that overrides most methods to just return values
>> from the actual backing list.
>>
>> -Patrick
>>
>> On Jan 21, 2008 3:34 PM, David Beer <david.m.beer@btinternet.com>
>> wrote:
>>> Hi All
>>>
>>> I have a n issue with using Query getResultList(), I am executing a
>>> nativeQuery("SELECT * FROM ENTRY", Entry.class). And performing the
>>> query like so List<Entry> results =
>> (List<Entry>)query.getResultList();
>>> and in return I am seeing a list containing a delegate and a
>>> persistence object.
>>>
>>> My main problem is that I am trying to display the resulting data
>> that
>>> comes back in a JList, in order to set the list data on a JList you
>> have
>>> to have the data in a Vector. So when I tried to cast the  List to a
>>> Vector I got an exception.
>>>
>>> When I perform the same query using TopLink I get back a list of
>> Objects
>>> of the type and no extra information. At the moment I am going
>> through
>>> the results and getting each Object element and adding to Vector to
>>> display. This is fine with a small amount of records but what about a
>>> large amount of records.
>>>
>>> What is the best way of getting back just a list of Objects no
>>> additional data?
>>>
>>> Thanks
>>>
>>> David
>>>
>>
>>
>>
>> -- 
>> Patrick Linskey
>> 202 669 5907
>>
>>
>>
>>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>

Mime
View raw message