2014-09-02 2 views
1

Мы запускаем файл в Eclipse и используем Wildfly в качестве веб-сервера. Мы сконфигурировали wildfly и создали новый источник данных mysql, который работает. Мы создали базу данных и новое соединение в Eclipse в базе данных и создали объекты, используя URL-адрес, предоставленный Wildfly. Так что все хорошо.Wildfly mysql вместо h2

Проблема, которую мы имеем сейчас, заключается в том, что при запуске приложения и попытке сохранить объект мы получаем сообщение об ошибке «Caused by: org.h2.jdbc.JdbcSQLException: Таблица« USER »не найдена, инструкция SQL .. . »

После того, как мы обнаружили, что мы должны изменить standalone.xml и сделали это.

  <datasource jta="false" jndi-name="java:jboss/fakebook" pool-name="mysql" enabled="true" use-ccm="false"> 
       <connection-url>jdbc:mysql://localhost:3306/fakebook</connection-url> 
       <driver-class>com.mysql.jdbc.Driver</driver-class> 
       <driver>mysql</driver> 
       <security> 
        <user-name>root</user-name> 
       </security> 
       <validation> 
        <validate-on-match>false</validate-on-match> 
        <background-validation>false</background-validation> 
       </validation> 
       <statement> 
        <share-prepared-statements>false</share-prepared-statements> 
       </statement> 
      </datasource> 
      <drivers> 
       <driver name="com.mysql" module="mysql.mysql-connector-java"> 
        <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class> 
       </driver> 
       <driver name="mysql" module="org.mysql"> 
        <driver-class>com.mysql.jdbc.Driver</driver-class> 
       </driver> 
      </drivers> 

Перезагрузил сервер, но получил ту же проблему с тем же самым исключением. Когда мы открыли автономному он изменился назад к значению по умолчанию:

    <driver name="h2" module="com.h2database.h2"> 
        <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> 
       </driver> 
       <driver name="mysql" module="org.mysql"> 
        <driver-class>com.mysql.jdbc.Driver</driver-class> 
       </driver> 

ответ

0

Я думаю, что вы не закрыть сервер до ваших изменений standalone.xml. Я прав? Wildfly переопределит standalone.xml, когда вы остановите сервер, поэтому вам нужно остановить сервер до изменения файла конфигурации! Если вы хотите отредактировать определения источника данных в экземпляре работающего сервера и протестировать его, вы также можете использовать интерфейс командной строки.

1

В дополнение к убедившись, что ваш standalone.xml не перезаписываются (как указывает «ши»), вы должны также добавить модуль MySQL к wildfly:

  1. Перейти к% WILDFLY_HOME% \ модули \ система \ слои \ базы \ ком
  2. Создать папку SQL \ MySQL \ главная \
  3. Место подключения MySql банка к основной папке
  4. Поместите следующий module.xml файл в основной папке (изменить имя соединителя в ресурс в соответствии с используемой вами версией):
<?xml version="1.0" encoding="UTF-8"?> 
<module xmlns="urn:jboss:module:1.1" name="com.sql.mysql"> 
    <resources> 
    <resource-root path="mysql-connector-java-5.0.4-bin.jar"/>    
    </resources> 
    <dependencies> 
    <module name="javax.api"/> 
    </dependencies> 
</module> 

Исходный материал используется: some blog

0

После подключения-URL попытайтесь поместить этот XML-тег:

<connection-property name="DatabaseName">"name_of_database"</connection-property> 

Может зимовать не может найти базу данных.

Смежные вопросы