
|
If you were logged in you would be able to see more operations.
|
|
|
|
File Attachments:
|
|
|
Environment:
|
windows xp, openjpa_097_incubating
|
|
Issue Links:
|
Cloners
|
|
|
|
This issue is a clone of:
|
|
OPENJPA-111
native queries fail when use named parameters
|
|
|
|
|
|
|
| Resolution Date: |
19/Jun/08 12:40 AM
|
|
native queries fail when use named parameters
int parm3 = 100;
String sql = "SELECT deptno,budget,NAME,MGR_EMPID,REPORTSTO_DEPTNO FROM DeptBean WHERE deptno >= :deptno ";
Query getDept = _em.createNativeQuery(sql,DeptBean.class
getDept.setParameter("deptno",parm3);
List<DeptBean> rl = (getDept.getResultList());
<4|false|0.9.7-incubating-SNAPSHOT> org.apache.openjpa.persistence.ArgumentException: The parameter name or position "deptno" passed to execute() is not valid. All map keys must be a declared parameter name or a number matching the parameter position.
at org.apache.openjpa.kernel.QueryImpl.toParameterArray(QueryImpl.java:897)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:825)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:763)
at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:520)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:224)
at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:264)
at com.ibm.ws.query.tests.JUNamedNativeQueryTest.testSelectDeptBean2(JUNamedNativeQueryTest.java:514)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at junit.framework.TestCase.runTest(Unknown Source)
at junit.framework.TestCase.runBare(Unknown Source)
at junit.framework.TestResult$1.protect(Unknown Source)
at junit.framework.TestResult.runProtected(Unknown Source)
at junit.framework.TestResult.run(Unknown Source)
at junit.framework.TestCase.run(Unknown Source)
at junit.framework.TestSuite.runTest(Unknown Source)
at junit.framework.TestSuite.run(Unknown Source)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
|
|
Description
|
native queries fail when use named parameters
int parm3 = 100;
String sql = "SELECT deptno,budget,NAME,MGR_EMPID,REPORTSTO_DEPTNO FROM DeptBean WHERE deptno >= :deptno ";
Query getDept = _em.createNativeQuery(sql,DeptBean.class
getDept.setParameter("deptno",parm3);
List<DeptBean> rl = (getDept.getResultList());
<4|false|0.9.7-incubating-SNAPSHOT> org.apache.openjpa.persistence.ArgumentException: The parameter name or position "deptno" passed to execute() is not valid. All map keys must be a declared parameter name or a number matching the parameter position.
at org.apache.openjpa.kernel.QueryImpl.toParameterArray(QueryImpl.java:897)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:825)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:763)
at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:520)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:224)
at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:264)
at com.ibm.ws.query.tests.JUNamedNativeQueryTest.testSelectDeptBean2(JUNamedNativeQueryTest.java:514)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at junit.framework.TestCase.runTest(Unknown Source)
at junit.framework.TestCase.runBare(Unknown Source)
at junit.framework.TestResult$1.protect(Unknown Source)
at junit.framework.TestResult.runProtected(Unknown Source)
at junit.framework.TestResult.run(Unknown Source)
at junit.framework.TestCase.run(Unknown Source)
at junit.framework.TestSuite.runTest(Unknown Source)
at junit.framework.TestSuite.run(Unknown Source)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
|
Show » |
made changes - 25/Jan/07 01:38 AM
| Field |
Original Value |
New Value |
|
Link
|
|
This issue is a clone of OPENJPA-111
[ OPENJPA-111
]
|
made changes - 01/Mar/07 01:12 AM
|
Fix Version/s
|
|
0.9.7
[ 12312340
]
|
made changes - 01/Mar/07 02:04 AM
|
Priority
|
Major
[ 3
]
|
Minor
[ 4
]
|
made changes - 02/Apr/07 07:54 PM
|
Fix Version/s
|
0.9.7
[ 12312340
]
|
|
|
Fix Version/s
|
|
0.9.8
[ 12312446
]
|
made changes - 14/Jul/07 10:05 PM
|
Assignee
|
|
Craig Russell
[ clr
]
|
made changes - 07/Aug/07 06:40 PM
|
Fix Version/s
|
0.9.8
[ 12312446
]
|
|
made changes - 19/Jun/08 12:40 AM
|
Assignee
|
Craig Russell
[ clr
]
|
Pinaki Poddar
[ ppoddar@apache.org
]
|
made changes - 19/Jun/08 12:40 AM
|
Resolution
|
|
Fixed
[ 1
]
|
|
Status
|
Open
[ 1
]
|
Resolved
[ 5
]
|
made changes - 31/Jul/08 08:50 PM
|
Fix Version/s
|
|
1.2.0
[ 12313102
]
|
|
OPENJPA-111), the error message should be more clear.