dear all,
i'm writing stateless bean program and error is occuring: code and error is as follows
import ordermgt.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import java.util.*;
public class client {
/** Creates a new instance of client */
public client() {
}
/**
* @param args the command line arguments
*/
public static void main(
String[] args) {
try
{
Properties prop=new Properties();
prop.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
prop.put(Context.PROVIDER_URL,"t3://localhost:7001");
Context ctx=new InitialContext(prop);
Object objref=ctx.lookup("ordermanagementLocal");
ordermanagementLocalHome home=(ordermanagementLocalHome)javax.rmi.PortableRemoteObject.narrow(objref,ordermanagementLocalHome.class);
ordermanagementLocal om=home.create();
om.placeorder("sudhir ","nut");
om.remove();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
package ordermgt;
import javax.ejb.EJBLocalObject;
/**
* This is the local interface for ordermanagement enterprise bean.
*/
public interface ordermanagementLocal extends EJBLocalObject, ordermanagementLocalBusiness {
void placeorder(String custname,String prodname) throws java.rmi.RemoteException;
}
package ordermgt;
import javax.ejb.*;
/**
* This is the bean class for the ordermanagementBean enterprise bean.
* Created Mar 10, 2008 3:54:01 PM
* @author Administrator
*/
public class ordermanagementBean implements SessionBean, ordermanagementLocalBusiness {
private SessionContext context;
// <editor-fold defaultstate="collapsed" desc="EJB infrastructure methods. Click the + sign on the left to edit the code.">
// TODO Add code to acquire and use other enterprise resources (DataSource, JMS, enterprise bean, Web services)
// TODO Add business methods or web service operations
/**
* @see javax.ejb.SessionBean#setSessionContext(javax.ejb.SessionContext)
*/
public void setSessionContext(SessionContext aContext) {
context = aContext;
}
/**
* @see javax.ejb.SessionBean#ejbActivate()
*/
public void ejbActivate() {
}
/**
* @see javax.ejb.SessionBean#ejbPassivate()
*/
public void ejbPassivate() {
}
/**
* @see javax.ejb.SessionBean#ejbRemove()
*/
public void ejbRemove() {
}
// </editor-fold>
public void placeorder(String custname, String prodname)
{
System.out.println("order get from custname"+custname+" for product "+prodname);
}
/**
* See section 7.10.3 of the
EJB 2.0 specification
* See section 7.11.3 of the EJB 2.1 specification
*/
public void ejbCreate() {
// TODO implement ejbCreate if necessary, acquire resources
// This method has access to the JNDI context so resource aquisition
// spanning all methods can be performed here such as home interfaces
// and data sources.
}
// Add business logic below. (Right-click in editor and choose
// "EJB Methods > Add Business Method" or "Web Service > Add Operation")
}
package ordermgt;
/**
* This is the business interface for ordermanagement enterprise bean.
*/
public interface ordermanagementLocalBusiness {
}
package ordermgt;
import javax.ejb.CreateException;
import javax.ejb.EJBLocalHome;
/**
* This is the local-home interface for ordermanagement enterprise bean.
*/
public interface ordermanagementLocalHome extends EJBLocalHome {
ordermanagementLocal create() throws CreateException;
}
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="2.1" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"> <display-name>ordermgt</display-name>
<enterprise-beans>
<session>
<display-name>ordermanagementSB</display-name>
<ejb-name>ordermanagementBean</ejb-name>
<local-home>ordermgt.ordermanagementLocalHome</local-home>
<local>ordermgt.ordermanagementLocal</local>
<ejb-class>ordermgt.ordermanagementBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>ordermanagementBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
init:
deps-jar:
Compiling 1 source file to C:\Users\SAM\Documents\NetBeansProjects\ordermanagement\build\jar
compile-single:
run-main:
javax.naming.NameNotFoundException: Unable to resolve 'ordermanagementLocal'. Resolved '' [Root exception is javax.naming.NameNotFoundException: Unable to resolve 'ordermanagementLocal'. Resolved '']; remaining name 'ordermanagementLocal'
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:191)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:315)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:250)
at weblogic.jndi.internal.ServerNamingNode_910_WLStub.lookup(Unknown Source)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:362)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at client.main(client.java:21)
Caused by: javax.naming.NameNotFoundException: Unable to resolve 'ordermanagementLocal'. Resolved ''
at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:1123)
at weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:250)
at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:171)
at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:204)
at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:517)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:224)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:407)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:403)
at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:56)
at weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.java:934)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
BUILD SUCCESSFUL (total time: 42 seconds)