繁体   English   中英

JBoss Developer Studio与MySQL的集成问题

[英]JBoss Developer Studio integration problem with MySQL

我之前从事过.NET Web技术。 现在,我开始使用JBoss Developer Studio 4 GA。 我需要创建一个接缝应用程序。 我已经下载了接缝,在创建应用程序期间,我被MySQL JDBC Driver连接所困扰。

我已经安装了MySQL 5.5,并且JBoss Dev 4提供了MySQL模板,最高可达5.1。 可以通过网络找到特定模板,并且无法手动修改现有模板:Ping失败。 这个问题可能很简单,但请帮我解释一下。

问候,

杰耶什

我假设这个问题与使用开发工作室以及为MySQL进行设置一样重要。

这是我们所做的。 原谅任何不正确的术语。 我已经开始工作了,但是还没有完全理解所有内容。

确保在您的buildpatch中安装JBDC驱动程序。 我们将我们的服务器安装在默认的服务器lib目录中。

您还需要在deploy目录中有一个数据源文件。 接缝生成器将创建一个,其外观类似于project-ds.xml。 默认情况下,它将显示在您的Ear项目中的resources文件夹中。

默认情况下并不总是部署它。 确保它在服务器的deploy文件夹中。 如果您不知道如何在JBDS中部署它,只需手动将其复制到那里即可。

您可能会发现在安装该文件夹时拖尾server.log文件很有用。 您将看到数据源绑定到jndi名称。

这是一个示例数据源(在ds.xml中)

    <datasources>
      <local-tx-datasource>
      <jndi-name>contactsDatasource</jndi-name>
      <use-java-context>true</use-java-context>
      <connection-url>jdbc:mysql://nmstdb-test.ba.ssa.gov:3306/contacts</connection-url>
      <driver-class>com.mysql.jdbc.Driver</driver-class>
      <user-name>xxxxxx</user-name>
      <password>xxxxxxx</password>
    </local-tx-datasource>

ejb项目将有一个ejbModule / META-INF文件夹,其中包含一个persistence.xml文件。 确保在project-ds.xml中定义的jndi名称与persistence.xml中定义的jta-data-source匹配。

确保将hibernate.show_sql(在persistence.xml中)设置为true,以便您可以在日志中看到查询输出。

这是一个persistence.xml文件示例

    <persistence-unit name="contacts">
      <provider>org.hibernate.ejb.HibernatePersistence</provider>
      <jta-data-source>java:/contactsDatasource</jta-data-source>
      <properties>
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"/>
        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.format_sql" value="true"/>
        <property name="hibernate.default_catalog" value="contacts"/>
        <property name="hibernate.default_schema" value="contacts"/>
        <property name="jboss.entity.manager.factory.jndi.name" value="java:/contactsEntityManagerFactory"/>
      </properties>
    </persistence-unit>

确保使用正确的方言。 如果您没有使用InnoDB引擎,请用谷歌搜索正确的方言。

确保在persistence.xml中定义的jboss.entity.manager.factory.jndi.name的值与WebContent / WEB-INF / components.xml中定义的persistence-unit-jndi-name匹配。

       <persistence:managed-persistence-context name="entityManager" auto-create="true"
                  persistence-unit-jndi-name="java:/contactsEntityManagerFactory"/>

不要忘记检查“问题”视图,以帮助您发现/修复任何编译/语法类型问题。

这些或多或少是您要实现这一目标需要查看的东西。

您需要下载用于MySQL的Java JDBC驱动程序-您可以在此处获得一个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM