环境:MyEclipse9.0  JDK6  JBOSS5.1.0
---------------------------------------------------
现在我遇到奇怪的问题,MyEJB.jar里没有包含实体Bean可以布署到JBOSS,包了就不行了。是啥原因呀?
没有包含实体Bean的话,在JBOSS Global JNDI Namespace就能看到JNDI
 +- NsTab (class: org.jnp.interfaces.NamingContext)
  |   +- remote (class: Proxy for: Session.NsTabRemote)
  |   +- remote-Session.NsTabRemote (class: Proxy for: Session.NsTabRemote)
相反就没有,客户端就连接不起来。persistence.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
    
<persistence-unit name="MediInfoEHREJB" transaction-type="JTA">
   <jta-data-source>java:OracleDS</jta-data-source>
   <class>Entity.NsTabEntity</class>
    <properties>
   <property name="hibernate.hbm2ddl.auto" value="update"/>
     </properties>
</persistence-unit>
</persistence>

解决方案 »

  1.   

    <jta-data-source>java:OracleDS</jta-data-source>要改成
    <jta-data-source>java:/OracleDS</jta-data-source>
      

  2.   

    <jta-data-source>java:OracleDS</jta-data-source>应该改成
    <jta-data-source>java://OracleDS</jta-data-source>
    我没有碰到你说的问题,但是估计配置文件里那么写不太合适吧
      

  3.   

    在客户端调用时提示 NsTab not bound,我知道还未在Global JNDI Namespace中注册的原因。
    Entity Bean代码:
    package Entity;import java.io.Serializable;
    import javax.persistence.*;
    /**
     * The persistent class for the NS_TAB database table.
     * 
     */
    @Entity
    @Table(name="NS_TAB")
    public class NsTabEntity implements Serializable {
    private static final long serialVersionUID = 1L; @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private long userid; private String username;    public NsTabEntity() {
        } public long getUserid() {
    return this.userid;
    } public void setUserid(long userid) {
    this.userid = userid;
    } public String getUsername() {
    return this.username;
    } public void setUsername(String username) {
    this.username = username;
    }}