createxml.jsp
<%@page contenttype="text/html;charset=gb2312"%>
<%@page import="java.io.*"%>
<%
try
{
string ejb_type=request.getparameter("ejb_type");
string ejb_name=request.getparameter("ejb_name");
string server_type=request.getparameter("server_type");
string prim_key_class=request.getparameter("prim_key_class");
string transaction_type=request.getparameter("transaction_type");
string trans_attribute=request.getparameter("trans_attribute");
string package_name=request.getparameter("package_name");
file myfile=new file(ejb_name+"//ejb-jar.xml");
myfile.createnewfile();
printwriter pw_jar_xml=new printwriter(new filewriter(myfile));
pw_jar_xml.println("<?xml version=\"1.0\"?>");
pw_jar_xml.println("<!doctype ejb-jar public -//sun microsystems, inc.//dtd enterprise javabeans 1.1//en http://java.sun.com/j2ee/dtds/ejb-jar_1_1.dtd>");
pw_jar_xml.println("<ejb-jar>");
pw_jar_xml.println(" <enterprise-beans>");
if(!ejb_type.equals("entity"))
{
pw_jar_xml.println(" <session>");
pw_jar_xml.println(" <ejb-name>"+ejb_name+"</ejb-name>");
if(package_name.equals(""))
{
pw_jar_xml.println(" <home>"+ejb_name+"home</home>");
pw_jar_xml.println(" <remote>"+ejb_name+"remote</remote>");
pw_jar_xml.println(" <ejb-class>"+ejb_name+"ejb</ejb-class>");
}
else
{
pw_jar_xml.println(" <home>"+package_name+"."+ejb_name+"home</home>");
pw_jar_xml.println(" <remote>"+package_name+"."+ejb_name+"remote</remote>");
pw_jar_xml.println(" <ejb-class>"+package_name+"."+ejb_name+"ejb</ejb-class>");
}
pw_jar_xml.println(" <session-type>"+ejb_type+"</session-type>");
pw_jar_xml.println(" <transaction-type>"+transaction_type+"</transaction-type>");
pw_jar_xml.println(" </session>");
}
else
{
pw_jar_xml.println(" <entity>");
pw_jar_xml.println(" <ejb-name>"+ejb_name+"</ejb-name>");
if(package_name.equals(""))
{
pw_jar_xml.println(" <home>"+ejb_name+"home</home>");
pw_jar_xml.println(" <remote>"+ejb_name+"remote</remote>");
pw_jar_xml.println(" <ejb-class>"+ejb_name+"ejb</ejb-class>");
}
else
{
pw_jar_xml.println(" <home>"+package_name+"."+ejb_name+"home</home>");
pw_jar_xml.println(" <remote>"+package_name+"."+ejb_name+"remote</remote>");
pw_jar_xml.println(" <ejb-class>"+package_name+"."+ejb_name+"ejb</ejb-class>");
}
string persistence_type=request.getparameter("persistence_type");
string reentrant=request.getparameter("reentrant");
string primkey_field=request.getparameter("primkey_field");
pw_jar_xml.println(" <persistence-type>"+persistence_type+"</persistence-type>");
pw_jar_xml.println(" <prim-key-class>java.lang."+prim_key_class+"</prim-key-class>");
pw_jar_xml.println(" <reentrant>"+reentrant+"</reentrant>");
pw_jar_xml.println(" <primkey-field>"+primkey_field+"</primkey-field>");
pw_jar_xml.println(" </entity>");
}
pw_jar_xml.println(" </enterprise-beans>");
pw_jar_xml.println(" <assembly-descriptor>");
pw_jar_xml.println(" <container-transaction>");
pw_jar_xml.println(" <method>");
pw_jar_xml.println(" <ejb-name>"+ejb_name+"</ejb-name>");
pw_jar_xml.println(" <method-intf>remote</method-intf>");
pw_jar_xml.println(" <method-name>*</method-name>");
pw_jar_xml.println(" </method>");
pw_jar_xml.println(" <trans-attribute>"+trans_attribute+"</trans-attribute>");
pw_jar_xml.println(" </container-transaction>");
pw_jar_xml.println(" </assembly-descriptor>");
pw_jar_xml.println("</ejb-jar>");
pw_jar_xml.close();
if(server_type.equals("weblogic"))
{
myfile=new file(ejb_name+"//weblogic-ejb-jar.xml");
myfile.createnewfile();
printwriter pw_weblogic_xml=new printwriter(new filewriter(myfile));
pw_weblogic_xml.println("<?xml version=\"1.0\"?>");
pw_weblogic_xml.println("<!doctype weblogic-ejb-jar public -//bea systems, inc.//dtd weblogic 5.1.0 ejb//en http://www.bea.com/servers/wls510/dtd/weblogic-ejb-jar.dtd>");
pw_weblogic_xml.println("<weblogic-ejb-jar>");
pw_weblogic_xml.println(" <weblogic-enterprise-bean>");
pw_weblogic_xml.println(" <ejb-name>"+ejb_name+"</ejb-name>");
pw_weblogic_xml.println(" <caching-descriptor>");
string max=request.getparameter("max");
string jndi_name=request.getparameter("jndi_name");
if(!ejb_type.equals("entity"))
{
pw_weblogic_xml.println(" <max-beans-in-cache>"+max+"</max-beans-in-cache>");
}
else
{
pw_weblogic_xml.println(" <max-beans-in-free-pool>"+max+"</max-beans-in-free-pool>");
}
pw_weblogic_xml.println(" </caching-descriptor>");
pw_weblogic_xml.println(" <jndi-name>"+jndi_name+"</jndi-name>");
pw_weblogic_xml.println(" </weblogic-enterprise-bean>");
pw_weblogic_xml.println("</weblogic-ejb-jar>");
pw_weblogic_xml.close();
}
myfile=new file(ejb_name+"//build.bat");
myfile.createnewfile();
printwriter pw_build=new printwriter(new filewriter(myfile));
pw_build.println("mkdir build build\\meta-inf");
pw_build.println("copy *.xml build\\meta-inf");
pw_build.println();
pw_build.println("javac -d build *.java");
pw_build.println();
pw_build.println("cd build");
if(package_name.equals(""))
pw_build.println("jar cv0f "+ejb_name+"ejb.jar meta-inf .");
else
{
int location=package_name.indexof(".");
if (location==-1)
pw_build.println("jar cv0f "+ejb_name+"ejb.jar meta-inf "+package_name);
else
pw_build.println("jar cv0f "+ejb_name+"ejb.jar meta-inf "+package_name.substring(0,location));
}
pw_build.println("cd ..");
pw_build.println();
pw_build.println("java weblogic.ejbc -compiler javac build\\"+ejb_name+"ejb.jar build\\"+ejb_name+".jar");
pw_build.close();
%>
<html>
<body>
<script language="javascript">
</script>
<center>
<font size="6" color="red">您要完成的ejb框架已经搭建完毕,所有文件在目录<%=ejb_name+"\\"%>下,填充并修改部分.java文件使其符合您使用的规格,双击build.bat完成ejb的创建<font>
</center>
</body>
</html>
<%
}
catch(exception e)
{
out.print(e.getmessage());
}%>
