Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipselink-users] Can't deploy when using LAZY, can deply when using EAGER

Hi Michael,

I've taken a look at the report - I'm not sure what the numbers are between the timestamps and the filenames. I'm guessing something like actual size and compressed size, but I am not sure.

'not knowing which files are domain classes and which are other classes, it is hard to tell exactly what is happening, but from what I can see, the quite a number of the class files are bigger in the weaved jar - this is what I would expect.

As I mentioned below, I am not surprised we are not handling the nested jar file (eBill-Common.jar). The static weaver does not address that since it is a JSE application and uses fairly simple constructs to process the jar. To have that jar used properly by the static weaver, you will have to remove it from the original jar and instead put it on the classpath used by the static weaver.

Aside from that, I can see no obvious problems. You mention that file file is corrupt. What are the symptoms of the corruption (other than the issue with the nested jar)?

If you have a decompiler, you should be able to decompile the weaved classes. One way to tell if they have been weaved is to see if they now implement an interface called PersistenceWeaved.

-Tom

Michael Bar-sinai wrote:
Hello Tom,
Thanks for the continuing support. I've decided to take a different approach to this problem, trying to re-create it on a small-scale project that could be sent around. For no avail - I have the exact object graph and it deploys with no problem to the same server. This led me to think that there might be a memory issue somewhere, as the original project is quite big. I ran the static weaver with -Xmx1200m, but got the same results.

I posted a full listing of the weaved and non-weaved jars here:
http://rapidshare.com/files/282906389/jar-reports.zip.html
Please see if you can make any sense of it. In winRar, folders which have files also have an empty file with an empty name. Folders that contain only folders (e.g. package il.co <http://il.co/>) do not have this problem.

Michael

On Thu, Sep 17, 2009 at 4:16 PM, Tom Ware <tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>> wrote:

    Hi Michael,

     The static weaving processor will not handle nested jar files.  You
    may have to do a slight reconfiguration to have weaving work.  Try
    pulling the nested jar files out and ensuring they are listed in the
    classpath argument provided to the static weaver.


    -Tom

    Michael Bar-sinai wrote:

        Hi Tom,

        The persistence unit holds about 20 classes, and is quite
        dynamic at the moment.

        The ejb file is corrupt. For example, the top-level dir looks
        like this:
        il (dir, base package)
        META-INF (dir)
        eBill-Common.jar (75K, the original is 275K)
        META-INF (file, size = 0)

        I'll see if I can get anything new by using FINEST.

        Michael


        On Wed, Sep 16, 2009 at 4:17 PM, Tom Ware <tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx> <mailto:tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx>>> wrote:

           Hi Michael,

            The only thing you can do to make things more verbose to to
           increase the logging level to FINEST.

            How big is your persistence unit?  How difficult would it be to
           actually list the classes in your persistence.xml rather than use
           <exclude-unlisted-classes>false</exclude-unlisted-classes>?

            What is missing from your weaved jar?  (You say it is about half
           the size of your unweaved jar.)  Are the missing classes part of
           your persistence unit, or they among the "other classes" you
        mention
           below?  If they are from the persistence unit, can you provide an
           example of one of the classes that is missing?

            Another thing to try is to see if running the weaver against a
           persistence.xml that contains only one of your persistence units
           makes any difference.


           -Tom

           Michael Bar-sinai wrote:

               Hi Tom,

               The typo is only in the command I posted here... I actually
               renamed that jar to have a shorter name.
               eBill-Ejb.jar has the domain classes and the
               META-INF/persistence.xml file, as well as other classes.
        Is it
               possible that the static weaver fails like the one in the
               application server? It there any -verbose flag I can use?

               The contents of persistence.xml follows:
               <?xml version="1.0" encoding="UTF-8"?>
               <persistence version="1.0"
               xmlns="http://java.sun.com/xml/ns/persistence";
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
               xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
               http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd";>
               <persistence-unit name="eBill-PU-JTA" transaction-type="JTA">
               <description>
               Normal use PU - used in most EJB actions.
               </description>
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
               <jta-data-source>jdbc/eBill</jta-data-source>
               <exclude-unlisted-classes>false</exclude-unlisted-classes>
               <properties>
                    <!--
               -->
               <property name="eclipselink.ddl-generation"
        value="create-tables"/>
               <property name="eclipselink.logging.level" value="FINE"/>
               <property name="eclipselink.jdbc.native-sql" value="true"/>
               <property name="eclipselink.target-server" value="SunAS9"/>
               <property name="eclipselink.target-database"
        value="SQLServer"/>
               <property name="eclipselink.weaving" value="static" />
               </properties>
               </persistence-unit>
               <persistence-unit name="eBill-PU-RL"
               transaction-type="RESOURCE_LOCAL">
               <description>
               Used for when we need to do fine-grained TXN control,
        e.g. when
               doing mass deletion.
               </description>
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
               <non-jta-data-source>jdbc/eBill</non-jta-data-source>
               <exclude-unlisted-classes>false</exclude-unlisted-classes>
               <properties>
               <property name="toplink.target-database" value="SQLServer"/>
               <property name="eclipselink.target-server" value="SunAS9"/>
               </properties>
               </persistence-unit>
               </persistence>

               Thanks,
               Michael


               On Tue, Sep 15, 2009 at 6:12 PM, Tom Ware
        <tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>
               <mailto:tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>>
        <mailto:tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>
               <mailto:tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx>>>> wrote:

                  Hi Michael,

                   I see a typo in your command line: it should be
               javax.persistence
                  (not avax.persistence)

                   What is the contents of your eBill-ejb.jar?
                   META-INF/persistence.xml? your domain classes?
         Anything else?

                  -Tom

                  Michael Bar-sinai wrote:

                      Hi Tom,
                      Thanks for your reply. I tried static weaving
        using the
                      following command (I had to improvise a bit, as the
               command in
                      the wiki does not really run as is  )

                      % java -cp
eclipselink.jar;avax.persistence_1.0.0.v200905011740.jar
                      org.eclipse.persistence.tools.weaving.jpa.StaticWeave
                      -persistenceinfo eBill-ejb.jar -classpath
        eBill-ejb.jar
                      eBill-ejb.jar eBill-ejb-w.jar

                      I did not get any errors, but the weaved ejb is
         394KB, while
                      the original is 809KB.

                      The deployment failed over the expansion of the
        archive, so I
                      guess something did go wrong here.

                      I'm not sure how to use the ant task, as this is a
               Netbeans project.

                      Any ideas?

                      Michael

                      On Mon, Sep 14, 2009 at 11:25 PM, Tom Ware
               <tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>
        <mailto:tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>>
                      <mailto:tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx> <mailto:tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx>>>
               <mailto:tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>
        <mailto:tom.ware@xxxxxxxxxx <mailto:tom.ware@xxxxxxxxxx>>

                      <mailto:tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx>
               <mailto:tom.ware@xxxxxxxxxx
        <mailto:tom.ware@xxxxxxxxxx>>>>> wrote:

                         Hi Michael,

                          I am not sure if there are any issues with the way
               GlassFish
                         handles this, but I can try to help you from an
               EclipseLink
                      point of
                         view.

                          The first thing to do is to see if static
        weaving helps:

http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_%28ELUG%29#How_to_Configure_Static_Weaving_for_JPA_Entities

                          This will help us to isolate whether you are
        seeing
               an issue
                         related to classloaders or an issue related to
               persistence unit
                         configuration.

                         -Tom

                         Michael Bar-Sinai wrote:

                             Hello All,

                             I develop a large JEE app, with eclipselink
        as the JPA
                      provider.
                             I switched from Toplink Essentials, where the
               application
                      had no
                             problem deploying; with eclipselink I get all
               kinds of Null
                             Pointer Exceptions when I deploy the app.
        The problem
                      seems to
                             boil down to three relationships between
        objects.
               When I make
                             them EAGER, the application deploys. When
        they're
               LAZY, it
                             doesn't. I followed this thread
<http://www.nabble.com/OneToOne-Mapping-works-with-FetchType.EAGER-but-not-with-FetchType.LAZY--%3E-Exception-when-deploying-%28SGES-2.1%29-p21711849.html>,
                             but they did not come to any conclusions. I did
               find more
                      info
                             in the logs, though.


                             The setup:

                             (Please view in a fixed-width font such as
               Courier. Some
                      other
                             classes are omitted.)
                                             E +-------------------+ P
+----------|EMailResourceBundle|---------------+ *|P 1 +-------------------+ * | +-------------+ ^1 |L1 |EMailResource| | L1
                             +------------------+
+-------------+ | +--------------| | | | |BeeriprintCustomer| | | | | | L|* +------------------+
                             L Lazy               |   L +-------------+
                            P|*
E Eager +-----|EMailTemplate|---------------+
                             P Problem -              * +-------------+L1
                               Should be lazy,
                               Works only when eager
                             1/* multiplicity

                             Whenever I turn any of the links marked "P" to
               LAZY, I get an
                             NPE while deploying. Here's a sample, where I
               turned the link
                             between EMailResource and
        EMailResourceBundle to LAZY:

[#|2009-09-14T08:32:38.562+0300|CONFIG|sun-appserver2.1|org.eclipse.persistence.session.file:/C:/glassfish/AppServer/domains/ebill-dev/applications/j2ee-apps/eBill/eBill-ejb_jar/-eBill-PU-JTA.connection|_ThreadID=16;_ThreadName=Thread-639;|Connected: jdbc:sqlserver://localhost:1433;responseBuffering=full;encrypt=false;databaseName=eBIll;selectMethod=direct;trustServerCertificate=false;lastUpdateCount=true;
                                    User: glassfish
                                    Database: Microsoft SQL Server  Version:
               9.00.3042
                                    Driver: Microsoft SQL Server 2005
        JDBC Driver
                       Version:
                             1.2.2828.100|#]

[#|2009-09-14T08:32:38.640+0300|SEVERE|sun-appserver2.1|org.eclipse.persistence.session.file:/C:/glassfish/AppServer/domains/ebill-dev/applications/j2ee-apps/eBill/eBill-ejb_jar/-eBill-PU-JTA|_ThreadID=16;_ThreadName=Thread-639;_RequestID=faa6e914-cf3b-4c99-a1ed-8f29f110e9f8;|
                             Local Exception Stack: Exception
        [EclipseLink-0]
               (Eclipse
                             Persistence Services - 1.1.2.v20090612-r4475):
org.eclipse.persistence.exceptions.IntegrityException
                             Descriptor Exceptions:
---------------------------------------------------------

                             Exception [EclipseLink-60] (Eclipse Persistence
               Services -
                             1.1.2.v20090612-r4475):
org.eclipse.persistence.exceptions.DescriptorException
                             Exception Description: The method
                             [_persistence_setparentBundle_vh] or
                             [_persistence_getparentBundle_vh] is not
        defined
               in the
                      object
[il.co.beeriprint.ebill.email.templates.EMailResource].
                             Internal Exception:
        java.lang.NoSuchMethodException:
il.co.beeriprint.ebill.email.templates.EMailResource._persistence_getparentBundle_vh()
                             Mapping:
org.eclipse.persistence.mappings.OneToOneMapping[parentBundle]
                             Descriptor:
RelationalDescriptor(il.co.beeriprint.ebill.email.templates.EMailResource
                             --> [DatabaseTable(EMAILRESOURCE)])

                             Runtime Exceptions:
---------------------------------------------------------

                             java.lang.NullPointerException

                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:477)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:406)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:666)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.login(DatabaseSessionImpl.java:630)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:229)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:255)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:111)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:163)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:150)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.loadPersistenceUnitBundle(PersistenceProcessor.java:573)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.createTablesInDB(PersistenceProcessor.java:421)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processAppBundle(PersistenceProcessor.java:287)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processApplication(PersistenceProcessor.java:189)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processApplication(DeploymentEventListenerImpl.java:211)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processEvent(DeploymentEventListenerImpl.java:172)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.notifyDeploymentEvent(DeploymentEventListenerImpl.java:122)
                                    at
com.sun.enterprise.deployment.backend.DeploymentEventManager.notifyDeploymentEvent(DeploymentEventManager.java:79)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.postDeploy(AppDeployer.java:401)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:260)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:148)
                                    at
com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:208)
                                    at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:966)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:283)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:835)
                                    at
com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:187)
                                    at
com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:225)

                             Descriptor Exceptions:
---------------------------------------------------------


                             Local Exception Stack: Exception
        [EclipseLink-60]
               (Eclipse
                             Persistence Services - 1.1.2.v20090612-r4475):
org.eclipse.persistence.exceptions.DescriptorException
                             Exception Description: The method
                             [_persistence_setparentBundle_vh] or
                             [_persistence_getparentBundle_vh] is not
        defined
               in the
                      object
[il.co.beeriprint.ebill.email.templates.EMailResource].
                             Internal Exception:
        java.lang.NoSuchMethodException:
il.co.beeriprint.ebill.email.templates.EMailResource._persistence_getparentBundle_vh()
                             Mapping:
org.eclipse.persistence.mappings.OneToOneMapping[parentBundle]
                             Descriptor:
RelationalDescriptor(il.co.beeriprint.ebill.email.templates.EMailResource
                             --> [DatabaseTable(EMAILRESOURCE)])
                                    at
org.eclipse.persistence.exceptions.DescriptorException.noSuchMethodWhileInitializingAttributesInMethodAccessor(DescriptorException.java:1143)
                                    at
org.eclipse.persistence.internal.descriptors.MethodAttributeAccessor.initializeAttributes(MethodAttributeAccessor.java:151)
                                    at
org.eclipse.persistence.mappings.DatabaseMapping.preInitialize(DatabaseMapping.java:1094)
                                    at
org.eclipse.persistence.mappings.ForeignReferenceMapping.preInitialize(ForeignReferenceMapping.java:744)
                                    at
org.eclipse.persistence.mappings.ObjectReferenceMapping.preInitialize(ObjectReferenceMapping.java:863)
                                    at
org.eclipse.persistence.descriptors.ClassDescriptor.preInitialize(ClassDescriptor.java:3192)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:429)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:406)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:666)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.login(DatabaseSessionImpl.java:630)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:229)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:255)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:111)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:163)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:150)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.loadPersistenceUnitBundle(PersistenceProcessor.java:573)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.createTablesInDB(PersistenceProcessor.java:421)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processAppBundle(PersistenceProcessor.java:287)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processApplication(PersistenceProcessor.java:189)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processApplication(DeploymentEventListenerImpl.java:211)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processEvent(DeploymentEventListenerImpl.java:172)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.notifyDeploymentEvent(DeploymentEventListenerImpl.java:122)
                                    at
com.sun.enterprise.deployment.backend.DeploymentEventManager.notifyDeploymentEvent(DeploymentEventManager.java:79)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.postDeploy(AppDeployer.java:401)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:260)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:148)
                                    at
com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:208)
                                    at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:966)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:283)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:835)
                                    at
com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:187)
                                    at
com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:225)
                             Caused by: java.lang.NoSuchMethodException:
il.co.beeriprint.ebill.email.templates.EMailResource._persistence_getparentBundle_vh()
                                    at
               java.lang.Class.getDeclaredMethod(Class.java:1937)
                                    at
org.eclipse.persistence.internal.security.PrivilegedAccessHelper.findMethod(PrivilegedAccessHelper.java:59)
                                    at
org.eclipse.persistence.internal.security.PrivilegedAccessHelper.getMethod(PrivilegedAccessHelper.java:226)
                                    at
org.eclipse.persistence.internal.helper.Helper.getDeclaredMethod(Helper.java:965)
                                    at
org.eclipse.persistence.internal.descriptors.MethodAttributeAccessor.initializeAttributes(MethodAttributeAccessor.java:144)
                                    ... 31 more

                             Runtime Exceptions:
---------------------------------------------------------


                             java.lang.NullPointerException
                                    at
org.eclipse.persistence.internal.security.PrivilegedAccessHelper.getMethodReturnType(PrivilegedAccessHelper.java:300)
                                    at
org.eclipse.persistence.internal.descriptors.MethodAttributeAccessor.getGetMethodReturnType(MethodAttributeAccessor.java:104)
                                    at
org.eclipse.persistence.mappings.ForeignReferenceMapping.validateBeforeInitialization(ForeignReferenceMapping.java:1373)
                                    at
org.eclipse.persistence.descriptors.ClassDescriptor.validateBeforeInitialization(ClassDescriptor.java:5123)
                                    at
org.eclipse.persistence.descriptors.ClassDescriptor.preInitialize(ClassDescriptor.java:3198)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:429)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:406)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:666)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.login(DatabaseSessionImpl.java:630)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:229)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:255)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:111)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:163)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:150)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.loadPersistenceUnitBundle(PersistenceProcessor.java:573)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.createTablesInDB(PersistenceProcessor.java:421)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processAppBundle(PersistenceProcessor.java:287)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processApplication(PersistenceProcessor.java:189)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processApplication(DeploymentEventListenerImpl.java:211)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processEvent(DeploymentEventListenerImpl.java:172)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.notifyDeploymentEvent(DeploymentEventListenerImpl.java:122)
                                    at
com.sun.enterprise.deployment.backend.DeploymentEventManager.notifyDeploymentEvent(DeploymentEventManager.java:79)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.postDeploy(AppDeployer.java:401)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:260)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:148)
                                    at
com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:208)
                                    at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:966)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:283)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:835)
                                    at
com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:187)
                                    at
com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:225)
                             |#]

[#|2009-09-14T08:32:38.640+0300|SEVERE|sun-appserver2.1|org.eclipse.persistence.session.file:/C:/glassfish/AppServer/domains/ebill-dev/applications/j2ee-apps/eBill/eBill-ejb_jar/-eBill-PU-JTA.ejb|_ThreadID=16;_ThreadName=Thread-639;_RequestID=faa6e914-cf3b-4c99-a1ed-8f29f110e9f8;|
                             Local Exception Stack: Exception
        [EclipseLink-0]
               (Eclipse
                             Persistence Services - 1.1.2.v20090612-r4475):
org.eclipse.persistence.exceptions.IntegrityException
                             Descriptor Exceptions:
---------------------------------------------------------

                             Exception [EclipseLink-60] (Eclipse Persistence
               Services -
                             1.1.2.v20090612-r4475):
org.eclipse.persistence.exceptions.DescriptorException
                             Exception Description: The method
                             [_persistence_setparentBundle_vh] or
                             [_persistence_getparentBundle_vh] is not
        defined
               in the
                      object
[il.co.beeriprint.ebill.email.templates.EMailResource].
                             Internal Exception:
        java.lang.NoSuchMethodException:
il.co.beeriprint.ebill.email.templates.EMailResource._persistence_getparentBundle_vh()
                             Mapping:
org.eclipse.persistence.mappings.OneToOneMapping[parentBundle]
                             Descriptor:
RelationalDescriptor(il.co.beeriprint.ebill.email.templates.EMailResource
                             --> [DatabaseTable(EMAILRESOURCE)])

                             Runtime Exceptions:
---------------------------------------------------------

                             java.lang.NullPointerException

                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:477)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:406)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:666)
                                    at
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.login(DatabaseSessionImpl.java:630)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:229)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:255)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:111)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:163)
                                    at
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:150)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.loadPersistenceUnitBundle(PersistenceProcessor.java:573)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.createTablesInDB(PersistenceProcessor.java:421)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processAppBundle(PersistenceProcessor.java:287)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processApplication(PersistenceProcessor.java:189)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processApplication(DeploymentEventListenerImpl.java:211)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processEvent(DeploymentEventListenerImpl.java:172)
                                    at
com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.notifyDeploymentEvent(DeploymentEventListenerImpl.java:122)
                                    at
com.sun.enterprise.deployment.backend.DeploymentEventManager.notifyDeploymentEvent(DeploymentEventManager.java:79)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.postDeploy(AppDeployer.java:401)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:260)
                                    at
com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:148)
                                    at
com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:208)
                                    at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:966)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:283)
                                    at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:835)
                                    at
com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:187)
                                    at
com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:225)


                             IMHO, this looks like eclipselink finds the
               classes before it
                             adds the _persistence_* methods, thus
        causing an NPE.

                             Setup:

                                * Windows Server 2003R2
                                * Sun GlassFish Enterprise Server v2.1
        (9.1.1)
               (build
                      b60e-fcs)
                                * Eclipse Persistence Services -
               1.1.2.v20090612-r4475

                             Any solutions would be highly appreciated.
        I have
               all the
                      logs
                             and will be very willing to help solve this.

                             Thanks in advance,
                             Michael Bar-Sinai


------------------------------------------------------------------------
                             View this message in context: Can't deploy
        when using
                      LAZY, can
                             deply when using EAGER
<http://www.nabble.com/Can%27t-deploy-when-using-LAZY%2C-can-deply-when-using-EAGER-tp25433376p25433376.html>
                             Sent from the EclipseLink - Users mailing
        list archive
<http://www.nabble.com/EclipseLink---Users-f26658.html> at
                             Nabble.com.


------------------------------------------------------------------------

                             _______________________________________________
                             eclipselink-users mailing list
                             eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>
                      <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>>
                      <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>
                      <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto: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>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>
                      <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>>
                      <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>
                      <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto: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>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto: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>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>>
               <mailto:eclipselink-users@xxxxxxxxxxx
        <mailto:eclipselink-users@xxxxxxxxxxx>
               <mailto: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>
        <mailto: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>
        <mailto: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 <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