4.数据模型类:
会话BEAN中使用到了一个Person类,该类是一个数据模型,用于数据的封装。实现上和普通的 Javabean值对象没有什么区别,不过为了在网络间传递,值对象必须实现序列化接口java.io. Serializable接口,这是个空接口,仅作为标志类型,没有需要实现的方法,代码如下:
import java.io.Serializable;
/**
* @jboss-net.xml-schema urn = "person:Person"
*/
public class Person
implements Serializable
{
private String name;
public Person()
{
this.name = "unknow";
}
public Person( String name )
{
this.name = name;
}
public String toString()
{
StringBuffer sb = new StringBuffer();
sb.append("name=" + this.name + "\n");
return sb.toString();
}
/**
* @return 返回 name。
*/
public String getName()
{
return name;
}
/**
* @param name
* 要设置的 name。
*/
public void setName( String name )
{
this.name = name;
}
}
另外,在PersonManagerBean和Person类中都使用了xdoclet标志,这个是为了能通过jboss IDE插件来产生ant的build文件,然后自动生成EJB的配置文件和Web Service的配置文件。
四.使用ant产生EJB和Web Service的配置文件
利用ant我们可以很方便的自动生成EJB和Web Service的配置文件,省去了手工编写的麻烦。Ant的build.xml文件代码如下:
<?xml version="1.0" encoding="GB2312"?>
<project name="PersonManager" basedir="." default="xdoclet">
<property environment="evn" />
<property name="generated.dir" location="src" />
<path id="xdoclet.classpath">
<fileset dir="lib">
<include name="**/*.jar" />
</fileset>
<pathelement location="bin" />
</path>
<target name="xdoclet">
<taskdef classpathref="xdoclet.classpath" classname="xdoclet.modules.ejb.EjbDocletTask" name="ejbdoclet" />
<ejbdoclet ejbSpec="2.0" destDir="src">
<homeinterface />
<remoteinterface />
<jboss Version="3.2" destDir="build/PersonManagerService/META-INF" />
<deploymentdescriptor destDir="build/PersonManagerService/META-INF" />
<fileset dir="src" includes="com/ejb/sessionbean/*.java,com/pojo/*.java">
</fileset>
<jbossnet xmlencoding="UTF-8" destdir="build/PersonManagerService/META-INF" webDeploymentName="PersonManagerService" targetNameSpace="http://localhost:8080/pojo/person" prefix="person" />
</ejbdoclet>
</target>
</project>
