EJB 打EAR包

apache-ant-1.6.5
jboss-4.2.1.GA
jboss-annotations-ejb3.jar
jboss-ejb3.jar
jboss-ejb3x.jar
最后三个包在jboss里有.

publicinterface HelloWorld {
public String sayHello(String name);
}

@Stateless
@Remote (
{HelloWorld.class})
publicclass HelloWorldBean implements HelloWorld {
public String sayHello(String name) {
//org.apache.commons.collections,这里假设用到了其它包中的类
CollectionUtils c=new CollectionUtils();
//org.apache.commons.lang
StringUtils s=new StringUtils();
return"hello,i am "+name;
}

}

 

<%
//org.apache.commons.collections,这里假设用到了其它包中的类
CollectionUtils c
=new CollectionUtils();
//org.apache.commons.lang
StringUtils s
=new StringUtils();
%>
<%
Properties props
=new Properties();
props.setProperty(
"java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
props.setProperty(
"java.naming.provider.url", "localhost:1099");
props.setProperty(
"java.naming.factory.url.pkgs", "org.jboss.naming");

InitialContext ctx;
try {
ctx
=new InitialContext(props);
HelloWorld helloworld
= (HelloWorld) ctx.lookup("myproject/HelloWorldBean/remote");
out.println(helloworld.sayHello(
"mashiguang"));
} catch (NamingException e) {
out.println(e.getMessage());
}
%>
<project name="ear" default="deploy" basedir=".">

<property environment="env"/>
<property name="app.dir" value="${basedir}"/>
<property name="src.dir" value="${app.dir}\src"/>
<property name="classes.dir" value="${app.dir}\build\classes"/>
<property name="webcontent.dir" value="${app.dir}\WebContent"/>
<property name="jboss.home" value="${env.JBOSS_HOME}"/>
<property name="jboss.server.config" value="default"/>

<path id="build.classpath" description="编译时classpath">
<fileset dir="${webcontent.dir}\WEB-INF\lib">
<include name="*.jar"/>
</fileset>
<pathelement location="${classes.dir}"/>
</path>

<target name="prepare" depends="clean" description="创建classes文件夹">
<mkdir dir="${classes.dir}"/>
</target>

<target name="compile" depends="prepare" description="编绎">
<javac srcdir="${src.dir}" destdir="${classes.dir}" debug="on" deprecation="on" optimize="off" includes="**">
<classpath refid="build.classpath"/>
</javac>
</target>

<target name="sessionInterface" depends="compile" description="创建session bean接口包">
<jar destfile="${app.dir}/interface.jar">
<fileset dir="${classes.dir}">
<include name="com/mashiguang/ejb3/*.class"/>
</fileset>
</jar>
</target>

<target name="ejb_jar" depends="sessionInterface" description="创建ejb jar包">
<jar destfile="${app.dir}/ejb.jar">
<fileset dir="${classes.dir}">
<include name="com/mashiguang/ejb3/impl/**"/>
</fileset>
<manifest>
<attribute name="Class-Path" value="interface.jar commons-collections-3.2.jar commons-lang-2.3.jar"/>
</manifest>
</jar>
</target>

<target name="web-war" depends="ejb_jar" description="创建WEB发布包">
<war destfile="${app.dir}/web.war" webxml="${webcontent.dir}/WEB-INF/web.xml">
<fileset dir="${webcontent.dir}">
<include name="*.jsp"/>
<exclude name="WEB-INF/web.xml"/>
<exclude name="WEB-INF/lib/**"/>
</fileset>
<manifest>
<attribute name="Class-Path" value="interface.jar commons-collections-3.2.jar commons-lang-2.3.jar"/>
</manifest>
</war>
</target>

<target name="ear" depends="web-war" description="创建WEB发布包">
<ear destfile="${app.dir}/myproject.ear" appxml="${src.dir}/META-INF/application.xml">
<fileset dir="${app.dir}">
<include name="ejb.jar"/>
<include name="web.war"/>
<include name="interface.jar"/>
</fileset>
<fileset dir="${webcontent.dir}/WEB-INF/lib">
<include name="commons*.jar"/>
</fileset>
</ear>
</target>

<target name="deploy" depends="ear">
<copy file="${app.dir}/myproject.ear" todir="${jboss.home}/server/${jboss.server.config}/deploy"/>
</target>

<target name="clean">
<delete>
<fileset dir="${app.dir}">
<include name="ejb.jar"/>
<include name="web.war"/>
<include name="interface.jar"/>
</fileset>
</delete>
<delete dir="${classes.dir}"/>
<!---->
<delete file="${jboss.home}/server/${jboss.server.config}/deploy/myproject.ear"/>

</target>

</project>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值