Hello again, I am encountering the next obstacle with the openjpa-maven-plugin (ver 2.2.2) in further proceeding to solve that original issue of the VerifyError at ClassRedefiner.redefineClasses.
I copied the original project to my temp folder and stripped most of stuff to dig the cause and I now end up to suspect that it is caused by lack of meta data from enhancing as Rick mentioned. As Rick's recommendation, I abandoned the enhancement via java agent and am switching to build-time enhancement via the openjpa-maven-plugin (ver 2.2.2). Now, I encountered the openjpa-maven-plugin failure like: Caused by: <openjpa-2.2.0-r422266:1244990 fatal user error> org.apache.openjpa.util.MetaDataException: MetaDataFactory could not be configured (conf.newMetaDataFactoryInstance() returned null). This might mean that no configuration properties were found. Ensure that you have a META-INF/persistence.xml file, that it is available in your classpath, or that the properties file you are using for configuration is available. If you are using Ant, please see the <properties> or <propertiesFile> attributes of the task's nested <config> element. This can also occur if your OpenJPA distribution jars are corrupt, or if your security policy is overly strict. at org.apache.openjpa.meta.MetaDataRepository.initializeMetaDataFactory(MetaDataRepository.java:1904) at org.apache.openjpa.meta.MetaDataRepository.endConfiguration(MetaDataRepository.java:1885) at org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations.java:518) at org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations.java:443) at org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:104) at org.apache.openjpa.conf.MetaDataRepositoryValue.instantiate(MetaDataRepositoryValue.java:68) at org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:83) at org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepositoryInstance(OpenJPAConfigurationImpl.java:968) at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4761) at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4743) at org.apache.openjpa.enhance.PCEnhancer$1.run(PCEnhancer.java:4713) at org.apache.openjpa.lib.conf.Configurations.launchRunnable(Configurations.java:741) at org.apache.openjpa.lib.conf.Configurations.runAgainstAllAnchors(Configurations.java:726) at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4708) at org.apache.openjpa.tools.maven.AbstractOpenJpaEnhancerMojo.enhance(AbstractOpenJpaEnhancerMojo.java:133) at org.apache.openjpa.tools.maven.AbstractOpenJpaEnhancerMojo.execute(AbstractOpenJpaEnhancerMojo.java:95) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) ... 20 more I confirmed: - The persistence.xml file exists in the META-INF folder D:\Temp\e_commerce_ejb>dir target\test-classes\META-INF\persistence.xml Volume in drive D has no label. Volume Serial Number is 7473-DAB0 Directory of D:\Temp\e_commerce_ejb\target\test-classes\META-INF 10/08/2013 01:14 PM 2,207 persistence.xml - openjpa-asm-shaded-2.2.0.jar is not corrupted // // File Checksum Integrity Verifier version 2.05. // MD5 SHA-1 ------------------------------------------------------------------------- 4462e3cb943f34fc2ce35f2c673c36be 80ac19f0a66f9feee262a431477d5efd4b3efe98 openjpa-asm-shaded-2.2.0.jar I attempted to provide the persistenceXmlFile option of the openjpa-maven-plugin to specify the location of the persistence.xml (after I moved it to different location: src\test\java_ee_instance\persistence.xml), and I hit MissingResourceException like: Caused by: org.apache.maven.plugin.PluginExecutionException: Execution enhancing of goal org.apache.openjpa:openjpa-maven-plugin:2.2.2:test-enhance failed: org.apache.openjpa.conf.OpenJPAConfigurationImpl@3f036fed.propertiesFile = src\test\java_ee_instance\persistence.xml at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:110) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) ... 19 more Caused by: org.apache.openjpa.lib.util.ParseException: org.apache.openjpa.conf.OpenJPAConfigurationImpl@3f036fed.propertiesFile = src\test\java_ee_instance\persistence.xml at org.apache.openjpa.lib.util.Options.setInto(Options.java:239) at org.apache.openjpa.lib.util.Options.setInto(Options.java:192) at org.apache.openjpa.lib.conf.Configurations.populateConfiguration(Configurations.java:370) at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4742) at org.apache.openjpa.enhance.PCEnhancer$1.run(PCEnhancer.java:4713) at org.apache.openjpa.lib.conf.Configurations.launchRunnable(Configurations.java:741) at org.apache.openjpa.lib.conf.Configurations.runAgainstAllAnchors(Configurations.java:726) at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4708) at org.apache.openjpa.tools.maven.AbstractOpenJpaEnhancerMojo.enhance(AbstractOpenJpaEnhancerMojo.java:133) at org.apache.openjpa.tools.maven.AbstractOpenJpaEnhancerMojo.execute(AbstractOpenJpaEnhancerMojo.java:95) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) ... 20 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.apache.openjpa.lib.util.Options.invoke(Options.java:402) at org.apache.openjpa.lib.util.Options.setInto(Options.java:236) ... 30 more Caused by: java.util.MissingResourceException: D:\Temp\e_commerce_ejb\src\test\java_ee_instance\persistence.xml#null at org.apache.openjpa.lib.conf.ProductDerivations.load(ProductDerivations.java:323) at org.apache.openjpa.lib.conf.ConfigurationImpl.setPropertiesFile(ConfigurationImpl.java:863) ... 36 more Here's the snippet from my pom.xml: <plugin> <groupId>org.apache.openjpa</groupId> <artifactId>openjpa-maven-plugin</artifactId> <version>2.2.2</version> <dependencies> <dependency> <groupId>org.apache.openejb.patch</groupId> <artifactId>openjpa-asm-shaded</artifactId> <version>2.2.0</version> </dependency> <dependency> <groupId>asm</groupId> <artifactId>asm</artifactId> <version>3.2</version> </dependency> </dependencies> <executions> <execution> <id>enhancing</id> <phase>process-test-classes</phase> <goals><goal>test-enhance</goal></goals> <configuration> <includes>**/dao/*.class</includes> <includes>**/dao/entity/*.class</includes> <addDefaultConstructor>true</addDefaultConstructor> <enforcePropertyRestrictions>true</enforcePropertyRestrictions> <!-- persistenceXmlFile>src${file.separator}test${file.separator}java_ee_instance${file.separator}persistence.xml</persistenceXmlFile> <persistenceXmlFile>${basedir}${file.separator}src${file.separator}test${file.separator}java_ee_instance${file.separator}persistence.xml</persistenceXmlFile --> <!-- Adding ${basedir} prefix did not solve MissingResourceException by persistence.xml#null --> </configuration> </execution> </executions> </plugin> I appreciate any advise because, at this point, I have the only one option: giving up OpenEJB (and OpenJPA) and going back to the previous method of EJB test (using embedded glassfish). Regards, Art On Thu, Oct 3, 2013 at 11:00 AM, Arata Yamamoto <art...@gmail.com> wrote: > Hello again, > > > >what is up with all of the '*' characters in your command line input? > Sorry, those were just garbage sneaked in at coping & pasting from editor > (on guest OS of virtual PC on remote PC) to browser while having wrote my > last e-mail. Hence, there was not such garbage at the actual command line. > > >The other option would be to setup the build time enhancer and avoid this > headache all together. > Thank you for your advise. > Since I used the dynamic enhancing method at test because I am actually > developing the project of abstract EJB beans what can be extended and used > in the other project(s), I may try the build time enhancer by configuring > to do at the test class compilation. Anyway, I will try that option just > for inspecting this issue further. > > I also have a little hunch of the cause. > > I will keep digging a little by little (with your guide). > > Thank you, > Art > > > > > > On Thu, Oct 3, 2013 at 7:00 AM, Rick Curtis <curti...@gmail.com> wrote: > >> Maybe this is a stupid question, but what is up with all of the '*' >> characters in your command line input? >> >> The other option would be to setup the build time enhancer and avoid this >> headache all together. >> >> >> On Wed, Oct 2, 2013 at 11:22 PM, Arata Yamamoto <art...@gmail.com> wrote: >> >> > Dear Rick, >> > >> > Thank you for your reply. >> > >> > I have the following log record regarding enhancing: >> > INFO: Creating subclass and redefining methods for "[class >> > com.newmainsoftech.jecommerce.dao.entity.OrderedProductPK, class >> > com.newmainsoftech.jecommerce.dao.entity.ContactBase, class >> > com.newmainsoftech.jecommerce.dao.entity.CustomerOrder, class >> > com.newmainsoftech.jecommerce.dao.entity.Product, class >> > com.newmainsoftech.jecommerce.dao.entity.Category, class >> > com.newmainsoftech.jecommerce.dao.entity.Customer, class >> > com.newmainsoftech.jecommerce.dao.entity.OrderedProduct, class >> > com.newmainsoftech.jecommerce.dao.entity.Supplier]". This means that >> your >> > application will be less efficient than it would if you ran the OpenJPA >> > enhancer. >> > >> > I attempted to specify the Java Agent of OpenEJB or/and OpenJPA in the >> > following dynamic manners, and got the same log record above regarding >> > enhancing entity classes and got the same result >> > >> > >> (ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:176) >> > log in the stacktrace): >> > >> > - With OpenEJB agent: >> > >> > ------------------------------------------------------- >> > T E S T S >> > ------------------------------------------------------- >> > Forking command line: cmd.exe /X /C "C:\Java\jdk1.7.0_21\jre\bin\java * >> > -javaagent:*D:\mvn_repo\org\apache\openejb\openejb-javaagent\4.5.2\* >> > >> > >> openejb-javaagent-4.5.2.jar*-javaagent:D:\mvn_repo\org\aspectj\aspectjweaver\1.7.3\aspectjweaver-1.7.3.jar >> > -jar >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefirebooter4357830757705183064.jar >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefire845547936850090051tmp >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefire3588961403524465407tmp" >> > >> > - With OpenJPA agent: >> > >> > ------------------------------------------------------- >> > T E S T S >> > ------------------------------------------------------- >> > Forking command line: cmd.exe /X /C "C:\Java\jdk1.7.0_21\jre\bin\java * >> > >> -javaagent:*D:\mvn_repo\org\apache\openejb\patch\openjpa-asm-shaded\2.2.0\* >> > >> > >> openjpa-asm-shaded-2.2.0.jar*-javaagent:D:\mvn_repo\org\aspectj\aspectjweaver\1.7.3\aspectjweaver-1.7.3.jar >> > -jar >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefirebooter7332055104354137715.jar >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefire8510714806139240938tmp >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefire7644070897687503479tmp" >> > >> > - With OpenJPA agent + OpenEJB agent >> > >> > ------------------------------------------------------- >> > T E S T S >> > ------------------------------------------------------- >> > Forking command line: cmd.exe /X /C "C:\Java\jdk1.7.0_21\jre\bin\java * >> > >> -javaagent:*D:\mvn_repo\org\apache\openejb\patch\openjpa-asm-shaded\2.2.0\* >> > openjpa-asm-shaded-2.2.0.jar* *-javaagent* >> > :D:\mvn_repo\org\apache\openejb\openejb-javaagent\4.5.2\* >> > >> > >> openejb-javaagent-4.5.2.jar*-javaagent:D:\mvn_repo\org\aspectj\aspectjweaver\1.7.3\aspectjweaver-1.7.3.jar >> > -jar >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefirebooter5316621859494960948.jar >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefire5778328340144466825tmp >> > >> > >> D:\EclipseWorkspaces\NetBeansE-commerce\e_commerce_demo\e_commerce_ejb\target\surefire\surefire2316888947938102575tmp" >> > >> > Additional note: asm-3.2.jar was included in test class path. >> > >> > Regards, >> > Art >> > >> > >> > >> > >> > On Mon, Sep 30, 2013 at 6:35 AM, Rick Curtis <curti...@gmail.com> >> wrote: >> > >> > > It appears that you need to enhance your Entities[1]. >> > > >> > > Thanks, >> > > Rick >> > > >> > > [1] http://openjpa.apache.org/entity-enhancement.html >> > > >> > > >> > > On Sat, Sep 28, 2013 at 6:34 PM, Arata Yamamoto <art...@gmail.com> >> > wrote: >> > > >> > > > Dear group, >> > > > >> > > > I just started to try using OpenEJB for testing my EJB beans. So, >> I'm >> > > > pretty beginner with OpenEJB (and OpenJPA). >> > > > I hit the next exception (what I cannot overcome) in my test using >> > > > OpenEJB's ApplicationComposer: >> > > > Exception stacktrace: >> > > > Caused by: java.rmi.RemoteException: The bean encountered a >> > > non-application >> > > > exception; nested exception is: >> > > > <openjpa-2.2.0-r422266:1244990 fatal general error> >> > > > org.apache.openjpa.persistence.PersistenceException: null >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:154) >> > > > ... 43 more >> > > > Caused by: <openjpa-2.2.0-r422266:1244990 fatal general error> >> > > > org.apache.openjpa.persistence.PersistenceException: null >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.enhance.ClassRedefiner.redefineClasses(ClassRedefiner.java:96) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:176) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:314) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:238) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:212) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.createEntityManager(ReloadableEntityManagerFactory.java:160) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.persistence.JtaEntityManagerRegistry.getEntityManager(JtaEntityManagerRegistry.java:115) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.persistence.JtaEntityManager.getEntityManager(JtaEntityManager.java:80) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.persistence.JtaEntityManager.getMetamodel(JtaEntityManager.java:475) >> > > > at >> > > > >> > > > >> > > >> > >> com.newmainsoftech.jecommerce.dao.impl.AbstractFacadeImpl.postConstruct(AbstractFacadeImpl.java:28) >> > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> > > > at >> > > > >> > > > >> > > >> > >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >> > > > at >> > > > >> > > > >> > > >> > >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> > > > at java.lang.reflect.Method.invoke(Method.java:601) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.interceptor.ReflectionInvocationContext$LifecycleInvocation.invoke(ReflectionInvocationContext.java:213) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:176) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.monitoring.StatsInterceptor.PostConstruct(StatsInterceptor.java:104) >> > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> > > > at >> > > > >> > > > >> > > >> > >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >> > > > at >> > > > >> > > > >> > > >> > >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> > > > at java.lang.reflect.Method.invoke(Method.java:601) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163) >> > > > at >> > > > >> > > > >> > > >> > >> org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:138) >> > > > at >> > org.apache.openejb.BeanContext.newInstance(BeanContext.java:1478) >> > > > ... 42 more >> > > > Caused by: java.lang.reflect.InvocationTargetException >> > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> > > > at >> > > > >> > > > >> > > >> > >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >> > > > at >> > > > >> > > > >> > > >> > >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> > > > at java.lang.reflect.Method.invoke(Method.java:601) >> > > > at org.apache.openjpa.enhance.* >> > > > ClassRedefiner.redefineClasses(ClassRedefiner.java:85)* >> > > > ... 71 more >> > > > Caused by: java.lang.VerifyError >> > > > at sun.instrument.InstrumentationImpl.retransformClasses0(Native >> > > > Method) >> > > > at >> > > > >> > > > >> > > >> > >> sun.instrument.InstrumentationImpl.retransformClasses(InstrumentationImpl.java:144) >> > > > ... 76 more >> > > > >> > > > Statement throwing exception in the test method: >> > > > @Test >> > > > public void test_create() { >> > > > final String testName = JUnitAssistAspect.getTestName(); >> > > > >> > > > final Category category = new Category(); >> > > > category.setName( testName); >> > > > >> > > > final CategoryFacade categoryFacade = getCategoryFacade(); >> > > > categoryFacade.create( category); // <-- Exception is thrown at >> > here! >> > > > ... >> > > > } >> > > > >> > > > I traced and dumped the calls from ClassRedefiner.redefineClasses to >> > > > reflect.Method.invoke: >> > > > 16:27:24.078 [main] INFO >> > > > >> > > > >> > > >> > >> c.n.j.d.i.AbstractCategoryFacadeImplTest$CreateEntityManagerDebugTraceAspect >> > > > - >> > > > Invocation start : org.apache.openjpa.enhance.* >> > > > ClassRedefiner.redefineClasses*( >> > > > >> > > > >> > > > >> > > >> > >> conf(type:JDBCConfigurationImpl)=org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl@7a44ac1a >> > > > , >> > > > *classes(type:HashMap)={ >> > > > class >> > com.newmainsoftech.jecommerce.dao.entity.Product*=[B@9d8e7b >> > > > *, >> > > > class >> > com.newmainsoftech.jecommerce.dao.entity.OrderedProductPK* >> > > > =[B@1f54525*, >> > > > class >> > > com.newmainsoftech.jecommerce.dao.entity.Supplier*=[B@18eb67b >> > > > *, >> > > > >> > > > class >> > > com.newmainsoftech.jecommerce.dao.entity.Customer*=[B@6e7953 >> > > > *, >> > > > >> > > > class >> com.newmainsoftech.jecommerce.dao.entity.OrderedProduct* >> > > > =[B@df77f7*, >> > > > class >> > > com.newmainsoftech.jecommerce.dao.entity.Category*=[B@13d164c >> > > > *, >> > > > >> > > > class >> com.newmainsoftech.jecommerce.dao.entity.CustomerOrder* >> > > > =[B@1830452*, >> > > > class com.newmainsoftech.jecommerce.dao.entity.ContactBase* >> > > > =[B@90daa2* >> > > > }* >> > > > ) @ ClassRedefiner.java:55 >> > > > >> > > > 16:27:24.078 [main] INFO >> > > > >> > c.n.j.d.i.AbstractCategoryFacadeImplTest$RedefineClassesDebugTraceAspect >> > > - >> > > > Invocation start : java.lang.reflect.Method.invoke( >> > > > >> > > > >> > >> arg0(type:InstrumentationImpl)=sun.instrument.InstrumentationImpl@17b930d >> > > , >> > > > >> > > > >> > arg1(type:Object[])=[org.apache.openjpa.enhance.ClassRedefiner$1@1f378ca >> > > , >> > > > true] >> > > > ) @ ClassRedefiner.java:82 >> > > > 16:27:24.078 [main] INFO >> > > > >> > c.n.j.d.i.AbstractCategoryFacadeImplTest$RedefineClassesDebugTraceAspect >> > > - >> > > > Invocation end : java.lang.reflect.Method.invoke( >> > > > >> > > > >> > >> arg0(type:InstrumentationImpl)=sun.instrument.InstrumentationImpl@17b930d >> > > , >> > > > >> > > > >> > arg1(type:Object[])=[org.apache.openjpa.enhance.ClassRedefiner$1@1f378ca >> > > , >> > > > true] >> > > > ) @ ClassRedefiner.java:82 >> > > > Returned null >> > > > >> > > > 16:27:24.078 [main] INFO >> > > > >> > c.n.j.d.i.AbstractCategoryFacadeImplTest$RedefineClassesDebugTraceAspect >> > > - >> > > > Invocation start : java.lang.reflect.*Method.invoke*( >> > > > >> > *arg0*(type:InstrumentationImpl)=*sun.instrument.InstrumentationImpl* >> > > > @17b930d, >> > > > *arg1*(type:Object[])=*[[Ljava.lang.Class;@17f2629]* >> > > > ) *@ ClassRedefiner.java:85* >> > > > >> > > > It's puzzling me why >> > > sun.instrument.InstrumentationImpl.retransformClasses >> > > > method throws the VerifyError exception, since, from the above >> dump, it >> > > > appeared to me that the array local field in the >> > > > ClassRedefiner.redefineClasses method holds the array of the proper >> > > entity >> > > > bean classes. >> > > > >> > > > Environment: >> > > > OpenEJB ver 4.5.2 >> > > > OpenJPA ver 2.2.0 (as resolved openjpa-asm-shaded dependency from >> > > > openejb-core artifact dependency) >> > > > EJB 3 >> > > > JDK 1.7.0 >> > > > Windows box >> > > > >> > > > Can someone shed the guiding light? >> > > > I appreciate any advises since I am pretty beginner of OpenEJB (and >> > > > OpenJPA). >> > > > >> > > > Regards, >> > > > Art >> > > > >> > > >> > > >> > > >> > > -- >> > > *Rick Curtis* >> > > >> > >> >> >> >> -- >> *Rick Curtis* >> > >