Well, I found a solution:
String path = "C:\\Program Files\\tomcat6";
Embedded embedded = new Embedded();
embedded.setCatalinaBase(path);
embedded.setCatalinaHome("C:\\Program
Files\\tomcat6");
Engine engine = embedded.createEngine();
engine.setDefaultHost("localhost");
engine.setName("myCatalina");
Host host = embedded.createHost("localhost",
"webapps");
engine.addChild(host);
// Root context.
Context context = embedded.createContext("", path +
"\\webapps\\ROOT");
host.addChild(context);
// mywebapp context.
context = embedded.createContext("/mywebapp", path +
"\\webapps\\mywebapp");
host.addChild(context);
embedded.addEngine(engine);
Connector connector = new Connector();
embedded.start();
StandardWrapper jsp = (StandardWrapper)
context.findChild("jsp");
JspServlet serv = (JspServlet) jsp.getServlet();
Request request = new Request();
Response response = new Response();
org.apache.coyote.Request coyoteRequest = new
org.apache.coyote.Request();
request.setContextPath("/mywebapp");
request.setServletPath("/try1.jsp");
request.setCoyoteRequest(coyoteRequest);
request.setContext(context);
request.setConnector(connector);
request.setResponse(response);
response.setConnector(connector);
response.createOutputStream();
org.apache.coyote.Response coyoteResponse = new
org.apache.coyote.Response();
InternalOutputBuffer iob = new
InternalOutputBuffer(coyoteResponse);
ByteArrayOutputStream result = new
ByteArrayOutputStream();
iob.setOutputStream(result);
coyoteResponse.setOutputBuffer(iob);
response.setRequest(request);
response.setCoyoteResponse(coyoteResponse);
serv.service(request, response);
response.finishResponse();
if (response.isError())
{
throw new Exception("Status:
"+response.getStatus() + ", message: " + response.getMessage());
}
System.out.println(result.toString());
embedded.stop();
The question now is, can I give the JspServlet a foreign jsp file (a path
outside of the context) to run?
Thanks,
Yair
---------------------------------------------------------------------
To start a new topic, e-mail: [email protected]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]