我在WebLogic10的console里面创建了数据源也能够测试连接成功,当我把整个EJB工程部署到WebLogic上的后到sqlserver2000中却没有发现自动生成的表,而其他Session Bean都能够在console的jndi树中查看到,唯独就是那个实体的类没有了,后来我为了确认代码没有问题将配置稍作改动部署到相对熟悉一点的JBoss上就一切都正常,改回来以后放到WebLogic上还是不行。
以下是我的持久化单元的配置
<persistence-unit name="SOATestPU" transaction-type="JTA">
    <provider>kodo.persistence.PersistenceProviderImpl</provider>
          <class>com.wjx.soatest.model.Userinfo</class>
          <properties>
     <property name="kodo.jdbc.SynchronizeMappings"
    value="refresh" />
    <!--
     <property name="kodo.jdbc.SynchronizeMappings"
    value="buildSchema" />
     -->
     <property name="kodo.ConnectionDriverName"
    value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
     <property name="kodo.ConnectionURL"
    value="jdbc:sqlserver://localhost:1433;DatabaseName=SOATest"/>
     <property name="kodo.ConnectionUserName" value="sa"></property>
             <property name="kodo.ConnectionPassword" value="7"></property>
   <!--refresh   -->
       </properties>
</persistence-unit>
之前是这样的
<persistence-unit name="SOATestPU" transaction-type="JTA">
    <jta-data-source>mssql_soatest</jta-data-source>
    <properties>
        <property name="hibernate.hbm2ddl.auto" value="create-drop" />
    </properties>
</persistence-unit>
我在WebLogic里面配置的数据源jndi名字是mssql_soatest
但是试过两种都不行
以下是我的包结构
src
 +com.wjx.soatest
   +dao
     +impl
       UserinfoDAOImpl.java
     UserinfoDAO.java
   +model
     Userinfo.java
   +service
     +impl
       UserinfoServiceImpl.java
     UserinfoService.java
 +META-INF
   ejb-jar.xml
   persistence.xmlejb-jar.xml内容如下
<enterprise-beans>
      <session>
         <ejb-name>UserinfoServiceImpl</ejb-name>
         <ejb-ref>
            <ejb-ref-name>ejb/UserinfoDAOImpl</ejb-ref-name>
            <ejb-ref-type>Session</ejb-ref-type>
            <remote>com.wjx.soatest.dao.UserinfoDAO</remote>
            <ejb-link>UserinfoDAOImpl</ejb-link>
         </ejb-ref>
      </session>
</enterprise-beans>
这里是依赖注入,其他Session Bean都能够运作成功,包括此处
按照第一种配置会报如下异常
javax.ejb.EJBTransactionRolledbackException: EJB Exception: : <0|false|0.9.7> org.apache.openjpa.persistence.PersistenceException: There were errors initializing your configuration: <2|true|0.9.7> org.apache.openjpa.util.StoreException: com.microsoft.sqlserver.jdbc.SQLServerDriver
按照第二种持久化单元配置即直接指向数据源一直跟踪到底层的数据库操作就会报如下异常
javax.ejb.EJBException: nested exception is: <2|false|0.9.7> org.apache.openjpa.util.StoreException: Attempt to update the sequence table "OPENJPA_SEQUENCE_TABLE" failed.  The sequence table is typically created when you run the mappingtool's refresh action on any datastore identity class. If you have not run the mappingtool but want to create the sequence table, run:
java org.apache.openjpa.jdbc.kernel.TableJDBCSeq -action add
我用的IDE是MyEclipse6.0,数据库SQL Server2000,WebLogic10.0,J2EE5的EJB3
我估计是我的配置有问题,请各位高手帮忙看看,我初次接触WebLogic不是很熟悉,小的先在这里感谢您