这之后我们同样需要改动web.XML文件来将web容器的框架告诉给orion,如下:
<EJB-REF>
<EJB-REF-NAME>ejb/AddressBook</EJB-REF-NAME>
<EJB-REF-TYPE>Entity</EJB-REF-TYPE>
<HOME>net.chinacode.addressbook.AddressBook</HOME>
<REMOTE>net.chinacode.addressbook.AddressEntry</REMOTE>
</EJB-REF>
<WELCOME-FILE-LIST>
<WELCOME-FILE>index.HTML</WELCOME-FILE>
</WELCOME-FILE-LIST>
我们把这段加入到web.XML中的web-app段中去。同时将原来我们做的servlet-mapping中的url-pattern指如/hello这样的url。第一段是向web容器告知一个可以使用的Entity Bean的框架,以便JSP能够得知EJB的结构。第二段则是设定默认的欢迎页面的文件名为index.HTML。这样服务器会先在目录下寻找这个文件来返回给客户。
还有最后一件事情,就是改动build.XML文件以方便ant来编译系统,如果你希望成为一名好的j2ee开发人员,我更建议你来改动这个文件,这里由于篇幅限制不列出全部,只列出需要改动的web段:
<TARGET name="web-classes" depends="prepare">
<JAVAC srcdir="${src.dir}"
destdir="${lib.dir}/web/WEB-INF/classes"
includes="java/net/chinacode/web/**"
classpath="${lib.dir}/ejb:${orion.dir}/ejb.jar:${orion.dir}/jndi.jar:${orion.dir}/orion.jar" />;
</TARGET>
<TARGET name="JSP" depends="prepare">
<COPYDIR
</TARGET>
<TARGET name="html" depends="prepare">
</TARGET>
<TARGET name="web-war" depends="JSP,HTML,web-classes,web-web-inf">
<JAR
</TARGET>
更为详细的可以见附录。这之后,我们可以试着在hdsite目录下运行ant了。运行完ant后我们再重新启动一次orion,可以看到它的提示如下:
Auto-unpacking C:\hdsite\rel\helloejb.ear... done.
Auto-unpacking C:\hdsite\rel\helloejb\helloejb-web.war... done.
Auto-deploying helloejb-ejb.jar (Class 'net.chinacode.hello.Hello' had been updated)...
Auto-creating table: create table net_chinacode_addressbook_AddressEntry (name VARCHAR(255) not null primary key, address VARCHAR(255) null, city VARCHAR(255) null)
done.
Orion/1.3.8 initialized
真是太神奇了,orion为我们所想建好了数据库(默认情况下它使用了内置的Hypersonic数据库)。如果是在同一台机器上,哪么你试试http://localhost/helloejb/ 就可以看到一个简单的地址本工具了。再试试http://localhost/helloejb/hello 哪么访问的就是从前的session bean的例子了。
我们完成了在orion下的两个EJB例程的开发,希望大家能以此为起点进行J2EE的大家庭。

BK网络学院主要内容:平面设计教程,网站开发在线教程,网页制作教程,服务器教程,网络编程,数据库教程等。