[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[eclipselink-users] eclipselink.target-server value for SAP Netweaver
|
Title: [eclipselink-users] eclipselink.target-server value for SAP Netweaver
Hi,
this is in reply to the thread "eclipselink.target-server value for SAP Netweaver".
At the time beeing, there is no built-in ServerPlatform for SAP Netweaver. Nevertheless, you can use EclipseLink with NetWeaver. In order to do so, you have to provide a JTATransaction controler class to EclipseLink:
package org.eclipse.persistence.transaction.sap;
import javax.naming.InitialContext;
import javax.transaction.TransactionManager;
import org.eclipse.persistence.transaction.JTATransactionController;
public class SapTransactionController extends JTATransactionController {
public static final String JNDI_TRANSACTION_MANAGER_NAME = "TransactionManager";
@Override
protected TransactionManager acquireTransactionManager() throws Exception {
return (TransactionManager)jndiLookup(JNDI_TRANSACTION_MANAGER_NAME);
}
}
please compile this class against EclipseLink and pack it into the eclipselink.jar.
Then, you must specify this JTATransactionControler in the persistence-unit's properties section of the persistence.xml:
<properties>
<property name="eclipselink.target-server" value="org.eclipse.persistence.transaction.sap.SapTransactionController"/>
</properties>
I hope this gets you further.
(Also, you might address this issue here: http://forums.sdn.sap.com/forum.jspa?forumID=229&start=0)
Best regards,
Adrian Goerler
SAP AG
Pflichtangaben/Mandatory Disclosure Statements:
http://www.sap.com/company/legal/impressum.epx
> I'm deploying my application on SAP Netweaver CE 7.1 and looking at
> the docs I don't see a target server value for Netweaver:
> http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_(ELUG)#Using_EclipseLink_JPA_Extensions_for_Session.2C_Target_Database_and_Target_Application_Server
> Has anyone implemented a class which implements
> org.eclipse.persistence.platform.ServerPlatform which they are willing
> to share?
> The exception that I'm currently getting is as follows, it can't find
> the TransactionManager. Any ideas on how to get around this?
> Exception Description: Error looking up external Transaction resource
> under JNDI name [java:appserver/TransactionManager]
> Internal Exception:
> com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException:
> Path to object does not exist at java:appserver, the whole lookup name
> is java:appserver/TransactionManager.
> javax.persistence.PersistenceException: Exception [EclipseLink-23004]
> (Eclipse Persistence Services - 1.1.2.v20090612-r4475):
> org.eclipse.persistence.exceptions.TransactionException
> Exception Description: Error obtaining the Transaction Manager
> Internal Exception: Exception [EclipseLink-23001] (Eclipse Persistence
> Services - 1.1.2.v20090612-r4475):
> org.eclipse.persistence.exceptions.TransactionException
> Exception Description: Error looking up external Transaction resource
> under JNDI name [java:appserver/TransactionManager]
> Internal Exception:
> com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException:
> Path to object does not exist at java:appserver, the whole lookup name
> is java:appserver/TransactionManager.
> at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:272)
> at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:111)
> at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:163)
>
>
> Thanks,
> Zarar