你的jndi有问题,如果你用的是weblogic平台,进入你的控制台看看你的jndi
树中有没有User,如果没有,则修改你的ejb-jar.xml文件,并重新部署。

解决方案 »

  1.   

    楼上说的对,你的jndi名称与你程序中的不一样啊。
      

  2.   

    明显是jnid有问题,
    请问你部署的ejb的文件结构
    有没有一个
    weblogic-ejb-jar.xml这个文件的
    里面又有没有
    <jndi-name>User</jndi-name>
    这么一行?
      

  3.   

    我用的是ESite的例子
    有这么一行?
    <jndi-name>User</jndi-name>
    weblogic-ejb-jar.xml
    ///-----------------
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN' 'http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd'>
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>Cart</ejb-name>
    <reference-descriptor>
    <ejb-reference-description>
    <ejb-ref-name>ejb/ServerDataModule</ejb-ref-name>
    <jndi-name>ServerDataModule</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/User</ejb-ref-name>
    <jndi-name>User</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/ShoppingCart</ejb-ref-name>
    <jndi-name>ShoppingCart</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/Order</ejb-ref-name>
    <jndi-name>Order</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/Orderitem</ejb-ref-name>
    <jndi-name>Orderitem</jndi-name>
    </ejb-reference-description>
    </reference-descriptor>
    <jndi-name>Cart</jndi-name>
    </weblogic-enterprise-bean>
    <weblogic-enterprise-bean>
    <ejb-name>ServerDataModule</ejb-name>
    <reference-descriptor>
    <resource-description>
    <res-ref-name>jdbc/DataSource</res-ref-name>
    <jndi-name>DataSource</jndi-name>
    </resource-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/Inventory</ejb-ref-name>
    <jndi-name>Inventory</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/ShoppingCart</ejb-ref-name>
    <jndi-name>ShoppingCart</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/User</ejb-ref-name>
    <jndi-name>User</jndi-name>
    </ejb-reference-description>
    <ejb-reference-description>
    <ejb-ref-name>ejb/Order</ejb-ref-name>
    <jndi-name>Order</jndi-name>
    </ejb-reference-description>
    </reference-descriptor>
    <jndi-name>ServerDataModule</jndi-name>
    </weblogic-enterprise-bean>
    <weblogic-enterprise-bean>
    <ejb-name>User</ejb-name>
    <entity-descriptor>
                <persistence>
                    <persistence-type>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                        <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
                    </persistence-type>
                    <persistence-use>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                    </persistence-use>
                </persistence>
            </entity-descriptor>
            <reference-descriptor>
                <resource-description>
                    <res-ref-name>jdbc/DataSource</res-ref-name>
                    <jndi-name>DataSource</jndi-name>
                </resource-description>
            </reference-descriptor>
            <jndi-name>User</jndi-name>
        </weblogic-enterprise-bean>
        <weblogic-enterprise-bean>
            <ejb-name>Inventory</ejb-name>
            <entity-descriptor>
                <persistence>
                    <persistence-type>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                        <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
                    </persistence-type>
                    <persistence-use>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                    </persistence-use>
                </persistence>
            </entity-descriptor>
            <reference-descriptor>
                <resource-description>
                    <res-ref-name>jdbc/DataSource</res-ref-name>
                    <jndi-name>DataSource</jndi-name>
                </resource-description>
            </reference-descriptor>
            <jndi-name>Inventory</jndi-name>
        </weblogic-enterprise-bean>
        <weblogic-enterprise-bean>
            <ejb-name>ShoppingCart</ejb-name>
            <entity-descriptor>
                <persistence>
                    <persistence-type>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                        <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
                    </persistence-type>
                    <persistence-use>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                    </persistence-use>
                </persistence>
            </entity-descriptor>
            <reference-descriptor>
                <resource-description>
                    <res-ref-name>jdbc/DataSource</res-ref-name>
                    <jndi-name>DataSource</jndi-name>
                </resource-description>
                <ejb-reference-description>
                    <ejb-ref-name>ejb/Inventory</ejb-ref-name>
                    <jndi-name>Inventory</jndi-name>
                </ejb-reference-description>
            </reference-descriptor>
            <jndi-name>ShoppingCart</jndi-name>
        </weblogic-enterprise-bean>
        <weblogic-enterprise-bean>
            <ejb-name>Order</ejb-name>
            <entity-descriptor>
                <persistence>
                    <persistence-type>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                        <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
                    </persistence-type>
                    <persistence-use>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                    </persistence-use>
                </persistence>
            </entity-descriptor>
            <reference-descriptor>
                <resource-description>
                    <res-ref-name>jdbc/DataSource</res-ref-name>
                    <jndi-name>DataSource</jndi-name>
                </resource-description>
                <ejb-reference-description>
                    <ejb-ref-name>ejb/Orderitem</ejb-ref-name>
                    <jndi-name>Orderitem</jndi-name>
                </ejb-reference-description>
            </reference-descriptor>
            <jndi-name>Order</jndi-name>
        </weblogic-enterprise-bean>
        <weblogic-enterprise-bean>
            <ejb-name>Orderitem</ejb-name>
            <entity-descriptor>
                <persistence>
                    <persistence-type>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                        <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
                    </persistence-type>
                    <persistence-use>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>5.1.0</type-version>
                    </persistence-use>
                </persistence>
            </entity-descriptor>
            <reference-descriptor>
                <resource-description>
                    <res-ref-name>jdbc/DataSource</res-ref-name>
                    <jndi-name>DataSource</jndi-name>
                </resource-description>
                <ejb-reference-description>
                    <ejb-ref-name>ejb/Order</ejb-ref-name>
                    <jndi-name>Order</jndi-name>
                </ejb-reference-description>
            </reference-descriptor>
            <jndi-name>Orderitem</jndi-name>
        </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
      

  4.   


    try {
    Object object = context.lookup("User");
    }
    catch (Exception e)
    {
    e.printStackTrace()
    }