Hey Ujwal!
Thanks. But my
ejb jar file is deployed right on the JBoss server. This is because, i could see the message in the JBoss server window.
Also, the following libraries were required in classpath, as mentioned in the book. "Apress Beginning JavaEE.5 from Novice to Professional".
I'm supplying the jndi properties via command line.
But still i'm getting the same error.
Exception in thread "main" javax.naming.NameNotFoundException: beans.SimpleSession not bound
The funny thing is that, when i use a
Ant build script and put all the libraries in the classpath, i'm able to run the example.(i mean the client.)
This is the
Ant build script.
<?xml version="1.0"?>
<!-- ======================================================================= -->
<!-- JBoss build file -->
<!-- ======================================================================= -->
<project name="JBoss" default="ejbjar" basedir=".">
<property environment="env"/>
<property name="src.dir" value="${basedir}/src"/>
<property name="jboss.home" value="${env.JBOSS_HOME}"/>
<property name="build.dir" value="${basedir}/build"/>
<property name="build.classes.dir" value="${build.dir}/classes"/>
<!-- Build classpath -->
<path id="classpath">
<fileset dir="${jboss.home}/server/default/lib">
<include name="*.jar"/>
</fileset>
<fileset dir="${jboss.home}/server/default/deploy/ejb3.deployer">
<include name="*.jar"/>
</fileset>
<fileset dir="${jboss.home}/server/default/deploy/jboss-aop-jdk50.deployer">
<include name="*.jar"/>
</fileset>
<fileset dir="${jboss.home}/lib">
<include name="*.jar"/>
</fileset>
<pathelement location="${build.classes.dir}"/>
<!-- So that we can get jndi.properties for InitialContext and log4j.xml file -->
<pathelement location="${basedir}/client-config"/>
</path>
<property name="build.classpath" refid="classpath"/>
<!-- =================================================================== -->
<!-- Prepares the build directory -->
<!-- =================================================================== -->
<target name="prepare" >
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.classes.dir}"/>
</target>
<!-- =================================================================== -->
<!-- Compiles the source code -->
<!-- =================================================================== -->
<target name="compile" depends="prepare">
<javac srcdir="${src.dir}"
destdir="${build.classes.dir}"
debug="on"
deprecation="on"
optimize="off"
includes="**">
<classpath refid="classpath"/>
</javac>
</target>
<target name="ejbjar" depends="compile">
<jar jarfile="build/simple.jar">
<fileset dir="${build.classes.dir}">
<include name="beans/*.class"/>
</fileset>
</jar>
<copy file="build/simple.jar" todir="${jboss.home}/server/default/deploy"/>
</target>
<target name="run.client" depends="ejbjar">
<java classname="client.SimpleSessionClient" fork="yes" dir=".">
<arg value ="i am a thief"/>
<arg value ="i am a fool"/>
<arg value ="i am a human"/>
<classpath refid="classpath"/>
</java>
</target>
<!-- =================================================================== -->
<!-- Cleans up generated stuff -->
<!-- =================================================================== -->
<target name="clean.db">
<delete dir="${jboss.home}/server/default/data/hypersonic"/>
</target>
<target name="clean">
<delete dir="${build.dir}"/>
<delete file="${jboss.home}/server/default/deploy/simple.jar"/>
</target>
</project>
Can anybody tell me what
error i'm making when i'm running the client manually?