import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import WebFlow.*; import WebFlow.event.*; import WebFlow.xml.*; import org.omg.CORBA.*; import WebFlow.QS.*; import WebFlow.hashtable.*; import java.lang.reflect.*; import java.util.*; public class PSEaTask extends HttpServlet { private ORB orb; private WebFlowContext ws = null; PrintWriter out; protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { doPost(req, res); } protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { out = res.getWriter(); String Application = req.getParameter("appl"); String xmlIOR = req.getParameter("xmlIOR"); String target = req.getParameter("target"); String inputFile = req.getParameter("inputFile"); String userDir = req.getParameter("userDir"); String ProjectName = req.getParameter("Project"); String SessionName = req.getParameter("Session"); int idx = Application.indexOf("."); String ApplicationName = Application.substring(0,idx); String XmlInput = "/npac/home/webflow/WEBFLOW/JIGSAW/Jigsaw/WWW/"; XmlInput += "DESCRIPTORS/APPLICATION/"+Application; Date date = new Date(); String JobDirName = ApplicationName+"-"+target+"-"; JobDirName += date.getYear()+"-"+(date.getMonth()+1)+"-"+date.getDate()+"_"; JobDirName += date.getHours()+"."+date.getMinutes()+"."+date.getSeconds(); String JobDir = userDir+JobDirName; System.out.println(userDir); System.out.println(JobDirName); File jobDirFile = new File(JobDir); if(jobDirFile.mkdir()) { String[] args = new String[1]; args[0] = new String(""); System.out.println(xmlIOR); orb = ORB.init(args, new java.util.Properties()); org.omg.CORBA.Object obj = orb.string_to_object(xmlIOR); if(obj==null) System.out.println("obj is null"); XmlServer parser = XmlServerHelper.narrow(obj); if(parser==null) System.out.println("parser is null"); File f = new File(XmlInput); if(f.exists()) { System.out.println(XmlInput); if (parser.instantiateParser(XmlInput)) { String RSL=parser.getRSL(target); res.setContentType("text/html"); out.println(""); out.println(""); //JavaScript out.println(" "); out.println(""); out.println(""); out.println("
"); out.println("

Create Abstract Task Descriptor

"); out.println("

Project: "+ProjectName+" Session: "+SessionName+"

"); out.println(" This finalizes PSE!
"); out.println("
"); out.println("
"); out.println(""); out.println("
"); out.println("

"); out.println("

"); out.println("The following data will be used to generate ATD:

"); out.println("

"); out.println(""); out.println(""); out.println(""); out.println("Application name: "+ApplicationName+"
"); out.println("Target host: "+target+"
"); out.println("Input file: "+inputFile+"
"); out.println("

"); out.println(""); out.println("

"); out.println(""); out.println(""); } else { out.println(""); out.println(""); out.println("
"); out.println("

OOps, there are errors in XML file

"); out.println(""); out.println(""); } } else { out.println(""); out.println(""); out.println("
"); out.println("

OOps, file does not exist

"); out.println(XmlInput); out.println(""); out.println(""); } } else { // cannot make directory res.setContentType("text/html"); out.println(""); out.println(""); out.println("

Oops!

"); out.println("Cannot create directory:
"); out.println(jobDirFile); out.println(""); out.println(""); } out.flush(); out.close(); } /* private void save(String data) throws IOException { // StringOutputStream output = // new StringOutputStream(new FileOutputStream(filename)); FileOutputStream foutput = new FileOutputStream(filename); foutput.write(data.getBytes()); foutput.close(); } */ void error(String msg) { //out.println(msg); } void status(String msg) { //out.println(msg); } public String getServletInfo() { return "By T. Haupt"; } public void CopyFile(String outfilename,String infilename) { try{ File inputFile = new File(infilename); File outputFile = new File(outfilename); FileReader in1 = new FileReader(inputFile); FileWriter out1 = new FileWriter(outputFile); int c; while ((c = in1.read()) != -1){ out1.write(c); } in1.close(); out1.close(); } catch (IOException e){ System.err.println("copying the file: "+e); } } }