[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [eclipselink-users] Class cast exception calling oraclestoredprocedure by @NamedStoredProcedureQuery
|
There is no EclipseLink or JPA or you stack (JPA is not a thing, just a spec,
you use a JPA provider, not JPA).
You are throwing the exception from,
com.mgl.yearendtax.datamodel.dao.impl.YeAssetsDAO.refreshUnitsHeld(YeAss
etsDAO.java:142)
Looks like you are trapping some exception and throwing your own error, you
need to set the cause, or throw/log the original error. You can also enable
EclipseLink logging and it will dump any errors, assuming you are using
EclipseLink.
sapatos wrote:
>
> Hi James,
>
> That is the only stack trace I get? I've already tried using
> executeUpdate() and I get the following output:
>
> !ENTRY org.eclipse.ui 4 0 2009-02-05 08:49:21.836
> !MESSAGE Unhandled event loop exception
> !STACK 0
> java.lang.RuntimeException: You cannot call executeUpdate() on this
> query. It is the incorrect query type.
> at
> com.mgl.yearendtax.datamodel.dao.impl.YeAssetsDAO.refreshUnitsHeld(YeAss
> etsDAO.java:142)
> at
> com.mgl.yearendtax.userinterface.application.handlers.RefreshUnitsHeld.e
> xecute(RefreshUnitsHeld.java:16)
> at
> org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:
> 281)
> at
> org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
> at
> org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(Paramet
> erizedCommand.java:508)
> at
> org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerSe
> rvice.java:169)
> at
> org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(Slav
> eHandlerService.java:247)
> at
> org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(Slav
> eHandlerService.java:247)
> at
> org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(Comma
> ndContributionItem.java:619)
> at
> org.eclipse.ui.menus.CommandContributionItem.access$10(CommandContributi
> onItem.java:605)
> at
> org.eclipse.ui.menus.CommandContributionItem$4.handleEvent(CommandContri
> butionItem.java:595)
> at
> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
> at
> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823)
> at
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
> at
> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
> at
> org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:
> 288)
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:4
> 88)
> at
> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
> at com.mgl.bfs.desktop.Application.start(Application.java:169)
> at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.j
> ava:193)
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplicat
> ion(EclipseAppLauncher.java:110)
> at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Eclip
> seAppLauncher.java:79)
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
> 386)
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
> 179)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>
> You saying that there was no eclipselink output got me thinking. I've
> set my environment up with JPA using the eclipselink tutorial at:
> http://wiki.eclipse.org/EclipseLink/Examples/JPA/RCP
>
> Is there something I should include to get the eclipselink stack or is
> this JPA making use of eclipselink (making it a JPA issue rather than
> eclipselink and therefore making this the wrong forum)?
>
> -----Original Message-----
> From: eclipselink-users-bounces@xxxxxxxxxxx
> [mailto:eclipselink-users-bounces@xxxxxxxxxxx] On Behalf Of James
> Sutherland
> Sent: Thursday, 5 February 2009 12:37 AM
> To: eclipselink-users@xxxxxxxxxxx
> Subject: Re: [eclipselink-users] Class cast exception calling
> oraclestoredprocedure by @NamedStoredProcedureQuery
>
>
> Could you include the full exception stack trace, EclipseLink is not on
> the stack you provided.
>
> If the procedure does not return anything, you should execute it with
> executeUpdate().
>
>
> sapatos wrote:
>>
>> Hi,
>>
>> I'm using eclipselink with JPA and am trying to call a simple no
>> parameter oracle stored procedure using @NamedStoredProcedureQuery. It
>
>> appears to be running as the application hangs (i've not stuck it in a
>
>> separate thread
>> yet) and then it throws a:
>>
>> java.lang.RuntimeException: oracle.jdbc.driver.OraclePreparedStatement
>> cannot be cast to java.sql.CallableStatement
>>
>> The @NamedStoredProcedureQuery is declared on the entity as:
>>
>> @NamedStoredProcedureQuery(name="refreshUnitsHeld",procedureName="YETA
>> XAPP.REFRESH_UNITS_HELD",resultClass=void.class,returnsResultSet
>> = false)
>>
>> (I get the same errors with or without
>> "resultClass=void.class,returnsResultSet = false")
>>
>> I call this from the DAO as:
>>
>> @Override
>> public void refreshUnitsHeld() {
>>
>> Query query = em.createNamedQuery("refreshUnitsHeld");
>>
>> em.getTransaction().begin();
>> try {
>> query.getResultList();
>> em.getTransaction().commit();
>> } catch (Exception e) {
>> em.getTransaction().rollback();
>> throw new RuntimeException(e.getMessage());
>> }
>>
>> }
>>
>> It has no return values. the full stack trace is:
>>
>> [EL Fine]: 2009.02.04 10:47:01.555--Connection(26237506)--BEGIN
>> YETAXAPP.REFRESH_UNITS_HELD(); END;
>> [EL Warning]: 2009.02.04 10:47:17.337--java.lang.ClassCastException:
>> oracle.jdbc.driver.OraclePreparedStatement cannot be cast to
>> java.sql.CallableStatement
>>
>> !ENTRY org.eclipse.ui 4 0 2009-02-04 10:47:17.368 !MESSAGE Unhandled
>> event loop exception !STACK 0
>> java.lang.RuntimeException: oracle.jdbc.driver.OraclePreparedStatement
>> cannot be cast to java.sql.CallableStatement
>> at
>>
> com.mgl.yearendtax.datamodel.dao.impl.YeAssetsDAO.refreshUnitsHeld(YeAss
> etsDAO.java:141)
>> at
>>
> com.mgl.yearendtax.userinterface.application.handlers.RefreshUnitsHeld.e
> xecute(RefreshUnitsHeld.java:16)
>> at
>>
> org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:
> 281)
>> at
> org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
>> at
>>
> org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(Paramet
> erizedCommand.java:508)
>> at
>>
> org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerSe
> rvice.java:169)
>> at
>>
> org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(Slav
> eHandlerService.java:247)
>> at
>>
> org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(Slav
> eHandlerService.java:247)
>> at
>>
> org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(Comma
> ndContributionItem.java:619)
>> at
>>
> org.eclipse.ui.menus.CommandContributionItem.access$10(CommandContributi
> onItem.java:605)
>> at
>>
> org.eclipse.ui.menus.CommandContributionItem$4.handleEvent(CommandContri
> butionItem.java:595)
>> at
> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
>> at
> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823)
>> at
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
>> at
> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
>> at
> org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
>> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
>> at
>>
> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:
> 288)
>> at
>>
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:4
> 88)
>> at
> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
>> at com.mgl.bfs.desktop.Application.start(Application.java:169)
>> at
>>
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.j
> ava:193)
>> at
>>
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplicat
> ion(EclipseAppLauncher.java:110)
>> at
>>
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Eclip
> seAppLauncher.java:79)
>> at
>>
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
> 386)
>> at
>>
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
> 179)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
>> at
>>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
>> at java.lang.reflect.Method.invoke(Method.java:597)
>> at
> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
>> at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
>> at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
>>
>> I can't find anything on the web about this error message.
>>
>>
>
>
-----
---
http://wiki.eclipse.org/User:James.sutherland.oracle.com James Sutherland
http://www.eclipse.org/eclipselink/
EclipseLink , http://www.oracle.com/technology/products/ias/toplink/
TopLink
Wiki: http://wiki.eclipse.org/EclipseLink EclipseLink ,
http://wiki.oracle.com/page/TopLink TopLink
Forums: http://forums.oracle.com/forums/forum.jspa?forumID=48 TopLink ,
http://www.nabble.com/EclipseLink-f26430.html EclipseLink
Book: http://en.wikibooks.org/wiki/Java_Persistence Java Persistence
--
View this message in context: http://www.nabble.com/Class-cast-exception-calling-oracle-storedprocedure-by-%40NamedStoredProcedureQuery-tp21823222p21851743.html
Sent from the EclipseLink - Users mailing list archive at Nabble.com.