From dev-return-20950-apmail-openjpa-dev-archive=openjpa.apache.org@openjpa.apache.org Thu Sep 13 15:15:10 2012 Return-Path: X-Original-To: apmail-openjpa-dev-archive@www.apache.org Delivered-To: apmail-openjpa-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A0AE79634 for ; Thu, 13 Sep 2012 15:15:09 +0000 (UTC) Received: (qmail 11752 invoked by uid 500); 13 Sep 2012 15:15:08 -0000 Delivered-To: apmail-openjpa-dev-archive@openjpa.apache.org Received: (qmail 11640 invoked by uid 500); 13 Sep 2012 15:15:08 -0000 Mailing-List: contact dev-help@openjpa.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openjpa.apache.org Delivered-To: mailing list dev@openjpa.apache.org Received: (qmail 11442 invoked by uid 99); 13 Sep 2012 15:15:08 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Sep 2012 15:15:08 +0000 Date: Fri, 14 Sep 2012 02:15:08 +1100 (NCT) From: "Jody Grassel (JIRA)" To: dev@openjpa.apache.org Message-ID: <1916815099.75146.1347549308349.JavaMail.jiratomcat@arcas> In-Reply-To: <347969479.66874.1340894864520.JavaMail.jiratomcat@issues-vm> Subject: [jira] [Assigned] (OPENJPA-2221) Use of AbstractValueHandler map() causes exception on find() MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/OPENJPA-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jody Grassel reassigned OPENJPA-2221: ------------------------------------- Assignee: Jody Grassel (was: Dianne Richards) > Use of AbstractValueHandler map() causes exception on find() > ------------------------------------------------------------ > > Key: OPENJPA-2221 > URL: https://issues.apache.org/jira/browse/OPENJPA-2221 > Project: OpenJPA > Issue Type: Bug > Affects Versions: 2.1.0 > Reporter: Dianne Richards > Assignee: Jody Grassel > Fix For: 2.1.1 > > > When a value strategy implemented by a subclass of AbstractValuehandler overrides the map() method, an exception occurs on a find() if the strategy is implemented on an id field. The method returns a Column[]. > org.apache.openjpa.persistence.ArgumentException: The specified parameter of type "class [Ljava.lang.Object;" is not a valid query parameter. > FailedObject: id1 [org.apache.openjpa.util.StringId] [java.lang.String] > at org.apache.openjpa.jdbc.sql.DBDictionary.setUnknown(DBDictionary.java:1465) > at org.apache.openjpa.jdbc.sql.DBDictionary.setUnknown(DBDictionary.java:1391) > at org.apache.openjpa.jdbc.sql.SQLBuffer.setParameters(SQLBuffer.java:656) > at org.apache.openjpa.jdbc.sql.SQLBuffer.prepareStatement(SQLBuffer.java:565) > at org.apache.openjpa.jdbc.sql.SQLBuffer.prepareStatement(SQLBuffer.java:541) > at org.apache.openjpa.jdbc.sql.SelectImpl.prepareStatement(SelectImpl.java:479) > at org.apache.openjpa.jdbc.sql.SelectImpl.execute(SelectImpl.java:420) > at org.apache.openjpa.jdbc.sql.SelectImpl.execute(SelectImpl.java:382) > at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getInitializeStateResult(JDBCStoreManager.java:576) > at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initializeState(JDBCStoreManager.java:378) > at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initialize(JDBCStoreManager.java:333) > at org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:112) > at org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57) > at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:1027) > at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:985) > at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:902) > at org.apache.openjpa.kernel.DelegatingBroker.find(DelegatingBroker.java:231) > at org.apache.openjpa.persistence.EntityManagerImpl.find(EntityManagerImpl.java:486) > at org.apache.openjpa.persistence.strategy.value.TestValueStrategy.testIt(TestValueStrategy.java:37) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) > at java.lang.reflect.Method.invoke(Method.java:613) > at junit.framework.TestCase.runTest(TestCase.java:154) > at org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runTest(AbstractPersistenceTestCase.java:579) > at junit.framework.TestCase.runBare(TestCase.java:127) > at org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runBare(AbstractPersistenceTestCase.java:566) > at org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runBare(AbstractPersistenceTestCase.java:542) > at junit.framework.TestResult$1.protect(TestResult.java:106) > at junit.framework.TestResult.runProtected(TestResult.java:124) > at junit.framework.TestResult.run(TestResult.java:109) > at junit.framework.TestCase.run(TestCase.java:118) > at org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.run(AbstractPersistenceTestCase.java:206) > at junit.framework.TestSuite.runTest(TestSuite.java:208) > at junit.framework.TestSuite.run(TestSuite.java:203) > at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130) > at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) > at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) > Presumably the exception would occur on other fields if they were part of the query. > The DBDictionary setUnknown() method needs to handle input of an Object[]. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira