Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipselink-users] EclipseLink 2.3.3-M1/2.4.0-RC1 & WebSphere 7.0.0.23

Hi Nathan,

The new JPQL parser is pretty solid and passes our tests. Our testing, however is limited to the tests we have in house and the JPA TCK. As a result, it is possible there are some minor incompatibilities between the two parsers. We are committed to fixing those as quickly as possible and the fix for this issue should appear in tonight's 2.4 nightly.

I would like to get you running on 2.3.3 and just wanted to confirm everything was ok on 2.4 before moving on to 2.3.3. (I can find no obvious differences between the two version in that area either.) Can you please try the latest 2.3.3 nightly and let me know if you still see the failure? Also, is there any difference in which VM your two versions of WebSphere are running with?

Thanks,
Tom

On 08/06/2012 4:32 AM, Nathan Drew wrote:
Hi Tom,

That looks like it will correct the problem for 2.4.0-RC1. Does this mean that
the new JPQL parser has some bugs?

I was looking for a change list for between 2.3.x and 2.4 but was unable to find
it myself - is there one? I'm just cautious of patching two components in our
software stack; if anything goes wrong it may cloud any problem solving. If we
can get 2.3.3 working too then that gives us more options - do you have any
ideas that might help for that version?

Many Thanks

Nathan

-----Original Message-----
From: eclipselink-users-bounces@xxxxxxxxxxx
[mailto:eclipselink-users-bounces@xxxxxxxxxxx] On Behalf Of Tom Ware
Sent: 07 June 2012 18:54
To: eclipselink-users@xxxxxxxxxxx
Subject: Re: [eclipselink-users] EclipseLink 2.3.3-M1/2.4.0-RC1 & WebSphere 7.0.0.23

Lets see if we can get the 2.4 version running first.

We changed to a new JPQL parser. Try reverting to the old parser using
persistence unit property:

eclipselink.jpql.parser=org.eclipse.persistence.queries.ANTLRQueryBuilder

-Tom

On 07/06/2012 11:49 AM, Nathan Drew wrote:

 > Hi,

 >

 > I was testing upgrading WebSphere from 7.0.0.17 to 7.0.0.23 and was

 > forced into trying EclipseLink 2.4.0-RC1, we were on 2.3.3-M1. We do

 > need to patch to this level as it contains some official fixes for PMRs that
we had open before.

 >

 > The original error was that 2.3.3-M1 didn't like the Transaction Manager:

 >

 > [6/7/12 12:05:32:626 UTC] 0000002a SystemOut O [EL Severe]: 2012-06-07

 > 12:05:32.624--ServerSession(1169376691)--Local Exception Stack:

 >

 > Exception [EclipseLink-23004] (Eclipse Persistence Services -

 > 2.3.3.v20120111-r10668):

 > org.eclipse.persistence.exceptions.TransactionException

 >

 > Exception Description: Error obtaining the Transaction Manager

 >

 > Internal Exception: java.lang.ClassCastException:

 > com.ibm.ws.tx.jta.TranManagerSet incompatible with

 > javax.transaction.TransactionManager

 >

 > at

 > org.eclipse.persistence.exceptions.TransactionException.errorObtaining

 > TransactionManager(TransactionException.java:125)

 >

 > at

 > org.eclipse.persistence.transaction.JTATransactionController.<init>(JT

 > ATransactionController.java:69)

 >

 > at

 > org.eclipse.persistence.transaction.was.WebSphereTransactionController

 > .<init>(WebSphereTransactionController.java:43)

 >

 > at java.lang.J9VMInternals.newInstanceImpl(Native Method)

 >

 > at java.lang.Class.newInstance(Class.java:1345)

 >

 > at

 > org.eclipse.persistence.internal.security.PrivilegedAccessHelper.newIn

 > stanceFromClass(PrivilegedAccessHelper.java:410)

 >

 > at

 > org.eclipse.persistence.platform.server.ServerPlatformBase.initializeE

 > xternalTransactionController(ServerPlatformBase.java:284)

 >

 > at

 > org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.preConne

 > ctDatasource(DatabaseSessionImpl.java:659)

 >

 > at

 > org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAnd

 > DetectDatasource(DatabaseSessionImpl.java:581)

 >

 > at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.logi

 > n(EntityManagerFactoryProvider.java:206)

 >

 > at

 > org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(Ent

 > ityManagerSetupImpl.java:488)

 >

 > at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getD

 > atabaseSession(EntityManagerFactoryDelegate.java:188)

 >

 > at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.crea

 > teEntityManagerImpl(EntityManagerFactoryDelegate.java:277)

 >

 > at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEn

 > tityManagerImpl(EntityManagerFactoryImpl.java:294)

 >

 > at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEn

 > tityManager(EntityManagerFactoryImpl.java:279)

 >

 > at

 > com.ibm.ws.jpa.management.JPAEMPool.getEntityManager(JPAEMPool.java:14

 > 0)

 >

 > at

 > com.ibm.ws.jpa.management.JPATxEntityManager.getEMInvocationInfo(JPATx

 > EntityManager.java:248)

 >

 > at

 > com.ibm.ws.jpa.management.JPATxEntityManager.getEMInvocationInfo(JPATx

 > EntityManager.java:173)

 >

 > at

 > com.ibm.ws.jpa.management.JPAEntityManager.createNamedQuery(JPAEntityM

 > anager.java:332)

 >

 > at

 > biz.wss.server.services.local.system.ApplicationStateDAOEJB.getApplica

 > tionGlobalStateFromDb(ApplicationStateDAOEJB.java:175)

 >

 > at

 > biz.wss.server.services.local.system.ApplicationStateDAOEJB.applicatio

 > nStateFlaggedAsUpInDb(ApplicationStateDAOEJB.java:219)

 >

 > …

 >

 > So I tried 2.4.0-RC1 and it fails our unit tests and also fails on the

 > server, but seems to be fine with the Transaction Manager…

 >

 > [EL Severe]: ejb: 2012-06-07

 > 15:27:26.382--ServerSession(940667589)--Exception

 > [EclipseLink-0] (Eclipse Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.JPQLException

 >

 > [testng] Exception Description: Syntax error parsing [SELECT r FROM

 > RuleCondition r WHERE r.ruleType = :ruleType AND r.operator =

 > :operator AND (SELECT Count(rcc) FROM r.components rcc ) =

 > :componentCount AND (SELECT

 > Count(rc2) FROM r.components rc2 WHERE rc2.componentId IN

 > :componentIds) = :componentCount].

 >

 > [testng] [154, 252] The right expression is missing from the logical expression.

 >

 > [testng] 2012-06-07 15:27:26,422 WARN

 > org.springframework.test.context.TestContextManager [main]

 > (TestContextManager.java:361) - Caught exception while allowing

 > TestExecutionListener

 > [org.springframework.test.context.transaction.TransactionalTestExecuti

 > onListener@47bb2cb] to process 'before' execution of test method

 > [public void

 > biz.wss.server.services.NamedQueryExeTest.checkNamedQueryNames()

 > throws java.lang.Exception] for test instance

 > [biz.wss.server.services.NamedQueryExeTest@ee51b2c]

 >

 > [testng]

 > org.springframework.transaction.CannotCreateTransactionException:

 > Could not open JPA EntityManager for transaction; nested exception is

 > javax.persistence.PersistenceException: Exception [EclipseLink-28019]

 > (Eclipse Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.EntityManagerSetupException

 >

 > [testng] Exception Description: Deployment of PersistenceUnit [WSSJPA] failed.

 > Close all factories for this PersistenceUnit.

 >

 > [testng] Internal Exception: Exception [EclipseLink-0] (Eclipse

 > Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.JPQLException

 >

 > *[testng] Exception Description: Syntax error parsing [SELECT r FROM

 > RuleCondition r WHERE r.ruleType = :ruleType AND r.operator =

 > :operator AND (SELECT Count(rcc) FROM r.components rcc ) =

 > :componentCount AND (SELECT

 > Count(rc2) FROM r.components rc2 WHERE rc2.componentId IN

 > :componentIds) =

 > :componentCount].*

 >

 > *[testng] [154, 252] The right expression is missing from the logical

 > expression.*

 >

 > [testng] at

 > org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransacti

 > onManager.java:382)

 > ~[org.springframework.orm_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.transaction.support.AbstractPlatformTransactionMan

 > ager.getTransaction(AbstractPlatformTransactionManager.java:371)

 > ~[org.springframework.transaction_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.test.context.transaction.TransactionalTestExecutio

 > nListener$TransactionContext.startTransaction(TransactionalTestExecuti

 > onListener.java:507)

 > ~[org.springframework.test_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.test.context.transaction.TransactionalTestExecutio

 > nListener.startNewTransaction(TransactionalTestExecutionListener.java:

 > 269) ~[org.springframework.test_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.test.context.transaction.TransactionalTestExecutio

 > nListener.beforeTestMethod(TransactionalTestExecutionListener.java:162

 > ) ~[org.springframework.test_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.test.context.TestContextManager.beforeTestMethod(T

 > estContextManager.java:358)

 > ~[org.springframework.test_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.test.context.testng.AbstractTestNGSpringContextTes

 > ts.springTestContextBeforeTestMethod(AbstractTestNGSpringContextTests.

 > java:146) [org.springframework.test_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native

 > Method) ~[na:1.6.0_31]

 >

 > [testng] at

 > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j

 > ava:39)

 > ~[na:1.6.0_31]

 >

 > [testng] at

 > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess

 > orImpl.java:25)

 > ~[na:1.6.0_31]

 >

 > [testng] at java.lang.reflect.Method.invoke(Method.java:597)

 > ~[na:1.6.0_31]

 >

 > [testng] at

 > org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocati

 > onHelper.java:74) [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:525

 > ) [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.internal.Invoker.invokeConfigurations(Invoker.java:202)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.internal.Invoker.invokeMethod(Invoker.java:613)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.internal.Invoker.invokeTestMethod(Invoker.java:846)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1170)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorke

 > r.java:125) [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestRunner.runWorkers(TestRunner.java:1125)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestRunner.privateRun(TestRunner.java:749)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestRunner.run(TestRunner.java:600)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.SuiteRunner.runTest(SuiteRunner.java:317)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.SuiteRunner.runSequentially(SuiteRunner.java:312)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.SuiteRunner.privateRun(SuiteRunner.java:274)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.SuiteRunner.run(SuiteRunner.java:223)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at

 > org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestNG.runSuitesSequentially(TestNG.java:995)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestNG.runSuitesLocally(TestNG.java:920)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestNG.run(TestNG.java:856)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestNG.privateMain(TestNG.java:1137)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] at org.testng.TestNG.main(TestNG.java:1101)

 > [testng-5.14.6.jar:5.14.6-201012231135]

 >

 > [testng] Caused by: javax.persistence.PersistenceException: Exception

 > [EclipseLink-28019] (Eclipse Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.EntityManagerSetupException

 >

 > [testng] Exception Description: Deployment of PersistenceUnit [WSSJPA] failed.

 > Close all factories for this PersistenceUnit.

 >

 > [testng] Internal Exception: Exception [EclipseLink-0] (Eclipse

 > Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.JPQLException

 >

 > [testng] Exception Description: Syntax error parsing [SELECT r FROM

 > RuleCondition r WHERE r.ruleType = :ruleType AND r.operator =

 > :operator AND (SELECT Count(rcc) FROM r.components rcc ) =

 > :componentCount AND (SELECT

 > Count(rc2) FROM r.components rc2 WHERE rc2.componentId IN

 > :componentIds) = :componentCount].

 >

 > [testng] [154, 252] The right expression is missing from the logical expression.

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createDepl

 > oyFailedPersistenceException(EntityManagerSetupImpl.java:616)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(Ent

 > ityManagerSetupImpl.java:596) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getD

 > atabaseSession(EntityManagerFactoryDelegate.java:186)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.crea

 > teEntityManagerImpl(EntityManagerFactoryDelegate.java:278)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEn

 > tityManagerImpl(EntityManagerFactoryImpl.java:304)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEn

 > tityManager(EntityManagerFactoryImpl.java:282)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.springframework.orm.jpa.JpaTransactionManager.createEntityManagerF

 > orTransaction(JpaTransactionManager.java:400)

 > ~[org.springframework.orm_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] at

 > org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransacti

 > onManager.java:321)

 > ~[org.springframework.orm_3.0.5.RELEASE.jar:3.0.5.RELEASE]

 >

 > [testng] ... 32 common frames omitted

 >

 > [testng] Caused by:
org.eclipse.persistence.exceptions.EntityManagerSetupException:

 >

 > [testng] *Exception Description: Deployment of PersistenceUnit [WSSJPA] failed.

 > Close all factories for this PersistenceUnit.*

 >

 > [testng] Internal Exception: Exception [EclipseLink-0] (Eclipse

 > Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.JPQLException

 >

 > [testng] Exception Description: Syntax error parsing [SELECT r FROM

 > RuleCondition r WHERE r.ruleType = :ruleType AND r.operator =

 > :operator AND (SELECT Count(rcc) FROM r.components rcc ) =

 > :componentCount AND (SELECT

 > Count(rc2) FROM r.components rc2 WHERE rc2.componentId IN

 > :componentIds) = :componentCount].

 >

 > [testng] [154, 252] The right expression is missing from the logical expression.

 >

 > [testng] at

 > org.eclipse.persistence.exceptions.EntityManagerSetupException.deployF

 > ailed(EntityManagerSetupException.java:229)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] ... 40 common frames omitted

 >

 > [testng] Caused by: org.eclipse.persistence.exceptions.JPQLException:

 >

 > [testng] Exception Description: Syntax error parsing [SELECT r FROM

 > RuleCondition r WHERE r.ruleType = :ruleType AND r.operator =

 > :operator AND (SELECT Count(rcc) FROM r.components rcc ) =

 > :componentCount AND (SELECT

 > Count(rc2) FROM r.components rc2 WHERE rc2.componentId IN

 > :componentIds) = :componentCount].

 >

 > [testng] [154, 252] The right expression is missing from the logical expression.

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.jpql.HermesParser.buildException(

 > HermesParser.java:150) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.jpql.HermesParser.validate(Hermes

 > Parser.java:325) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.jpql.HermesParser.populateQueryIm

 > p(HermesParser.java:270) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.jpql.HermesParser.buildQuery(Herm

 > esParser.java:157) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EJBQueryImpl.buildEJBQLDatabaseQu

 > ery(EJBQueryImpl.java:138) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.JPAQuery.processJPQLQuery(JPAQuer

 > y.java:108) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.JPAQuery.prepare(JPAQuery.java:92

 > ) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQue

 > ry.java:614) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQue

 > ry.java:575) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.sessions.AbstractSession.processJPAQu

 > eries(AbstractSession.java:2244)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initiali

 > zeDescriptors(DatabaseSessionImpl.java:540)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConn

 > ectDatasource(DatabaseSessionImpl.java:777)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.login(Da

 > tabaseSessionImpl.java:735) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.logi

 > n(EntityManagerFactoryProvider.java:215)

 > ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] at

 > org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(Ent

 > ityManagerSetupImpl.java:542) ~[Bedrock.libs.jpa.eclipselink.jar:na]

 >

 > [testng] ... 38 common frames omitted

 >

 > [testng]

 > org.springframework.transaction.CannotCreateTransactionException:

 > Could not open JPA EntityManager for transaction; nested exception is

 > javax.persistence.PersistenceException: Exception [EclipseLink-28019]

 > (Eclipse Persistence Services - 2.4.0.v20120604-r11619):

 > org.eclipse.persistence.exceptions.EntityManagerSetupException

 >

 > Any ideas?

 >

 > Kind Regards

 >

 > Nathan

 >

 >

 >

 > _______________________________________________

 > eclipselink-users mailing list

 > eclipselink-users@xxxxxxxxxxx <mailto:eclipselink-users@xxxxxxxxxxx>

 > https://dev.eclipse.org/mailman/listinfo/eclipselink-users

_______________________________________________

eclipselink-users mailing list

eclipselink-users@xxxxxxxxxxx <mailto:eclipselink-users@xxxxxxxxxxx>

https://dev.eclipse.org/mailman/listinfo/eclipselink-users



_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users


Back to the top