
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.thread.ThreadSafe;
import org.apache.avalon.framework.logger.*;
import org.apache.cocoon.Constants;
import org.apache.cocoon.ProcessingException;
import org.apache.cocoon.environment.Redirector;
import org.apache.cocoon.environment.Request;
import org.apache.cocoon.environment.SourceResolver;
import org.w3c.dom.*;
import org.xml.sax.InputSource;
import org.xml.sax.Parser;
import org.xml.sax.helpers.ParserFactory;
import java.util.*;
import java.io.*;
import org.apache.cocoon.acting.*;
import org.w3c.dom.*;
import org.apache.xerces.parsers.DOMParser;



public class SumAction extends AbstractComplementaryConfigurableAction {
	Request request;
  public Map act (Redirector redirector,
                  SourceResolver resolver,
                  Map objectModel,
                  String source,
                  Parameters param) {
    //getLogger().debug("@@@@@@@@@@IN SumAction@@@@@@@@@@@@@@");
    System.out.println("@@@@@@@@@@IN SumAction@@@@@@@@@@@@@@");
    Map sitemapParams = new HashMap();
    Document doc = null;
   /* boolean reloadable = Constants.DESCRIPTOR_RELOADABLE_DEFAULT;
		if (this.settings.containsKey("reloadable"))
	    reloadable = Boolean.getBoolean((String) this.settings.get("reloadable"));
*/
    try{

		//Configuration conf = this.getConfiguration(param.getParameter("descriptor", (String) this.settings.get("descriptor")),
		 // param.getParameterAsBoolean("reloadable",reloadable));

		request = (Request) objectModel.get(Constants.REQUEST_OBJECT);

		//File f = new File("F:/jakarta-tomcat-4.0.1/webapps/cocoon/docs/samples/forms/sum.xml");

	}catch (Exception e) {

		e.printStackTrace();
		//getLogger().debug("@@@@@@@@@@Exception@@@@@@@@@@@@@@"+e.getMessage());
		System.out.println("@@@@@@@@@@Exception@@@@@@@@@@@@@@"+e.getMessage());
	}

	String number1= request.getParameter("no1");

	System.out.println("@@@@@@@@@@no1@@@@@@@@@@@@@@"+number1);
	String number2 = request.getParameter("no2");
	//getLogger().debug("@@@@@@@@@@no2@@@@@@@@@@@@@@"+number2);
	System.out.println("@@@@@@@@@@no2@@@@@@@@@@@@@@"+number2);
	String sum=new Integer(Integer.parseInt(number1)+Integer.parseInt(number2)).toString();
	String[] elements={"no1", "no2","total"};
	String[] values={number1,number2,sum};
	String filename="F:/jakarta-tomcat-4.0.1/webapps/cocoon/docs/samples/forms/sum.xml";
	String rootelement="sum";
	SumAction2 sa = new SumAction2();
	String xmlString = sa.generateXML(filename,rootelement,elements,values);
				System.out.println(xmlString);
	/*try{
			File f = new File("F:/jakarta-tomcat-4.0.1/webapps/cocoon/docs/samples/forms/sum.xml");
			OutputStreamWriter os = new FileWriter(f);
			os.write(xmlString);
			os.flush();
			os.close();
	}catch(Exception ex){ex.printStackTrace();}*/
    sitemapParams.put("total", sum);
    sitemapParams.put("nextpage", "sum1");
    org.apache.cocoon.environment.Session session= request.getSession(true);
	session.setAttribute("total", sum);
    request.setAttribute("total", sum);

    return sitemapParams;

  }
}


