Toplink  9 to weblogic 10 3 5

toplink 9.0.4.5 migration to weblogic 10.3.5 is not working
I am migrating a J2EE based application runing on OC4J to weblogic 10.3.5 , it uses toplink.jar version 9.0.4.5, after deploying the ear I am getting the following java.lang.NoSuchMethodError no error, but this method is there in toplink.jar , which I have added the in the ear lib folder and have made the following entry in the application.xml
<library-directory>lib</library-directory>
But still I am getting the same error. Any suggestion would be greatly appreciated, as I am hanging on this issue for the last one week.
java.rmi.RemoteException: EJB Exception: ; nested exception is:
java.lang.NoSuchMethodError: ae.co.etisalat.cbcm.biz.util.persistency.CatalogProject.addDescriptor(Loracle/toplink/publicinterface/Descriptor;)V
at weblogic.ejb.container.internal.EJBRuntimeUtils.throwRemoteException(EJBRuntimeUtils.java:106)
at weblogic.ejb.container.internal.BaseRemoteObject.handleSystemException(BaseRemoteObject.java:868)
at weblogic.ejb.container.internal.BaseRemoteObject.handleSystemException(BaseRemoteObject.java:809)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:518)
at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:49)
at weblogic.ejb.container.internal.BaseRemoteObject.__WL_postInvokeTxRetry(BaseRemoteObject.java:444)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:53)
at ae.co.etisalat.cbcm.app.soh.refundrules.ejb.impl.RefundRulesEJB_531u10_EOImpl.getRefundRules(Unknown Source)
at ae.co.etisalat.cbcm.app.soh.refundrules.ejb.impl.RefundRulesEJB_531u10_EOImpl_CBV.getRefundRules(Unknown Source)
at ae.co.etisalat.cbcm.web.soh.refundrules.RefundRulesModel.getRefundRules(RefundRulesModel.java:127)
at ae.co.etisalat.cbcm.web.soh.refundrules.SOHRefundRulesLoader.load(SOHRefundRulesLoader.java:50)
at oracle.ias.cache.CacheHandle.findObject(CacheHandle.java:602)
at oracle.ias.cache.CacheHandle.locateObject(CacheHandle.java:425)
at oracle.ias.cache.CacheAccess.get(CacheAccess.java:527)
at ae.co.etisalat.cbcm.cmmn.util.cache.CBCMCacheHandler.getObject(CBCMCacheHandler.java:374)
at jsp_servlet._jsp._util.__mainpage._jspService(__mainpage.java:447)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:416)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:326)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3717)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: java.lang.NoSuchMethodError: ae.co.etisalat.cbcm.biz.util.persistency.CatalogProject.addDescriptor(Loracle/toplink/publicinterface/Descriptor;)V
at ae.co.etisalat.cbcm.biz.util.persistency.CatalogProject.<init>(CatalogProject.java:42)
at ae.co.etisalat.cbcm.biz.util.persistency.CBCMProject.addCatalogDescriptors(CBCMProject.java:303)
at ae.co.etisalat.cbcm.biz.util.persistency.CBCMProject.<init>(CBCMProject.java:53)
at ae.co.etisalat.cbcm.biz.util.persistency.MasterProject.<init>(MasterProject.java:42)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at ae.co.etisalat.cbcm.biz.util.persistency.TopLinkAdapter.addProject(TopLinkAdapter.java:2360)
at ae.co.etisalat.cbcm.biz.util.persistency.TopLinkAdapter.<clinit>(TopLinkAdapter.java:2350)
at ae.co.etisalat.cbcm.biz.util.persistency.CBCMEntityManagerFinder.<init>(CBCMEntityManagerFinder.java:126)
at ae.co.etisalat.cbcm.biz.util.catalog.managerfinder.CatalogEntityManagerFinder.<init>(CatalogEntityManagerFinder.java:67)
at ae.co.etisalat.cbcm.app.util.catalog.helper.CatalogHelper.load(CatalogHelper.java:546)
at oracle.ias.cache.CacheHandle.findObject(CacheHandle.java:602)
at oracle.ias.cache.CacheHandle.locateObject(CacheHandle.java:425)
at oracle.ias.cache.CacheAccess.get(CacheAccess.java:527)
at ae.co.etisalat.cbcm.cmmn.util.cache.CBCMCacheHandler.getObject(CBCMCacheHandler.java:374)
at ae.co.etisalat.cbcm.biz.util.persistency.PersistencyFinder.<clinit>(PersistencyFinder.java:513)
at ae.co.etisalat.cbcm.app.soh.refundrules.helper.RefundRulesHelper.getRefundRules(RefundRulesHelper.java:112)
at ae.co.etisalat.cbcm.app.soh.refundrules.ejb.impl.RefundRulesEJB.getRefundRules(RefundRulesEJB.java:87)
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.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy59.getRefundRules(Unknown Source)
at ae.co.etisalat.cbcm.app.soh.refundrules.ejb.impl.RefundRulesEJB_531u10_EOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
... 25 more
REFUND_RULE {}
Regards
Muthuvel.P

there was some new version of toplink in weblogic installation, I have commented them.
after that this error went.

Similar Messages

  • TopLink in WebLogic Server 10

    Hi,
    does anybody have experience with the use of TopLink in WebLogic Server 10.0?
    Wenn I use TopLink as JPA persistence provider, I receive a javax.persistence.TransactionRequiredException ("Exception Description: No transaction is currently active") for every method containing updates.
    However, transaction attributes are set correctly, and the same application runs without this
    problem if I use Kodo instead of TopLink. The application also runs when using TopLink and OC4J.
    Do I have to set something instructing TopLink how to find the transaction manager?
    Any help is appreciated.
    Cheers,
    Andreas Geppert

    OK through days of long searching I have found what I believe to be the correct answer that James was hinting at. His link to EclipseLink was what eventually got me there. I already had working code but I wasn't sure WHY it worked. Then I found very similar code to what I'd already done in EclilpseLink source, in the org.eclipse.persistence.transaction.wls.WebLogicTransactionController class.
    You need to extend the JPA target server. Here is the persistence.xml snippet:
    <property name="toplink.target-server" value="your.package.WebLogicTransactionController"/>
    Then create the class:
    package your.package;
    import javax.transaction.TransactionManager;
    import oracle.toplink.essentials.transaction.JTATransactionController;
    public class WebLogicTransactionController extends JTATransactionController
    private static final String JNDI_TRANSACTION_MANAGER_NAME = "javax.transaction.TransactionManager";
    protected TransactionManager acquireTransactionManager() throws Exception {
    TransactionManager mgr = (TransactionManager)jndiLookup(JNDI_TRANSACTION_MANAGER_NAME);
    return mgr;
    If you do this, it should just work. You shouldn't need to change any other code, the UserTransactions will be injected correctly.
    If you look at the EclipseLink WebLogicTransactionController, you'll see it uses a different JNDI name. I've used the general "javax.transaction.TransactionManager" lookup because I believe this is standard as of Weblogic 10.
    http://e-docs.bea.com/wls/docs100/jta/jtaapi.html
    Hope this helps you (if you haven't already figured it out yourself).

  • Configure toplink for weblogic 10.3

    Hello everyone,
    I am totally frustrated, please help. I have installed toplink in any path you could imagine, and configure the persistence.install as I saw in google. Could you give me a guide, for silly people, for configuring toplink into weblogic 10.3?
    The problems come with the following persistence.xml, it says noclassfoundexception for oracle.toplink.essentials.PersistenceProvider:
    <?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="Default" transaction-type="RESOURCE_LOCAL">
    <provider>oracle.toplink.essentials.PersistenceProvider</provider>
    <properties>
    <property name="toplink.jdbc.driver" value="oracle.jdbc.OracleDriver"/>
    <property name="toplink.jdbc.url" value="jdbc:oracle:thin:@192.168.146.18:1523:Desacap"/>
    <property name="toplink.jdbc.user" value="CAP_OWN" />
    <property name="toplink.jdbc.password" value="CAP_OWN" />
    <property name="toplink.logging.level" value="FINEST"/>
    </properties>
         </persistence-unit>
    </persistence>
    Thanks in advance.

    WebLogic Server 10.3 ships with Apache OpenJPA and Kodo as persistence providers to my understanding. Therefore if you want to use TopLink, etc, you'll have to install the TopLink libraries somewhere in your application. APP-INF/lib, WEB-INF/lib or a shared library, etc. Can you expand on "I have installed toplink in any path you could imagine" and detail which jars you've tried to install and where you've tried to put them?
    There is also a TopLink specific forum where you might find more expertise:
    TopLink/JPA

  • Problem getting XA Datasources to work with Toplink inside Weblogic

    Hello,
    I am using POJOs inside weblogic 7.1, and I am having some difficulties. Of picked up a jdbc driver called JSQLConnect and it sets up fine from the Weblogic console. This is the only 3rd party XA driver that I have successfully got working inside weblogic.
    I've set up the Weblogic datasource in toplink per the documentation/examples I found. I've included a stack trace of where things blow up. From your source code, it looks like the AbstractSynchronizationListener thinks that the unit of work is not active. Thanks in advance for any assistance. Mike
    UnitOfWork(2416860)--release unit of work
    UnitOfWork(2416860)--JTS#beforeCompletion()
    UnitOfWork(2416860)--JTS#afterCompletion()
    UnitOfWork(2416860)--release unit of work
    ClientSession(2454268)--client released
    <May 14, 2003 3:39:10 PM MDT> <Error> <EJB> <010026> <Exception during commit of transacti
    on 12:591b650d7f28edb9: weblogic.transaction.internal.AppSetRollbackOnlyException
    at weblogic.transaction.internal.TransactionImpl.setRollbackOnly(TransactionImpl.j
    ava:467)
    at oracle.toplink.jts.JTSSynchronizationListener.rollbackGlobalTransaction(Unknown
    Source)
    at oracle.toplink.jts.AbstractSynchronizationListener.beforeCompletion(Unknown Sou
    rce)
    at weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions(ServerSCInfo.j
    ava:540)
    at weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain(ServerSCInfo
    .java:92)
    at weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain(Ser
    verTransactionImpl.java:1044)
    at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(ServerTran
    sactionImpl.java:1581)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransa
    ctionImpl.java:237)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImp
    l.java:208)
    at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:278)
    at com.icat.server.infrastructure.legacyint.LegacyIntegrationServiceImpl_eayqrf_EO
    Impl.transferLegacyData(LegacyIntegrationServiceImpl_eayqrf_EOImpl.java:56)
    at com.icat.common.infrastructure.legacyint.LegacyIntegrationTask.execute(LegacyIn
    tegrationTask.java:165)
    at com.icat.common.infrastructure.scheduling.ScheduledTask.executeMyTask(Scheduled
    Task.java:142)
    at com.icat.common.infrastructure.scheduling.ScheduledTask.run(ScheduledTask.java:
    297)
    at java.lang.Thread.run(Thread.java:479)

    Hi Michael,
    I will have to set things up again to try it. I've been in the middle of doing other development and haven't gotten back to the XA Driver attempts again. Can you send me an email where I can fire a note to you directly once I try this again? I will probably need to send you code, etc. Mine is [email protected]
    As for your questions, let me address them below:
    How are you using XA (e.g. are you talking to two different databases)? Are you using TopLink any differently (e.g. using SessionBroker)? Is your transaction being propagated to multiple servers? What exactly has changed, or have you simply started using a different driver/data source? (Sorry for all the questions, just want to try to hone in on what components we are looking at).
    BTW, do transactions ever get started by the client and span multiple server requests?
    1) Yep, I am reading from one database, and writing to the other. So its not a two phase commit right now, but we will have one in the future.
    2) I'm not using your session broker. We have a framework, where we can get a client session from a named server session. This works pretty well for us. Right now, we are using the same framework to access two databases. I'm just not setting external tx control, session synchornization,etc
    3) I can use the third party jdbc driver in a non-XA transaction. So it doesn't seem to be a property of the JDBC driver alone. It seems to be when I attempt to set things up in XA mode.
    4) Transactions are controlled at the Session Bean level. They only last for one bean request.
    If you have any cycles, I was wondering if you could try getting the XA transaction to work in your environment? I was using Net-Direct's driver, along with Weblogic 7.1 sp1, and Toplink 9.0.3.3 (Build 430). An example of how you got things to work may point out what is different about my useage....

  • TopLink on WebLogic or oracle.toplink.PersistenceProvider

    Hy.
    I have applied patch 5KXF to add toplink 11g on WebLogic 10.3.
    Now, in BEA_HOME\patch_wls1030\patch_jars\ there is toplink.jar.
    But how can I use it?
    Inside toplink.jar there is file META-INF\services\META-INF\services\javax.persistence.spi.PersistenceProvider.
    I assume that content of this file is the name of the implementation class.
    It is "oracle.toplink.PersistenceProvider".
    But when I put this name in persistence.xml and try to deploy my EAR, this message appears
    =====================================================================================================
    weblogic.deployment.EnvironmentException: Error processing persitence unit toplink of module toplink.jar: Error instantiating the Persistenc
    e Provider class oracle.toplink.essentials.PersistenceProvider of the PersistenceUnit toplink: java.lang.ClassNotFoundException: oracle.topl
    ink.essentials.PersistenceProvider
    at weblogic.deployment.PersistenceUnitInfoImpl.createEntityManagerFactory(PersistenceUnitInfoImpl.java:322)
    at weblogic.deployment.PersistenceUnitInfoImpl.<init>(PersistenceUnitInfoImpl.java:123)
    at weblogic.deployment.AbstractPersistenceUnitRegistry.storeDescriptors(AbstractPersistenceUnitRegistry.java:331)
    at weblogic.deployment.AbstractPersistenceUnitRegistry.loadPersistenceDescriptor(AbstractPersistenceUnitRegistry.java:245)
    at weblogic.deployment.ModulePersistenceUnitRegistry.<init>(ModulePersistenceUnitRegistry.java:63)
    =====================================================================================================
    The persistence.xml file looks like
    =====================================================================================================
    <persistence-unit name="toplink">
    <provider>
    oracle.toplink.essentials.PersistenceProvider
    </provider>
    <jta-data-source>jdbc/miroslav_rehirDS</jta-data-source>
    </persistence-unit>
    =====================================================================================================
    One thing more .... In the filesistem I can't find class oracle.toplink.PersistenceProvider.
    On the other hand it is OK to put
    <provider>
    org.eclipse.persistence.jpa.PersistenceProvider
    </provider>
    Thanks four your replies,
    Miroslav

    Miroslav,
    You may be interested in the latest release of Oracle WebLogic Server.
    See the recent OTN post from 20110115 detailing the latest release of Oracle WebLogic Server and some retesting of the previous issues related to JSR-317 JPA 2.0 support below.
    11g Release 1 Patch Set 3 (WLS 10.3.4)
    The latest release of Oracle WebLogic Server has been available on OTN at the following location since 20110115.
    http://www.oracle.com/technetwork/middleware/weblogic/downloads/wls-main-097127.html
    This release provides support for JSR-317 JPA 2.0 container managed applications using the QWG8 patch or a manual prepending classpath change.
    In 10.3.3.0 you were required to use the FilteringClassLoader via the *<wls:prefer-application-packages>* addition to your application managed persistence unit - this workaround as well as the persistence.xml renaming one is now fully deprecated and not required in 10.3.4.0 for both application and container managed persistence contexts.
    As of 20110115 the 5 outstanding issues below look to be fixed by applying the http://download.oracle.com/docs/cd/E17904_01/web.1111/e13720/using_toplink.htm#EJBAD1309 patch for QWG8 or manually prepending to the WebLogic 10.3.4.0 server classpath.
    commEnv.cmd: line 67
    @rem Set BEA Home
    set BEA_HOME=C:\opt\wls1034r20110115
    @rem Enable JPA 2.0 functionality on WebLogic Server 10.3.4 with the following patch line for commEnv.cmd:67
    set PRE_CLASSPATH=%BEA_HOME%\modules\javax.persistence_1.0.0.0_2-0-0.jar;%BEA_HOME%\modules\com.oracle.jpa2support_1.0.0.0_2-0.jar
    A JPA 2.0 EE application using EclipseLink as the JPA2 persistence provider on WebLogic is detailed in the analysis section below1) JPA 2.0 XSD parsing - verified
    2) New JPA 2.0 schema elements like <shared-cache-mode>NONE</shared-cache-mode> - verified
    3) JPA 2.0 runtime API like a entityManager.getMetamodel(); call on the Servlet or Stateless session bean - verified
    4) JPA 2.0 weaving/instrumentation - this will require a more detailed lazy model and more debugging to fully verify
    5) Dependency Injection of a container managed JPA 2.0 entityManager on a EJB component like a stateless session bean - verified
    http://wiki.eclipse.org/EclipseLink/Development/JPA_2.0/weblogic#Enabling_JPA2_support
    OTN downloadhttp://www.oracle.com/technetwork/middleware/weblogic/downloads/wls-main-097127.html
    Patching
    http://download.oracle.com/docs/cd/E18476_01/doc.220/e18480/weblogicchap.htm
    Documentationhttp://download.oracle.com/docs/cd/E17904_01/web.1111/e13852/toc.htm
    Supported Oracle WebLogic Server Versionshttp://download.oracle.com/docs/cd/E15315_06/help/oracle.eclipse.tools.weblogic.doc/html/SupportedServerVersions.html
    TopLink JPA 2.0 Specific documentation/patchinghttp://download.oracle.com/docs/cd/E17904_01/web.1111/e13720/using_toplink.htm#EJBAD1309
    EclipseLink Wiki: JPA 2.0 using EclipseLink on WebLogic analysis (XSD, Weaving, DI of @PersistenceContext)http://wiki.eclipse.org/EclipseLink/Development/JPA_2.0/weblogic#Enabling_JPA2_support
    thank you
    /Michael O'Brien
    http://www.eclipselink.org

  • Toplink and weblogic - ejbc error

    Help!
    I cannot get wl6.1 and the oracle toplink classes to work together.
    Whenever I try to ejbc an entity ejb, I get the following error:
    ERROR: Error from ejbc: Error while loading persistence resource TopLink_CMP_Descriptor.xml Make sure that the persistence type is in your classpath. ERROR: ejbc found errors
    I have the entry in persistence.install in the appropriate location.
    I HAVE the toplink jars in my classpath for the ejbc.
    What is the problem?
    I've looked for many hours and tries many things, but keep getting this error.
    HELP!
    (TIA)
    Andrew

    Hello,
    Usually it's a classpath thing. ie: the tl_wlsx.jar is not on the classpath.
    Can you also check for whitespace after the entry in the persistence.install file.

  • Toplink-ejb-jar.xml config with weblogic-ejb-jar.xml

    Hello,
    To use toplink with EJB's deployed in Weblogic.
    I changed weblogic-ejb-jar.xml :
    (Because, it does not allow me to change <type-identifier> and <type-version> elements)
    <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
    <type-version>7.0</type-version>
    <type-storage>META-INF/toplink-ejb-jar.xml</type-storage>
    Here, is the toplink-ejb-jar.xml:
    (Because, I am asked to give PUBLIC value for Weblogic 8.1.0....)
    <!DOCTYPE toplink-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB RDBMS Persistence//EN" "file://D:/Toplink10g/toplink/config/dtds/toplink-wls-ejb-jar_10_0_3.dtd">
    <toplink-ejb-jar>
    <session>
    <name>myUniqueSession</name>
    <project-xml>META-INF/project.xml</project-xml>
    <login>
    <connection-pool>demoPool</connection-pool>
    </login>
    </session>
    </toplink-ejb-jar>
    1. I have also given full path to the "toplink-wls-ejb-jar_10_0_3.dtd", but I still get parsing error:
    "myBeans.jar": [EJB:011019]While reading META-INF/toplink-ejb-jar.xml, the persistence layer of the Entity EJB failed to deploy. The error was:
    "myBeans.jar": Error in descriptor line 5: Error parsing file at line: 5 column: 18. Element type "toplink-ejb-jar" must be declared..
    2. Also, How I can avoid the full path to the DTD???
    Thanks for your help in this regard!

    You are not properly configured to use TopLink with Weblogic. You need to place the TopLink_CMP_Descriptor.xml install file in your Weblogic lib/persistence directory. Add "TopLink_CMP_Descriptor.xml" to your persistence.install file and then update weblogic-ejb-jar.xml to reference the correct TopLink persistence type and versions, ie,
    <type-identifier>TopLink_CMP_2_0</type-identifier>
    <type-version>10</type-version>
    <type-storage>META-INF/toplink-ejb-jar.xml</type-storage>
    See the TopLink developer guide for more information and configuration details.
    http://download-east.oracle.com/docs/cd/B10464_05/web.904/b10313/pkg_depl.htm#1124524
    Cheers,
    Guy

  • TOPLink 3.0 and Weblogic 6.0

    I am trying to use the new TOPLink 3.0 with Weblogic Server 6.0. However, when I run the build scripts which come with TOPLink, I keep getting the following error:
    ERROR: Error from ejbc: Persistence type 'TOPLink_CMP' with version '3.0 which is referenced in bean 'Account' is not installed. The installed persistence types are: (WebLogic_CMP_RDBMS, 6.0), (WebLogic_CMP_RDBMS, 5.1.0).
    ERROR: ejbc found errors
    The question is, how do I use a third-party persistence framework, like TOPLink, with Weblogic 6.0? I already have the persistence type in my classpath, but this does not seem to help!!

    Hi Chris,
    You are correct, but that functionality will probably be placed in the mapping workbench in a future release.
    Darren

  • How do I discover which version of JPA is being supported by WebLogic

    The WebLogic version I have been using is 10.3.6.0. With the purpose to use JPA2 instead of JPA1, I followed the guide which tells to manually set this by adding these lines to commEnv.cmd (Programming Enterprise JavaBeans, Version 3.0, for Oracle WebLogic Server 11g Release 1 10.3.6):
    set wls_modules=C:\Oracle\Middleware\modules
    set PRE_CLASSPATH=%wls_modules%\javax.persistence_1.0.0.0_1-0-2.jar;%wls_modules%\com.oracle.jpa2support_1.0.0.0_2-1.jar
    Then, I changed from Kodo to TopLink on WebLogic console.
    Suddenly, I read "Java EE 6 support arrived in WebLogic 10.3.4.0 on 15 Jan 2011" (http://dev.eclipse.org/mhonarc/lists/eclipselink-users/msg06874.html).
    I am asking myself if WebLogic 10.3.6 is already setted to use JPA2 by default. It would be easily answered if I knew how to see which JPA, JTA, EJB or wherever configuration version are set when the server is started. Where can I look for this information?

    My understanding is that the situation in WebLogic 10.3.6 is entirely the same as in prior versions - it ships with the JPA 2.0 jars but they are not enabled by default so that it can meet Java EE 5 compatibility requirements. This is mentioned in the docs you may have seen here: http://docs.oracle.com/cd/E23943_01/web.1111/e13852/toc.htm#BGGBIJBI
    and the docs from 10.3.5 here:
    http://docs.oracle.com/cd/E21764_01/web.1111/e13852/toc.htm#NOTES149
    The link you referenced does not say WebLogic 10.3.4 is Java EE 6 compatible. The reference I believe you got this from is stating that the com.oracle.jpa2support_1.0.0.0_2-0.jar is included for future Java EE 6 compatibility, but is not enabled in 11.3.x so that it remains Java EE 5 compatible. It basically ships a preview of Java EE 6 components that are not enabled - Only WebLogic 12c is fully Java 6 EE compatible by default, which includes JPA 2.0.
    Best Regards,
    Chris

  • O/R mapping tool with WebLogic

    Hi
    What is the most popular O/R mapping tool used with WebLogic - TopLink? CocoBase?
    Anything else?
    Also, does anyone have market share numbers for this tool, e.g. out of the total
    number of O/R tools used with WebLogic, XYZ's share is 75%.
    Thanks in advance!
    Ashish Ray

    (from toplink support)
    Andrew,
    Hi there. I've performed some research regarding
    your question, and it appears that having an
    "automatic" 1:1 indirect relationship between an EJB
    2.0 Entity Bean and a dependent Java object is not
    currently supported by TopLink. Examining the
    documentation, this non-support unfortunately isn't
    documented. I have entered a feature request on your
    behalf so that we might be able to support it in a
    future major version of TopLink.
    However, there are a couple of alternatives which
    you can use:
    1) We do support non-indirect 1:1 relationships
    between an EJB 2.0 Entity Bean and a dependent Java
    object. You could disable indirection, and maybe
    make the relationship a batch read relationship so
    that your performance will not be degraded.
    2) You can write a concrete getter and setter, and
    provide an instance variable on the entity bean for
    your dependent object of type ValueHolderInterface.
    Provide the private getters and setters for set and
    get -Holder. Map this normally using TopLink, and
    make sure Indirection is specified in the Mapping
    Workbench.
    IMPORTANT: TopLink will handle the normal
    persistence management for this relationship,
    however you will need to handle the merging back of
    this object yourself (you had to do this in EJB 1.1
    in TopLink as well). Luckily there are good docs on
    this, and it's covered in detail - look at the
    TopLink for WebLogic documentation : Runtime
    Considerations > Managing dependent objects.
    Personally, I would implement solution 1) with batch
    reading on the attribute, because the dependent
    object shouldn't be that "big" (otherwise it would
    be an entity bean). This is an easier solution,
    however you should investigate 2) fully yourself.

  • Logging just exceptions and 'critical' TopLink info to the log

    I'm trying to just log exceptions and other 'critical' info that occur within TopLink to the log rather than getting lots of SQL statements, unit of work info etc.
    I'm running TopLink 9.0.3.5 in WebLogic Server 7.0 (SP4) using container managed persistence for Entity Beans.
    If I startup WebLogic with the toplink.log.level=INFO option then I get SQL statements, unit of work info, JTS registration info as well as any exceptions that are logged.
    If I leave the logging like this my WebLogic log will likely be huge and performance degraded from writing a lot of info that will never be used.
    If I startup WebLogic with the toplink.log.level=NONE option then I don't get any log statements, not even exception info (although obviously clients still get the exception stack). I need to get the exceptions and 'critical' TopLink info in the WebLogic log because I cannot rely on getting the information from client logs.
    In the TopLink for WebLogic 2.5.1 product the default logging behaviour was to log only exceptions and other 'critical' info to the log.
    Is there a way to configure TopLink 9.0.3 so that only exceptions and any other 'critical' TopLink information is written to the log (and SQL statements, unit of work info and JTS registration info is not written).
    Thanks.

    You don't mention which version of 10g you have but there is a bug in all versions 10.1.2.0.2 and newer in that usernames are no longer being inserted in the Apache log files when portal pages are viewed. It was somewhat hit or miss before, but good enough to get a feeling of what was being used Now, it does not even provide that. Bug number reference from Metalink is 5638057. It is shown as "Closed -- not feasible to fix", but will be addressed in 11.0
    I am experimenting with getting this data a couple of ways. One, if you happen to use WebTrends, you can manually set the authenticated users field to whatever you'd like so I am using the API's to retrieve the username and the user company (organization) and concatenating them together.
    The other option I am considering is a procedure call in the footer of each page that automatically updates a new table with the session id, username, page, timestamp, and whatever other information you may want each time the page is visited. This table can then be dumped to a data file if desired or left in the database and analyzed using a tool like Discoverer.
    Rgds/Mark M.

  • TOPLink serialization exception

    When switching from a single server deployment to a (single) server in a
              cluster.
              I suddenly get the exception as shown in the stacktrace below.
              Is this a known bug? Or am I doing something wrong?
              Thanks Toby
              Fri Dec 03 14:10:48 GMT+02:00 1999:<E> <MulticastSocket>
              java.io.NotSerializableException:
              TOPLink.Public.ThreeTier.ExternalConnecti
              onPool
              at
              java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java,
              Compiled Code)
              at
              java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java, Compiled
              Code)
              at java.util.Hashtable.writeObject(Hashtable.java, Compiled
              Code)
              at java.lang.reflect.Method.invoke(Native Method)
              at
              java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java,
              Compiled Code)
              at
              java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java,
              Compiled Code)
              at
              java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java, Compiled
              Code)
              at
              java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java,
              Compiled Code)
              at
              java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java,
              Compiled Code)
              at
              java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java,
              Compiled Code)
              at
              java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java, Compiled
              Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeSpecial(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectWL(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.cluster.BasicServiceOffer.writeObject(BasicServiceOffer.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writePublicSerializable(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectBody(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectWL(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeArrayList(WLObjectOutputStreamBase.java,
              Compiled Code)
              at weblogic.cluster.Announcement.writeObject(Announcement.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writePublicSerializable(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectBody(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutputStreamBase.java,
              Compiled Code)
              at
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectWL(WLObjectOutputStreamBase.java,
              Compiled Code)
              at weblogic.cluster.TMSocket.send(TMSocket.java, Compiled Code)
              at weblogic.cluster.TMSocket.start(TMSocket.java, Compiled Code)
              at weblogic.cluster.ClusterManager.start(ClusterManager.java,
              Compiled Code)
              at weblogic.cluster.ClusterMain.start(ClusterMain.java, Compiled
              Code)
              at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java, Compiled Code)
              at weblogic.t3.srvr.T3Srvr.main(T3Srvr.java, Compiled Code)
              at java.lang.reflect.Method.invoke(Native Method)
              at weblogic.Server.startServerDynamically(Server.java, Compiled
              Code)
              at weblogic.Server.main(Server.java, Compiled Code)
              

    Hi folks,
              Are there any outstanding problems with this that have not been dealt with
              through TOPLink for WebLogic support? Just looking at the exception
              stack trace it looks like the TOPLink session is trying to be serialized.
              This will occur if it has been put in JNDI, since clusters will replicate
              the JNDI namespace across the cluster. If this isn't what you are seeing
              then please let us know at [email protected]
              Note that the first GA release of TOPLink for WebLogic did put the
              session in JNDI, but this was changed in every release after that one.
              Regards,
              Mike Keith
              TOPLink for Weblogic
              Steve Cramer <[email protected]> wrote in message
              news:[email protected]...
              > Any news on this (from either BEA or TOPLink)? We're seeing this
              identical
              > behavior in the WLS 5.1 GA release, using TOPLink for Java v 2.5.1
              > (pre-release 1). Please respond if you've had any updates.
              >
              > Thanks,
              > cramer
              >
              > Tobias Christen <[email protected]> wrote in message
              > news:[email protected]...
              > > Sorry,
              > >
              > > I mixed up two open issues with TopLink.
              > > The bug this thread is concerned about is not cured with
              > > SP3 and never was intended. TopLink never made a statement
              > > on fixing this bug. Please excuse my misinformation. The bug
              > > was reported to TopLink this morning. If it is resolved
              > > I´ll mail the solution to this thread.
              > >
              > > Toby
              > >
              > > Christopher Lynch wrote:
              > >
              > > > Hi,
              > > > We are experiencing pretty much if not the same exception when we
              try
              > to cluster
              > > > our weblogic servers.
              > > >
              > > > Please let me know if you have any more insight on this problem.
              > > >
              > > > Thank You,
              > > >
              > > > Chris Lynch
              > > > TravelNow.com
              > > >
              > > > Tobias Christen wrote:
              > > >
              > > > > Thanks,
              > > > >
              > > > > I certainly checked with them as well, they said they are working
              > > > > with you on this ;-) and let us know when it is fixed.
              > > > >
              > > > > Happy Day
              > > > >
              > > > > Michael Girdley wrote:
              > > > >
              > > > > > Tobias,
              > > > > >
              > > > > > Have you checked with TOPLink support to know if this is a known
              > problem? I
              > > > > > have not heard of it before. In any case, the Object People are
              > your best
              > > > > > resource for these kind of questions about TOPLink.
              > > > > >
              > > > > > Thanks!
              > > > > >
              > > > > > --
              > > > > > Michael Girdley
              > > > > > BEA Product Manager
              > > > > >
              > > > > > Tobias Christen <[email protected]> wrote in message
              > > > > > news:[email protected]...
              > > > > > > When switching from a single server deployment to a (single)
              > server in a
              > > > > > > cluster.
              > > > > > > I suddenly get the exception as shown in the stacktrace below.
              > > > > > >
              > > > > > > Is this a known bug? Or am I doing something wrong?
              > > > > > >
              > > > > > > Thanks Toby
              > > > > > >
              > > > > > >
              > > > > > > Fri Dec 03 14:10:48 GMT+02:00 1999:<E> <MulticastSocket>
              > > > > > > java.io.NotSerializableException:
              > > > > > > TOPLink.Public.ThreeTier.ExternalConnecti
              > > > > > > onPool
              > > > > > > at
              > > > > > > java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java,
              > Compiled
              > > > > > > Code)
              > > > > > > at java.util.Hashtable.writeObject(Hashtable.java,
              > Compiled
              > > > > > > Code)
              > > > > > > at java.lang.reflect.Method.invoke(Native Method)
              > > > > > > at
              > > > > > >
              > java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > > java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java,
              > Compiled
              > > > > > > Code)
              > > > > > > at
              > > > > > >
              > java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > > java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java,
              > Compiled
              > > > > > > Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutput
              > > > > > StreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeSpecial(WLObjectOutpu
              > > > > > tStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutput
              > > > > > StreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectWL(WLObjectOutp
              > > > > > utStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > weblogic.cluster.BasicServiceOffer.writeObject(BasicServiceOffer.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writePublicSerializable(WL
              > > > > > ObjectOutputStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectBody(WLObjectOu
              > > > > > tputStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutput
              > > > > > StreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectWL(WLObjectOutp
              > > > > > utStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeArrayList(WLObjectOut
              > > > > > putStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > weblogic.cluster.Announcement.writeObject(Announcement.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writePublicSerializable(WL
              > > > > > ObjectOutputStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectBody(WLObjectOu
              > > > > > tputStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObject(WLObjectOutput
              > > > > > StreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at
              > > > > > >
              > > > > >
              >
              weblogic.common.internal.WLObjectOutputStreamBase.writeObjectWL(WLObjectOutp
              > > > > > utStreamBase.java,
              > > > > > > Compiled Code)
              > > > > > > at weblogic.cluster.TMSocket.send(TMSocket.java,
              Compiled
              > Code)
              > > > > > > at weblogic.cluster.TMSocket.start(TMSocket.java,
              Compiled
              > Code)
              > > > > > >
              > > > > > > at
              > weblogic.cluster.ClusterManager.start(ClusterManager.java,
              > > > > > > Compiled Code)
              > > > > > > at weblogic.cluster.ClusterMain.start(ClusterMain.java,
              > Compiled
              > > > > > > Code)
              > > > > > > at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java, Compiled
              > Code)
              > > > > > > at weblogic.t3.srvr.T3Srvr.main(T3Srvr.java, Compiled
              > Code)
              > > > > > > at java.lang.reflect.Method.invoke(Native Method)
              > > > > > > at weblogic.Server.startServerDynamically(Server.java,
              > Compiled
              > > > > > > Code)
              > > > > > > at weblogic.Server.main(Server.java, Compiled Code)
              > > > > > >
              > >
              >
              >
              

  • Can I cluster entitybean which build by Toplink

    I am using toplink for weblogic(weblogic7.01). All entitybeans are built by using toplink. Now we want to turn weblogic into clustered server. How can I set these entitybean clusterable? Weblogic document says that I need set the cluster property in weblogic-ejb-jar.xml. Should I set in weblogic.xml or my toplink project.xml?
    From weblogic console, I can not see any entitybeans list there, I guess since they are wrapped by toplink.

    Yes, TopLink can be configured for cache-synchronization in a cluster. It involves adding a setting in your toplink-ejb-jar.xml configuration file. TopLink's CMP documentation covers this:
    http://download-west.oracle.com/docs/cd/A97688_08/toplink.903/b10065/clusteri.htm#1036378
    The configuration details for the toplink-ej-jar.xml file is described at:
    http://download-west.oracle.com/docs/cd/A97688_08/toplink.903/b10065/entity_b.htm#1097003
    Cheers,
    Doug

  • O/R mapping tool generates bad descriptors for CMP2.0

    The O/R tool has many problems with EJB-CMP 2.0.
    It generates bad ejb-jar.xml (misses the <cmr-field-type> tag, has the same relationship field included in both the <entity> tag and the <relationships> tag).
    The worst part is that is generates bad TopLink descriptors!
    I have numerous indirect 1-1 bean-pojo (plain old java object). When I have the 'tool' generate the ejb-jar.xml and deployment xml it generates all these relationships incorrectly.
    The O/R 'tool' forces you to use transparent indirection for CMP 2.0 relationships; transparent indirection does not allow you to specify 'use method accessing'. Fine. But when I go to deploy the compiled jar, I get ALL sorts of errors complaining that:
    EXCEPTION [TOPLINK-1] (TopLink (WLS CMP) - 9.0.3 (Build 423)): oracle.toplink.exceptions.DescriptorException
    EXCEPTION DESCRIPTION: The attribute [addressToDesc] is not declared as type ValueHolderInterface, but its mapping uses indirection.
    MAPPING: oracle.toplink.mappings.OneToOneMapping[addressToDesc]
    DESCRIPTOR: Descriptor(...
    ARGH!! What the heck do I need to do to get this 'tool' to work? It won't LET me use valueholder in EJB-CMP2.0, but then it complains when when I don't!?!?!
    Frustrated,
    Andrew

    (from toplink support)
    Andrew,
    Hi there. I've performed some research regarding
    your question, and it appears that having an
    "automatic" 1:1 indirect relationship between an EJB
    2.0 Entity Bean and a dependent Java object is not
    currently supported by TopLink. Examining the
    documentation, this non-support unfortunately isn't
    documented. I have entered a feature request on your
    behalf so that we might be able to support it in a
    future major version of TopLink.
    However, there are a couple of alternatives which
    you can use:
    1) We do support non-indirect 1:1 relationships
    between an EJB 2.0 Entity Bean and a dependent Java
    object. You could disable indirection, and maybe
    make the relationship a batch read relationship so
    that your performance will not be degraded.
    2) You can write a concrete getter and setter, and
    provide an instance variable on the entity bean for
    your dependent object of type ValueHolderInterface.
    Provide the private getters and setters for set and
    get -Holder. Map this normally using TopLink, and
    make sure Indirection is specified in the Mapping
    Workbench.
    IMPORTANT: TopLink will handle the normal
    persistence management for this relationship,
    however you will need to handle the merging back of
    this object yourself (you had to do this in EJB 1.1
    in TopLink as well). Luckily there are good docs on
    this, and it's covered in detail - look at the
    TopLink for WebLogic documentation : Runtime
    Considerations > Managing dependent objects.
    Personally, I would implement solution 1) with batch
    reading on the attribute, because the dependent
    object shouldn't be that "big" (otherwise it would
    be an entity bean). This is an easier solution,
    however you should investigate 2) fully yourself.

  • Bean not found within Transaction

    I am using WebLogic 5.1 with container-managed persistence implemented using
              TopLink 2.5.1 and Oracle 8.0.5. I have a stateless session bean method that
              creates an entity bean and then attempts to find it by its primary key. The
              entity bean methods are declared as required using container-managed
              transaction demarcation. The following diagram illustrates the calling
              sequence.
              Client FooManager FooBean
              | Stateless Session Bean Entity Bean
              | | |
              |doIt | |
              |----------------------->| |
              | |create |
              | |------------------> |
              | | |
              | |findByPrimaryKey |
              | |------------------>|
              | | |
              In test case 1, I run this without any container-managed transaction
              demarcation on the stateless session bean. Everything works fine. The
              entity bean is created and I can find it by its primary key.
              In test case 2, I declare the stateless session bean methods as required
              using container-managed transaction demarcation. The entity bean is created
              but the findByPrimaryKey fails and throws a FinderException. When I look
              into the database I can see the entity bean has been created. Why does the
              findByPrimaryKey fail?
              Steven R. Baturin
              

    "Steven R. Baturin" wrote:
              >
              > I am using WebLogic 5.1 with container-managed persistence implemented using
              > TopLink 2.5.1 and Oracle 8.0.5. I have a stateless session bean method that
              > creates an entity bean and then attempts to find it by its primary key. The
              > entity bean methods are declared as required using container-managed
              > transaction demarcation.
              >
              > In test case 2, I declare the stateless session bean methods as required
              > using container-managed transaction demarcation. The entity bean is created
              > but the findByPrimaryKey fails and throws a FinderException. When I look
              > into the database I can see the entity bean has been created. Why does the
              > findByPrimaryKey fail?
              Steven,
              You should post TopLink-related questions to their newsgroups at
              news://news.objectpeople.com
              When you use TopLink for WebLogic, you're no longer using WebLogic CMP
              engine so folks here
              wouldn't know much about it.
              Cheers,
              Alexander Petrushko
              mailto:[email protected]
              Consulting Services available
              

Maybe you are looking for

  • Nokia 928. Latest win 8.1 software. Can not get MMS / picture / group messages

    MMS on my Nokia 928 use to work. After an upgrade is doesn't work (? - could be a coincidence it happened after an upgrade?). I get the message "Get media content now."  Tapping on the link doesn't do anything.  Doesn't matter whether I'm using wi-fi

  • Temporary Tablespace is Empty-Error Exporting

    Hi, Could any one help me in fixing the error in the following text. It is throwing the error when i tried to exp a user from the database using the system privilege. ========================================================== EXP SYSTEM/SYSTEM@TEMP1

  • Installing one 2 GB ram memory....Can I?

    Hello everyone... I just bought a 2 GB DDR2 SODIMM 667 for my MacBook Pro and when I was reading the instructions about how to install more memory in the laptop I noticed that it says " The maximum amount of memory you can install in your MacBook Pro

  • HDMI Cable for Toshiba GigaShot 40

    Hi, I bought Gigashot Camescope, and a new TV with an HDMI port. The HDMI port of the Camescope Toshiba GigaShot 40 is thiner than cable for my TV. First: is it a real HDMI port? or an i-Link/Firewire port? Second: how can I use this Camescope HDMI P

  • Won't sleep with 2 monitors

    Hi My G4 GE will not sleep when I have dual monitors connected. I have the stock AGP Rage Card with a Sony CRT. And I have an additional PCI Rage card with an Apple Studio Display. When the second monitor is connected, the mac will not go to sleep. (