Duplicate Persistence Unit error msg?

Deploying my ear on Weblogic 10 has given me a strange error. It is saying that I am deploying two Persistence Units with the same name, even though I only have one Persistence Uni. As you can see from the stack trace, it's complaining about the same jar for the "First PU and Second PU", even though this jar only has one persistence.xml file. How is this possible?
<5-Sep-2008 3:56:36 o'clock PM EDT> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1220644591734' for task '26'. Error is: 'weblogic.management.DeploymentException: '
weblogic.management.DeploymentException:
     at weblogic.application.internal.flow.JpaFlow.prepare(JpaFlow.java:47)
     at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
     at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
     at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
     at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
     Truncated. see log file for complete stacktrace
weblogic.deployment.EnvironmentException: duplicate persistence units with name default in scope appsdirservices-ear-1.111-SNAPSHOT_ear. First PU location: file:C:/oats/bea/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_user/_appsdir_services-ear-1.111-SNAPSHOT_ear/230cqk/APP-INF/lib/model-jar-1.111-SNAPSHOT.jar. Second PU location: file:C:/oats/bea/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_user/_appsdir_services-ear-1.111-SNAPSHOT_ear/230cqk/APP-INF/lib/model-jar-1.111-SNAPSHOT.jar
Here is my persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="1.0">
<persistence-unit name="default" transaction-type="RESOURCE_LOCAL">
          <provider>
org.apache.openjpa.persistence.PersistenceProviderImpl
</provider>
          <class>com.base.address.Contact</class>
          <class>com.common.address.USAddress</class>          
          <properties>
               <property name="openjpa.jdbc.DBDictionary" value="oracle(DriverVendor=oracle)"/>
               <property name="openjpa.Log" value="DefaultLevel=WARN,SQL=TRACE"/>
               <property name="openjpa.ConnectionURL" value=" jdbc:oracle:thin:@XX.XX.XXX.54:1542:XXXR33"/>
               <property name="openjpa.ConnectionDriverName" value="oracle.jdbc.driver.OracleDriver"/>
               <property name="openjpa.ConnectionUserName" value="XXX_XX "/>
               <property name="openjpa.ConnectionPassword" value="XX_XXX "/>
</properties>
</persistence-unit>
</persistence>

You should try into a more appropriate forum : [WebLogic Server - General|http://forums.oracle.com/forums/forum.jspa?forumID=570]
Nicolas.

Similar Messages

  • Problems with duplicate persistence units

    I suppose that Weblogic 10.3 do not support some locations of persistence.xml.
    For example. On Jboss server I can succesfully deploy ear with this structure
    -services-ejb.jar
    -services-ws.jar
    -/APP-INF/lib
    -/APP-INF/lib/services-jpa.jar with persistence.xml i META-INF
    -/META-INF/application.xml
    But on Weblogic 10.3 it is impossible. Weblogic got an error with duplicate PU in the same location...
    <2009-06-04 16:06:18 CEST> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
    weblogic.management.DeploymentException:
    at weblogic.application.internal.flow.JpaFlow.prepare(JpaFlow.java:59)
    weblogic.deployment.EnvironmentException: duplicate persistence units with name servicesJPA in scope services-ear.
    First PU location: file:D:/apache/bea10.3/wlserver_10.3/samples/domains/wl_server/servers/examplesServer/tmp/_WL_user/services-ear/skzpn4/APP-INF/lib/services-jpa.jar.
    Second PU location: file:D:/apache/bea10.3/wlserver_10.3/samples/domains/wl_server/servers/examplesServer/tmp/_WL_user/services-ear/skzpn4/APP-INF/lib/services-jpa.jar
    My application.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <application xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd" version="5">
    <description>services ear</description>
    <display-name>services-ear</display-name>
    <module>
    <ejb>services-ejb.jar</ejb>
    </module>
    <module>
    <web>
    <web-uri>services-ws.war</web-uri>
    <context-root>/services-ws</context-root>
    </web>
    </module>
    <library-directory>APP-INF/lib</library-directory>
    </application>
    Is any solution to keep persistence in library directory?

    Edwin,
    I have tried the same thing that you describe in question one in the attached VI. If you change the data ranges and then run the VI, you will note that the numeric value will only ba allowed in the new range. (If the current value is outside of the range that you have set, then you will need to change the value of the cotrol to be in the new range before the new range properties will take effect.)
    As for your second question, can you expand upon this? I am not sure that I understand what you mean. Is an example VI possible? Thanks
    Randy Hoskin
    Applications Engineer
    National Instruments
    http://www.ni.com/ask
    Attachments:
    Data_Range_with_Units.vi ‏22 KB

  • Duplicate persistence units

    I'm trying to install an EAR file generated by jDeveloper to a Weblogic server, but I get the following error messages from weblogic while trying to deploy:
    Failed to load webapp: 'ichipscreens',
    duplicate persistence units with name JpsDBDataManagerV2 in scope ichipscreens. First PU location: file:/home/weblogic/middleware/user_projects/domains/middleware_domain/servers/AdminServer/tmp/_WL_user/ichipscreens/l4qn3z/lib/jps-internal.jar. Second PU location: file:/home/weblogic/middleware/user_projects/domains/middleware_domain/servers/AdminServer/tmp/_WL_user/ichipscreens/wo22a/war/WEB-INF/lib/jps-internal.jar
    What does this mean? When I deploy to jDeveloper's integrated weblogic server it doesn't have this error.

    It looks to me that as part of the JDeveloper packaging step, it's putting the same module (jps-internal.jar) with the same persistence-unit defined, into two different locations within the application being deployed, that are considered to be of the same scope. When you deploy it, WLS is telling you it considers this to be an error.
    I'm not a regular user of JDeveloper, but I'd perhaps look at the project properties or the packaging configuration to see if there is a duplicate entry for jps-internal.jar. When you deploy to the embedded WLS in JDeveloper, I'm guessing that JDeveloper an exploded directory deployment approach so the actual packaging that is causing the problem isn't performed.
    -steve-

  • Duplicate persistence units in JPA weblogic

    Hello, I'm cross-posting thsi question from weblogic forum as a suggestion from james.bayer.
    I am using weblogic 10.3.
    I am trying to deploy a spring web application with severaljars, that contain jpa entities with a persistence.xml. The persistence unit name in all persistence.xml are equal. That is for spring no problem, because i wrote a PersistenceUnitManager, that merges all persistence units into one.
    So far so good. But weblogic cant't deploy the war, because while validation of the deployment, wls throws an exception, that there are two persistence unit with the same name.
    Does anybody has an idea how to deploy this war?
    Can i switch off the validation of the persistence.xml?
    The full stack trace is:
    weblogic.application.ModuleException: Failed to load webapp: 'sfw-poc-condicao-pagamento-web.war'
         at weblogic.servlet.internal.WebAppModule.prepare(WebAppModule.java:404)
         at weblogic.application.internal.flow.ScopedModuleDriver.prepare(ScopedModuleDriver.java:180)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:508)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:149)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:47)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:1223)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:367)
         at weblogic.application.internal.SingleModuleDeployment.prepare(SingleModuleDeployment.java:43)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
         at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:141)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:40)
         at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:191)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:22)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:166)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:181)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:97)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused By: weblogic.deployment.EnvironmentException: duplicate persistence units with name sfw-persistence-unit in scope sfw-poc-condicao-pagamento-web.war. First PU location: file:/C:/java/servers/Oracle/Middleware/user_projects/domains/base_domain/servers/softway/tmp/_WL_user/sfw-poc-condicao-pagamento-web/rrg25b/war/WEB-INF/lib/sfw-class-loader-0.0.1-SNAPSHOT.jar. Second PU location: file:/C:/java/servers/Oracle/Middleware/user_projects/domains/base_domain/servers/softway/tmp/_WL_user/sfw-poc-condicao-pagamento-web/rrg25b/war/WEB-INF/lib/sfw-custom-jar-0.0.1-20100622.030351-65.jar
         at weblogic.deployment.AbstractPersistenceUnitRegistry.assertNoDuplicate(AbstractPersistenceUnitRegistry.java:313)
         at weblogic.deployment.AbstractPersistenceUnitRegistry.processDescriptor(AbstractPersistenceUnitRegistry.java:291)
         at weblogic.deployment.AbstractPersistenceUnitRegistry.loadPersistenceDescriptor(AbstractPersistenceUnitRegistry.java:192)
         at weblogic.deployment.AbstractPersistenceUnitRegistry.loadPersistenceDescriptors(AbstractPersistenceUnitRegistry.java:101)
         at weblogic.deployment.ModulePersistenceUnitRegistry.<init>(ModulePersistenceUnitRegistry.java:58)
         at weblogic.servlet.internal.WebAppModule.setupPersistenceUnitRegistry(WebAppModule.java:1812)
         at weblogic.servlet.internal.WebAppModule.getWebClassLoader(WebAppModule.java:1604)
         at weblogic.servlet.internal.WebAppServletContext.initClassLoader(WebAppServletContext.java:2969)
         at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:438)
         at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:487)
         at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:418)
         at weblogic.servlet.internal.WebAppModule.registerWebApp(WebAppModule.java:976)
         at weblogic.servlet.internal.WebAppModule.prepare(WebAppModule.java:381)
         at weblogic.application.internal.flow.ScopedModuleDriver.prepare(ScopedModuleDriver.java:180)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:508)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:149)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:47)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:1223)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:367)
         at weblogic.application.internal.SingleModuleDeployment.prepare(SingleModuleDeployment.java:43)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
         at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:141)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:40)
         at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:191)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:22)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:166)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:181)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:97)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Thanks a lot

    They need to have different names.
    James : http://www.eclipselink.org

  • "Could not resolve a persistence unit" error...

    Hello,
    I created a Netbeans Visual Web application. I added an Entity Class from a database table. A resource is added into Server Resources part. when I look at its properties, I see that it's JNDI name is set to "bitkiwiki" and I check the Sun Application Server's JDBC Resources and I see "bitkiwiki" in JDBC Resources.
    My controller class has a EntityManagerFactory element:
        @PersistenceUnit(unitName = "bitkiwiki")
        private EntityManagerFactory emf;When I compile the project it compiles successfully but when I deploy it, I get an error like this:
    Deploying application in domain failed; Deployment Error -- Could not resolve a persistence unit corresponding to the persistence-unit-ref-name .......
    The Persistance UnitName exists in the server resources but it still complains about it.
    What's the problem you think?
    Thanks.

    In the persistence.xml you have something like this:
    <persistence-unit name="EJBCustomerPU" transaction-type="JTA">
    <jta-data-source>cust</jta-data-source>
    <properties>
    </properties>
    </persistence-unit>
    The unitName in the annotation should equal "EJBCustomerPU". I think the "bitkiwiki" is wrong. The "cust" in the above persistence.xml should be the resource you mention in the jdbc section of the app server admin.

  • Duplicate persistence unit name in war

    Hi!
    I am using weblogic 10.3.
    I am trying to deploy a spring web application with two jars, that contain jpa entities with a persistence.xml. The persistence unit name in both persistence.xml is equal. That is for spring no problem, because i wrote a PersistenceUnitManager, that merges both persistence units into one.
    So far so good. But weblogic cant't deploy the war, because while validation of the deployment, wls throws an exception, that there are two persistence unit with the same name.
    Does anybody has an idea how to deploy this war?
    Can i switch off the validation of the persistence.xml?

    Thanks for the response James.
    I'm using hibernate as my JPA provider. I'm not sure if weblogic is first loading it's own jpa implementation and management, and getting confused with mine. How could I check this ?
    I did however create a weblogic.xml in my web-inf folder, with the following property
    <weblogic-web-app>
    <container-descriptor>
    <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>
    </weblogic-web-app>
    Here is the full stack trace:
    Hi!
    I am using weblogic 10.3.
    I am trying to deploy a spring web application with two jars, that contain jpa entities with a persistence.xml. The persistence unit name in both persistence.xml is equal. That is for spring no problem, because i wrote a PersistenceUnitManager, that merges both persistence units into one.
    So far so good. But weblogic cant't deploy the war, because while validation of the deployment, wls throws an exception, that there are two persistence unit with the same name.
    Does anybody has an idea how to deploy this war?
    Can i switch off the validation of the persistence.xml?
    Any ideas ?
    Thanks,
    John

  • Duplicate persistence error -- deploying GlassFish application in Weblogic

    Hi,
    I am using NetBeans to deploy a web application which has RESTful web services. I am using Weblogic 12c and MySQL database. The NBproject MyAppServer includes another NB project MyAppLibrary. Both MyAppServer and MyAppLibrary have their own perisitence.xml files. Both projects are referencing the same database. The application was previously deployed in GlassFish and worked perfectly. However, migrating to Weblogic gives me the following error:
    "Deployment failed. The message was: weblogic.application.naming.EnvironmentException: duplicate persistence units with name MyAppLibraryPU in scope web. First PU location: file:/C:/cygwin/home/test/myfolder/apps/MyApp/MyAppServer/build/web/WEB-INF/classes/. Second PU location: file:/C:/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_user/MyAppServer/ub3nr6/war/WEB-INF/lib/MyAppLibrary.jar"
    I changed the name of the persistence unit in persistence.xml of MyAppServer, which resulted in no error being logged, but the server-side of the application doesn't run correctly now i.e. apparently no data was retrieved from the database.
    Any help will be appreciated.
    Thanks.

    Nothing to do with WebLogic JDBC so far...

  • Appclient: Error checking for persistence unit annotations in the main clas

    what does this mean? i tried to launch my app client as follows:
    appclient -client foo.jar
    Oct 9, 2006 3:49:02 PM com.sun.enterprise.appclient.MainWithModuleSupport <init>
    WARNING: ACC003: Application threw an exception.
    java.lang.RuntimeException: Error checking for persistence unit annotations in the main class
    at com.sun.enterprise.appclient.StandAloneAppClientInfo.classContainsAnnotation(StandAloneAppClientInfo.java:88)
    at com.sun.enterprise.appclient.AppClientInfo.mainClassContainsPURefcAnnotations(AppClientInfo.java:342)
    at com.sun.enterprise.appclient.AppClientInfo.appClientDependsOnPersistenceUnit(AppClientInfo.java:311)
    at com.sun.enterprise.appclient.AppClientInfo.completeInit(AppClientInfo.java:164)
    at com.sun.enterprise.appclient.AppClientInfoFactory.buildAppClientInfo(AppClientInfoFactory.java:136)
    at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithModuleSupport.java:287)
    at com.sun.enterprise.appclient.Main.main(Main.java:180)
    Caused by: java.lang.NullPointerException
    at java.util.zip.ZipFile.getInputStream(ZipFile.java:286)
    at java.util.jar.JarFile.getInputStream(JarFile.java:382)
    at com.sun.enterprise.deployment.util.AnnotationDetector.containsAnnotation(AnnotationDetector.java:139)
    at com.sun.enterprise.appclient.StandAloneAppClientInfo.classContainsAnnotation(StandAloneAppClientInfo.java:86)
    ... 6 more

    Hi, Did you find out what caused this as I have the same problem.
    :\Sun\EJB3\Chapter02-SessionSamples\SessionBeanSamples\archive>%GLASSFISH_HOME%
    bin/appclient.bat -client searchfacadeclient.jar
    006-11-08 12:52:48 com.sun.enterprise.deployment.annotation.impl.ModuleScanner
    etElements
    ARNING: Cannot load SearchFacadeTest reason : SearchFacadeTest
    006-11-08 12:52:48 com.sun.enterprise.appclient.MainWithModuleSupport <init>
    ARNING: ACC003: Application threw an exception.
    ava.lang.RuntimeException: Error checking for persistence unit annotations in t
    e main class
    at com.sun.enterprise.appclient.StandAloneAppClientInfo.classContainsAnn
    tation(StandAloneAppClientInfo.java:88)
    at com.sun.enterprise.appclient.AppClientInfo.mainClassContainsPURefcAnn
    tations(AppClientInfo.java:342)
    at com.sun.enterprise.appclient.AppClientInfo.appClientDependsOnPersiste
    ceUnit(AppClientInfo.java:311)
    at com.sun.enterprise.appclient.AppClientInfo.completeInit(AppClientInfo
    java:164)
    at com.sun.enterprise.appclient.AppClientInfoFactory.buildAppClientInfo(
    ppClientInfoFactory.java:136)
    at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithMod
    leSupport.java:287)
    at com.sun.enterprise.appclient.Main.main(Main.java:180)
    aused by: java.lang.NullPointerException
    at java.util.zip.ZipFile.getInputStream(ZipFile.java:286)
    at java.util.jar.JarFile.getInputStream(JarFile.java:382)
    at com.sun.enterprise.deployment.util.AnnotationDetector.containsAnnotat
    on(AnnotationDetector.java:139)
    at com.sun.enterprise.appclient.StandAloneAppClientInfo.classContainsAnn
    tation(StandAloneAppClientInfo.java:86)
    ... 6 more
    xception in thread "main" java.lang.RuntimeException: java.lang.RuntimeExceptio
    : Error checking for persistence unit annotations in the main class
    at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithMod
    leSupport.java:364)
    at com.sun.enterprise.appclient.Main.main(Main.java:180)
    aused by: java.lang.RuntimeException: Error checking for persistence unit annot
    tions in the main class
    at com.sun.enterprise.appclient.StandAloneAppClientInfo.classContainsAnn
    tation(StandAloneAppClientInfo.java:88)
    at com.sun.enterprise.appclient.AppClientInfo.mainClassContainsPURefcAnn
    tations(AppClientInfo.java:342)
    at com.sun.enterprise.appclient.AppClientInfo.appClientDependsOnPersiste
    ceUnit(AppClientInfo.java:311)
    at com.sun.enterprise.appclient.AppClientInfo.completeInit(AppClientInfo
    java:164)
    at com.sun.enterprise.appclient.AppClientInfoFactory.buildAppClientInfo(
    ppClientInfoFactory.java:136)

  • Error checking for persistence unit annotations in the main class

    Hi
    When I tried running the examples from the SUN JMS tutorials, I landed in a problem. I did the following changes...
    1. I created a new project in eclipse
    2. created the java class 'Producer.java' in a package..(the one in java tutorial is not in a package)
    3. copied the build.xml and made the the respective changes.
    I successfully created the jar file, but when I tried to run the the application
    appclient -client JMSProducer.jar eg.jms.P2PProducer.Producer queue 3it throws the following exception:
    Nov 29, 2006 3:40:33 PM com.sun.enterprise.deployment.annotation.impl.ModuleScan
    ner getElements
    WARNING: Cannot load ${main.class} reason : ${main.class}
    Nov 29, 2006 3:40:33 PM com.sun.enterprise.appclient.MainWithModuleSupport <init
    >
    WARNING: ACC003: Application threw an exception.
    java.lang.RuntimeException: Error checking for persistence unit annotations in t
    he main class
            at com.sun.enterprise.appclient.StandAloneAppClientInfo.classContainsAnn
    otation(StandAloneAppClientInfo.java:88)
            at com.sun.enterprise.appclient.AppClientInfo.mainClassContainsPURefcAnn
    otations(AppClientInfo.java:342)
            at com.sun.enterprise.appclient.AppClientInfo.appClientDependsOnPersiste
    nceUnit(AppClientInfo.java:311)
            at com.sun.enterprise.appclient.AppClientInfo.completeInit(AppClientInfo
    .java:164)
            at com.sun.enterprise.appclient.AppClientInfoFactory.buildAppClientInfo(
    AppClientInfoFactory.java:136)
            at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithMod
    uleSupport.java:287)
            at com.sun.enterprise.appclient.Main.main(Main.java:180)
    Caused by: java.lang.NullPointerException
            at java.util.zip.ZipFile.getInputStream(ZipFile.java:286)
            at java.util.jar.JarFile.getInputStream(JarFile.java:387)
            at com.sun.enterprise.deployment.util.AnnotationDetector.containsAnnotat
    ion(AnnotationDetector.java:139)I have spent so much time identifying the problem... can anyone point the error please?

    I'm having the same problem, albeit 18 months later. I am working with a tutorial from apress, which seems very high on Glassfish as a AppServer environment for learning EJB 3.0. I have the same error when I try to run the client application in the Sun Platform 9.0 Application Server's AppClient Module container , "... Error checking for persistence unit annotations in the main class..." and I think it has something to do with the fact that the AppClient is expecting "something" in the MANIFEST.MF file that actually isn't there... ( sigh ). " so close, and yet so far away.... "
    --- andyj748

  • Multiple persistence units and OneToMany associations

    Hi,
    I have an EAR with two persistence units and corresponding entities. Each is contained within a separate library jar file. Some of the entities in one of the jars refer to entities in the other jar. If I refer to just a single entity (i.e., a OneToOne association), everything builds and deploys with no problems, but if I use a collection (OneToMany association), I get errors when trying to deploy the project.
    I've been playing around with this for a while and have seen different errors such as the following:
    [exec] CLI171 Command deploy failed : Deploying application in domain failed; Exception [TOPLINK-28018] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.EntityManagerSetupException
    [exec] Exception Description: predeploy for PersistenceUnit [GrammarUserData] failed.
    [exec] Internal Exception: Exception [TOPLINK-7155] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.ValidationException
    [exec] Exception Description: The type [interface java.util.List] for the attribute [sentencePatterns] on the entity class [class com.leadingstep.grammar.configuration.CommonElementConfiguration] is not a valid type for a serialized mapping. The attribute type must implement the Serializable interface.
    I also had the collection defined as a Set and it complained about that as well. I have many other OneToMany associations used between entities within the same persistence unit that use the List interface with no problems, and so that's why I'm wondering if the problem actually comes from the fact that the entities in the failed case belong to different persistence units?
    At another point, the error message I was getting was:
    [#|2009-12-22T20:05:02.427-0500|SEVERE|sun-appserver9.1|javax.enterprise.system.tools.deployment|_ThreadID=15;_ThreadName=Thread-32;_RequestID=67ca0eee-64d9-41dc-8093-eec811cb32b6;|Exception occured in J2EEC Phase
    com.sun.enterprise.deployment.backend.IASDeploymentException: Exception [TOPLINK-28018] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.EntityManagerSetupException
    Exception Description: predeploy for PersistenceUnit [GrammarUserData] failed.
    Internal Exception: Exception [TOPLINK-7250] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.ValidationException
    Exception Description: [class com.leadingstep.grammar.configuration.CommonConstructorConfiguration] uses a non-entity [class com.leadingstep.grammar.db.sentences.SentenceGroup] as target entity in the relationship attribute [private java.util.List com.leadingstep.grammar.configuration.CommonConstructorConfiguration.sentenceGroups].
    The target entity it refers to here definitely has the @Entity annotation and again, is associated with other entities within the same persistence unit with no problems.
    Am I right in thinking the problem comes from the association of entities between the different persistence units? Is there something special I have to do to make this work?
    BTW, both persistence units use the <exclude-unlisted-classes> and specifically list every entity that should be included.
    Thanks for any help!
    Renee

    One other thought on this. I'm using Glassfish with Toplink and have it create the tables using:
                   <property name="toplink.ddl-generation" value="create-tables" />
    Could it be something related to the table creation in this case that's causing the problem?
    Renee

  • EJB 3.0 - problem with persistence unit.

    Hi everybody, I got this problem I would like you to help me.
    I'm doing a proyect with EJB 3.0 using Netbeans 5.5 and Jboss
    The data source is MySQL.
    When I deploy the proyect, the Jboss Log show me this:
    --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
    ObjectName: persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    State: FAILED
    Reason: javax.naming.NameNotFoundException: jdbc not bound
    I Depend On:
    jboss.jca:service=ManagedConnectionFactory,name=jdbc/connectionPool
    Depends On Me:
    jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=NewMessage,service=EJB3
    jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=PersonaEntityFacade,service=EJB3
    [Please help me, I'm kind of new in EJB]
    [ENTIRE JBOSS LOG]
    10:08:37,375 INFO [TomcatDeployer] undeploy, ctxPath=/DecmoCVLAC-war, warUrl=.../tmp/deploy/tmp16823DecmoCVLAC.ear-contents/DecmoCVLAC-war-exp.war/
    10:08:37,515 INFO [EARDeployer] Undeploying J2EE application, destroy step: file:/C:/jboss-4.0.4.GA/server/default/deploy/DecmoCVLAC.ear
    10:08:37,515 INFO [EARDeployer] Undeployed J2EE application: file:/C:/jboss-4.0.4.GA/server/default/deploy/DecmoCVLAC.ear
    10:08:37,546 INFO [EARDeployer] Init J2EE application: file:/C:/jboss-4.0.4.GA/server/default/deploy/DecmoCVLAC.ear
    10:08:39,281 INFO [Ejb3Deployment] EJB3 deployment time took: 47
    10:08:39,296 INFO [JmxKernelAbstraction] installing MBean: persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU with dependencies:
    10:08:39,296 INFO [JmxKernelAbstraction]      jboss.jca:name=jdbc/connectionPool,service=ManagedConnectionFactory
    10:08:39,312 WARN [ServiceController] Problem starting service persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    javax.naming.NameNotFoundException: jdbc not bound
    at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
    at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
    at org.jnp.server.NamingServer.getObject(NamingServer.java:543)
    at org.jnp.server.NamingServer.lookup(NamingServer.java:267)
    at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:625)
    at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
    at javax.naming.InitialContext.lookup(InitialContext.java:351)
    at org.jboss.ejb3.entity.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:240)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:99)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
    at sun.reflect.GeneratedMethodAccessor83.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.java:417)
    at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy91.start(Unknown Source)
    at org.jboss.ejb3.JmxKernelAbstraction.install(JmxKernelAbstraction.java:82)
    at org.jboss.ejb3.Ejb3Deployment.startPersistenceUnits(Ejb3Deployment.java:626)
    at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:475)
    at org.jboss.ejb3.Ejb3Module.startService(Ejb3Module.java:139)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
    at sun.reflect.GeneratedMethodAccessor83.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.java:417)
    at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy36.start(Unknown Source)
    at org.jboss.ejb3.EJB3Deployer.start(EJB3Deployer.java:449)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
    at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
    at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
    at org.jboss.ws.server.WebServiceDeployer.start(WebServiceDeployer.java:117)
    at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
    at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy37.start(Unknown Source)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1007)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:997)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:808)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:771)
    at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy6.deploy(Unknown Source)
    at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
    at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
    10:08:39,812 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=NewMessage,service=EJB3 with dependencies:
    10:08:39,812 INFO [JmxKernelAbstraction]      persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    10:08:39,828 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=PersonaEntityFacade,service=EJB3 with dependencies:
    10:08:39,828 INFO [JmxKernelAbstraction]      persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    10:08:39,859 INFO [EJB3Deployer] Deployed: file:/C:/jboss-4.0.4.GA/server/default/tmp/deploy/tmp16824DecmoCVLAC.ear-contents/DecmoCVLAC-ejb.jar
    10:08:39,859 INFO [TomcatDeployer] deploy, ctxPath=/DecmoCVLAC-war, warUrl=.../tmp/deploy/tmp16824DecmoCVLAC.ear-contents/DecmoCVLAC-war-exp.war/
    10:08:40,046 INFO [EARDeployer] Started J2EE application: file:/C:/jboss-4.0.4.GA/server/default/deploy/DecmoCVLAC.ear
    10:08:40,062 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
    --- MBeans waiting for other MBeans ---
    ObjectName: persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    State: FAILED
    Reason: javax.naming.NameNotFoundException: jdbc not bound
    I Depend On:
    jboss.jca:service=ManagedConnectionFactory,name=jdbc/connectionPool
    Depends On Me:
    jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=NewMessage,service=EJB3
    jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=PersonaEntityFacade,service=EJB3
    ObjectName: jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=NewMessage,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    ObjectName: jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=PersonaEntityFacade,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
    ObjectName: persistence.units:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,unitName=DecmoCVLAC-ejbPU
    State: FAILED
    Reason: javax.naming.NameNotFoundException: jdbc not bound
    I Depend On:
    jboss.jca:service=ManagedConnectionFactory,name=jdbc/connectionPool
    Depends On Me:
    jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=NewMessage,service=EJB3
    jboss.j2ee:ear=DecmoCVLAC.ear,jar=DecmoCVLAC-ejb.jar,name=PersonaEntityFacade,service=EJB3

    Reason: javax.naming.NameNotFoundException: jdbc not bound
    Although i am quite new to this as well i would say that there is a problem with your connection with the database.
    It seems it cannot connect to Mysql.
    have you download the mysql package library and imported it ?
    Also in your deploy folder in you Jboss
    have you altered the jdbc to connect to you database in your dataset ? ( i am not sure about mysql, but postgre reguired this)
    Most probably it would be the same in mysql.
    <connection-url>jdbc:postgresql://127.0.0.1:5432/Dissertation</connection-url>
    Not sure if this is what you reguire, i am new at this my self

  • Weblogic 10.3.0 not picking up persistence unit

    Hello,
    I am facing a problem where Weblogic does not seem to pickup the persistence unit:
    [wldeploy] Target state: deploy failed on Server examplesServer
    [wldeploy] java.lang.IllegalArgumentException: No persistence unit named 'dao' is available in scope ejb-app. Available persistence units: []OS: Windows XP (Development Environemnt)
    WebLogic Server Version: 10.3.0.0
    Though I'm working via Eclipse Helios, I am using Weblogic generated (and later modified) Ant scripts to compile, build and deploy to my local Weblogic install, in a 'split development' setup.
    Following is the file strutcture:
    source
    +---build.xml (Ant script)
    +---APP-INF
    |    +---lib
    |         +--- * (shared libraries)
    |
    +---META-INF
    |    +---application.xml
    |    +---weblogic-application.xml
    |
    +---web-app
    |    +---WEB-INF
    |         +---src
    |         +---lib
    |
    +---ejb-app
         +---com.example.ejb.data (Contains Entity annotations)
          |    +---Pojo1.java
          |    +---Pojo2.java
          |
          +---com.example.ejb.ctrl (Contains business logic and services)
          |    +---MyService.java
          |
          +---META-INF
               +---ejb-jar.xml
                +---weblogic-ejb-jar.xml
                +---persistence.xml     Here is my persistence.xml:
    <?xml version="1.0"?>
    <persistence 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"
         version="1.0">
         <persistence-unit name="dao" transaction-type="RESOURCE_LOCAL">
              <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
              <jta-data-source>OraDS</jta-data-source>
              <non-jta-data-source>OraDS</non-jta-data-source>
              <class>com.example.ejb.data.Pojo1</class>
              <class>com.example.ejb.data.Pojo2</class>
              <properties>
                   <property name="eclipselink.target-server" value="WebLogic_10" />
                   <property name="eclipselink.logging.level" value="FINEST" />
              </properties>
         </persistence-unit>
    </persistence>            I am attempting to inject the persistence unit via annotation in MyService.java (a @Stateless session bean):
    @PersistenceContext(unitName = "dao")
    private EntityManager entityManager;     I had done the same with 10.3.0's default Kodo provider and was getting the same issue.
    I've moved the persistence.xml to source/APP-INF, source/APP-INF/lib, source/META-INF and run deploys, it still gives me the error.
    The whole EAR is built with wlcompile and appc as per Split Directory development flow.
    For some reason, Weblogic does not seem to pick up the "dao" persistence unit into its JNDI tree, application wide or 'ejb-app' module scoped.
    Any direction on what next should I be looking at would be helpful.
    Edited by: Vyoma on May 25, 2011 10:15 PM
    Fixed code formatting.

    Pierluigi Vernetto, thanks for that link. Though it was for a web module consumption of the persistence package, I was able to adapt it for use by my ejb module.
    Here is my solution, under split-directory development workflow.
    Create the persistence module, place the persistence.xml in that module's META-INF.
    Create an Ant task in the build.xml to 'wlcompile' and JAR it to the EAR direcotries APP-INF/lib directory.
    Exclude the persistence module from the rest of the 'wlcompile' and 'appc' tasks.
    I was then able to inject it with annotation in my EJB module.
    dvohra16, thanks for that pointer. Now that I've been able to solve, the pressure is off (and shifted to other things). But I will surely check your option out. If I can get that working, it will be much easier than tinkering around with the build.xml and would be the normal flow of split-directory development workflow.
    As of now, I will say this thread as 'solved', but if I get it working the way you mention (on my sandbox project), I will surely come back and update this thread.
    Edited by: Vyoma on May 27, 2011 11:21 AM

  • How to avoid 'duplicate data record' error message when loading master data

    Dear Experts
    We have a custom extractor on table CSKS called ZCOSTCENTER_ATTR. The settings of this datasource are the same as the settings of 0COSTCENTER_ATTR. The problem is that when loading to BW it seems that validity (DATEFROM and DATETO) is not taken into account. If there is a cost center with several entries having different validity, I get this duplicate data record error. There is no error when loading 0COSTCENTER_ATTR.
    Enhancing 0COSTCENTER_ATTR to have one datasource instead of two is not an option.
    I know that you can set ignore duplicates in the infopackage, but that is not a nice solution. 0COSTCENTER_ATTR can run without this!
    Is there a trick you know to tell the system that the date fields are also part of the key??
    Thank you for your help
    Peter

    Alessandro - ZCOSTCENTER_ATTR is loading 0COSTCENTER, just like 0COSTCENTER_ATTR.
    Siggi - I don't have the error message described in the note.
    "There are duplicates of the data record 2 & with the key 'NO010000122077 &' for characteristic 0COSTCENTER &."
    In PSA the records are marked red with the same message (MSG no 191).
    As you see the key does not contain the date when the record is valid. How do I add it? How is it working for 0COSTCENTER_ATTR with the same records? Is it done on the R/3 or on the BW side?
    Thanks
    Peter

  • Unit Test code using wrong persistence unit

    In the midst of learning Maven, I created a simple application in which I am using JPA (Java Persistence 1.0.2) with EclipseLink implementation (2.0.2).
    Note: This is an Application Managed environment. So I manually control EntityManager's life cycle.
    The persistence.xml file used by the main source code is different from the one that unit test code uses. Main code uses an Oracle DB and the test code uses an in-memory Derby.
    Running unit tests was updating the Oracle DB (!) and I eventually managed to fix that by using two different persistence-units in the XML files.
    However, I don't understand why that fixed the problem. I manually create and shut down the entity managers and they are not running concurrently. I'm pretty sure Maven (or the way I set it up) doesn't mess up the resources (XML files). In fact by looking at Maven's debug output I can see it's using the right XML file for unit tests.
    Could someone enlighten me, please?

    Do you have both persistence.xml files on your classpath? If so, and they contain the same name for their respective persistence units, you should be getting a warning or error since they must have unique names. There is no way to tell which one you want to access otherwise.
    Best Regards,
    Chris

  • How to verify whether the persistence unit objects are persistent or not?

    How to verify whether the persistence unit objects are persistent or not?
    I have successfully configure and deploy the Employees object as a persistence unit in Oracle Coherence according to the guide of Chapter 6 of Tutorial for Oracle Coherence 3.5.
    Using the RunEmployeeExample script, I have got the right results. I can see that after the cache object is updated, the database table (Employees) is also updated accordingly. The following is the output:
    2009-11-05 11:09:55.043/53.467 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member(Id=2, Timestamp=2009-11-05 11:09:54.867, Add
    ress=192.168.8.80:8089, MachineId=24656, Location=process:1684, Role=OracleRunEmployeeExample) joined Cluster with senior member 1
    2009-11-05 11:09:55.604/54.028 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member 2 joined Service Management with senior memb
    er 1
    2009-11-05 11:09:56.885/55.309 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): TcpRing: connecting to member 2 using TcpSocket{Sta
    te=STATE_OPEN, Socket=Socket[addr=/192.168.8.80,port=8089,localport=4084]}
    2009-11-05 11:09:57.847/56.281 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member 2 joined Service JpaDistributedCache with se
    nior member 1
    2009-11-05 11:09:57.917/56.341 Oracle Coherence GE 3.5.2/463 <D5> (thread=DistributedCache:JpaDistributedCache, member=1): Service JpaDistributed
    Cache: sending ServiceConfigSync containing 258 entries to Member 2
    2009-11-05 11:10:04.086/62.510 Oracle Coherence GE 3.5.2/463 <D5> (thread=DistributedCache:JpaDistributedCache, member=1): Deferring the distribu
    tion due to 1 pending configuration updates
    [EL Info]: 2009-11-05 11:10:14.36--ServerSession(2883071)--EclipseLink, version: Eclipse Persistence Services - 1.1.1.v20090430-r4097
    [EL Info]: 2009-11-05 11:10:22.312--ServerSession(2883071)--file:/C:/JDeveloper/mywork/AppJPA/JPA/classes/-JPA login successful
    2009-11-05 11:10:24.305/82.729 Oracle Coherence GE 3.5.2/463 <D5> (thread=DistributedCache:JpaDistributedCache, member=1): 3> Transferring 128 ou
    t of 257 primary partitions to member 2 requesting 128
    2009-11-05 11:10:25.697/84.121 Oracle Coherence GE 3.5.2/463 <D4> (thread=DistributedCache:JpaDistributedCache, member=1): 1> Transferring 129 ou
    t of 129 partitions to a node-safe backup 1 at member 2 (under 129)
    2009-11-05 11:10:25.857/84.281 Oracle Coherence GE 3.5.2/463 <D5> (thread=DistributedCache:JpaDistributedCache, member=1): Transferring 0KB of ba
    ckup[1] for PartitionSet{128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
    152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
    181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
    210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
    239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256} to member 2
    2009-11-05 11:10:40.678/99.102 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): TcpRing: disconnected from member 2 due to a kill r
    equest
    2009-11-05 11:10:40.678/99.102 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member 2 left service Management with senior member
    1
    2009-11-05 11:10:40.678/99.102 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member 2 left service JpaDistributedCache with seni
    or member 1
    2009-11-05 11:10:40.708/99.132 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member(Id=2, Timestamp=2009-11-05 11:10:40.708, Add
    ress=192.168.8.80:8089, MachineId=24656, Location=process:1684, Role=OracleRunEmployeeExample) left Cluster with senior member 1
    2009-11-05 11:10:40.879/99.303 Oracle Coherence GE 3.5.2/463 <Info> (thread=DistributedCache:JpaDistributedCache, member=1): Restored from backup
    128 partitions
    2009-11-05 11:10:40.879/99.303 Oracle Coherence GE 3.5.2/463 <D4> (thread=DistributedCache:JpaDistributedCache, member=1): 0, 1, 2, 3, 4, 5, 6, 7
    , 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 4
    4, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80
    , 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 11
    3, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
    2009-11-05 11:28:39.800/1178.224 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member(Id=2, Timestamp=2009-11-05 11:28:39.635, A
    ddress=192.168.8.80:8089, MachineId=24656, Location=site:metsys.metex.com,machine:mw12,process:1752, Role=CoherenceConsole) joined Cluster with s
    enior member 1
    2009-11-05 11:28:40.231/1178.655 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member 2 joined Service Management with senior me
    mber 1
    2009-11-05 11:28:41.633/1180.057 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): TcpRing: connecting to member 2 using TcpSocket{S
    tate=STATE_OPEN, Socket=Socket[addr=/192.168.8.80,port=8089,localport=4143]}
    2009-11-05 11:30:01.658/1260.082 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=1): Member 2 joined Service DistributedCache with sen
    ior member 2But I cannot verify if the persistence unit is still persistent.
    Edited by: jetq on Nov 5, 2009 11:49 AM

    I start a Coherence Console in another Windows Command Prompt as the following:
    D:\coherence\bin>  coherence.cmd
    ** Starting storage disabled console **
    java version "1.6.0_11"
    Oracle Coherence Version 3.5.2/463
    Grid Edition: Development mode
    Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
    2009-11-05 11:57:22.167/9.734 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=n/a): Service Cluster joined th
    e cluster with senior service member n/a
    2009-11-05 11:57:22.197/9.764 Oracle Coherence GE 3.5.2/463 <Info> (thread=Cluster, member=n/a): Failed to satisfy the v
    ariance: allowed=16, actual=20
    2009-11-05 11:57:22.197/9.764 Oracle Coherence GE 3.5.2/463 <Info> (thread=Cluster, member=n/a): Increasing allowable va
    riance to 17
    2009-11-05 11:57:22.677/10.244 Oracle Coherence GE 3.5.2/463 <Info> (thread=Cluster, member=n/a): This Member(Id=3, Time
    stamp=2009-11-05 11:57:22.392, Address=192.168.8.80:8089, MachineId=24656, Location=process:460, Role=CoherenceConsole,
    Edition=Grid Edition, Mode=Development, CpuCount=1, SocketCount=1) joined cluster "cluster:0xD3FB" with senior Member(Id
    =1, Timestamp=2009-11-05 11:09:09.738, Address=192.168.8.80:8088, MachineId=24656, Location=process:1816, Role=Coherence
    Server, Edition=Grid Edition, Mode=Development, CpuCount=1, SocketCount=1)
    2009-11-05 11:57:22.737/10.304 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=n/a): Member 1 joined Service
    Management with senior member 1
    2009-11-05 11:57:22.737/10.304 Oracle Coherence GE 3.5.2/463 <D5> (thread=Cluster, member=n/a): Member 1 joined Service
    JpaDistributedCache with senior member 1
    2009-11-05 11:57:23.108/10.675 Oracle Coherence GE 3.5.2/463 <D5> (thread=Invocation:Management, member=3): Service Mana
    gement joined the cluster with senior service member 1
    2009-11-05 11:57:23.759/11.326 Oracle Coherence GE 3.5.2/463 <D5> (thread=TcpRingListener, member=3): TcpRing: connectin
    g to member 1 using TcpSocket{State=STATE_OPEN, Socket=Socket[addr=/192.168.8.80,port=4168,localport=8089]}
    SafeCluster: Name=cluster:0xD3FB
    Group{Address=224.3.5.2, Port=35463, TTL=4}The previous output shows that this Coherence console (the client side) has already joined the JPA server.
    But the following output shows us that this console cannot access the Employees cache and cannot get the object entry. Why?
    Map (?): cache Employees
    2009-11-05 12:11:41.653/869.220 Oracle Coherence GE 3.5.2/463 <Info> (thread=main, member=3): Loaded cache configuration
    from "jar:file:/D:/coherence/lib/coherence.jar!/coherence-cache-config.xml"
    2009-11-05 12:11:43.055/870.622 Oracle Coherence GE 3.5.2/463 <D5> (thread=DistributedCache, member=3): Service Distribu
    tedCache joined the cluster with senior service member 3
    <distributed-scheme>
      <!--
      To use POF serialization for this partitioned service,
      uncomment the following section
      <serializer>
      <class-
      name>com.tangosol.io.pof.ConfigurablePofContext</class-
      name>
      </serializer>
      -->
      <scheme-name>example-distributed</scheme-name>
      <service-name>DistributedCache</service-name>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>example-binary-backing-map</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
      <autostart>true</autostart>
    </distributed-scheme>
    Map (Employees): list
    2009-11-05 12:11:48.402/875.969 Oracle Coherence GE 3.5.2/463 <Error> (thread=main, member=3):
    java.lang.RuntimeException: Storage is not configured
            at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$BinaryMap.onMissing
    Storage(DistributedCache.CDB:9)
            at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$BinaryMap.ensureReq
    uestTarget(DistributedCache.CDB:33)
            at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$BinaryMap.sendParti
    tionedRequest(DistributedCache.CDB:31)
            at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$BinaryMap.size(Dist
    ributedCache.CDB:13)
            at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$BinaryMap$EntrySet.
    size(DistributedCache.CDB:1)
            at com.tangosol.util.ConverterCollections$ConverterEntrySet.size(ConverterCollections.java:2720)
            at com.tangosol.coherence.component.application.console.Coherence.doList(Coherence.CDB:74)
            at com.tangosol.coherence.component.application.console.Coherence.processCommand(Coherence.CDB:442)
            at com.tangosol.coherence.component.application.console.Coherence.run(Coherence.CDB:39)
            at com.tangosol.coherence.component.application.console.Coherence.main(Coherence.CDB:3)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at com.tangosol.net.CacheFactory.main(CacheFactory.java:1400)Edited by: jetq on Nov 5, 2009 12:18 PM

Maybe you are looking for