2015-07-02 3 views
0

Как новичок в Tomee 2.0, я пытался исследовать, как создать источник данных, в который можно вставить ejb в виде @persistencecontext. Иногда сложно определить, какие решения устарели и больше не работают; но я нашел предложения, используя server.xml (определенно устаревший, за исключением, может быть, с globalNamingResources) context.xml, tomee.xml, resources.xml, openejb.xml. У кого-нибудь есть пример определения источника данных, который затем будет автоматически просматриваться с использованием файла данных persistence.xml jta-data. Если это имеет значение, я буду использовать управляемые контейнером контейнеры с использованием JPA и SQL-сервера XAdatasource. Спасибо за любую помощь, которую вы можете предоставить.Предпочтительный метод для создания источника данных JPA в Tomee

ответ

1

Возможно, вам стоит взглянуть на официальный сайт Tomee, который дает вам примеры кода, которые работают из коробки. Например, вы можете придать экземпляр EntityManager через @PersistenceContext так:

Injection of an EntityManager

Если вы хотите использовать DataSource непосредственно вы должны взглянуть на этот пример:

Injection of a DataSource

/** 
* The field name "movieDatabase" matches the DataSource we 
* configure in the TestCase via : 
* p.put("movieDatabase", "new://Resource?type=DataSource"); 
* <p/> 
* This would also match an equivalent delcaration in an openejb.xml: 
* <Resource id="movieDatabase" type="DataSource"/> 
* <p/> 
* If you'd like the freedom to change the field name without 
* impact on your configuration you can set the "name" attribute 
* of the @Resource annotation to "movieDatabase" instead. 
*/ 
@Resource 
private DataSource movieDatabase; 

В этом примере - как лет u может видеть выше - openejb.xml.

Надеюсь, что это поможет обнаружить недостающие детали. (комментарии приветствуются)