Сделать уверен , что вы следовали Шаг 1 и Шаг 2 из http://docs.codehaus.org/display/JETTY/Atomikos (при условии, что вы используете Atomikos 3.3 и далее).
Затем, для Шаг 3 , обратите особое внимание на эту заметку:
поскольку NonXADataSourceBean
использует только имя класса и URL-адрес java.sql.Driver
, его можно использовать с любой базой данных, предоставляющей драйвер JDBC.
Итак, ваша текущая настройка содержит слишком много вещей, но, что более важно, имя класса драйвера выглядит неправильно, оно должно быть org.postgresql.Driver
.
Но драйвер PostgreSQL JDBC поддерживает XADatasource
(с реализацией org.postgresql.xa.PGXADataSource
), поэтому я бы предпочел настроить AtomikosDataSourceBean
(первая опция Шаг 3 ). Примерно так:
<New id="mydatasource" class="org.mortbay.jetty.plus.naming.Resource">
<Arg><Ref id='wac'/></Arg>
<Arg>jdbc/mydatasource</Arg>
<Arg>
<New class="com.atomikos.jdbc.AtomikosDataSourceBean">
<Set name="minPoolSize">2</Set>
<Set name="maxPoolSize">20</Set>
<Set name="xaDataSourceClassName">org.postgresql.xa.PGXADataSource</Set>
<Set name="xaProperties">
<New class="java.util.Properties">
<Call name="setProperty"><Arg>databaseName</Arg><Arg>testdb</Arg></Call>
<Call name="setProperty"><Arg>serverName</Arg><Arg>localhost</Arg></Call>
<Call name="setProperty"><Arg>portNumber</Arg><Arg>5432</Arg></Call>
<Call name="setProperty"><Arg>user</Arg><Arg>test</Arg></Call>
<Call name="setProperty"><Arg>password</Arg><Arg>p4ssw0rd</Arg>/Call>
</New>
</Set>
<Set name="UniqueResourceName">mydatasource</Set>
</New>
</Arg>
</New>