public class ServletProcessor1 {
public void process(Request request, Response response) {
String uri = request.getUri();
String servletName = uri.substring(uri.lastIndexOf("/") + 1);
URLClassLoader loader = null;
try {
// create a URLClassLoader
URLStreamHandler streamHandler = null;
URL[] urls = new URL[1];
File classPath = new File(HttpServer1.WEB_ROOT);
String repository = (new URL("file", null,
classPath.getCanonicalPath() + File.separator)).toString() ;
urls[0] = new URL(null, repository, streamHandler);
loader = new URLClassLoader(urls);
System.out.println(loader.findResource(servletName));
}
catch (IOException e) {
System.out.println(e.toString() );
}
Class<?> myClass = null;
try {
myClass = loader.loadClass(servletName);
}
catch (ClassNotFoundException e) {
System.out.println(e.toString());
}
Servlet servlet = null;
try {
servlet = (Servlet) myClass.newInstance();
servlet.service((ServletRequest) request, (ServletResponse) response);
}
catch (Exception e) {
System.out.println(e.toString());
}
catch (Throwable e) {
System.out.println(e.toString());
}
}
}
java.lang.ClassNotFoundException: PrimitiveServlet
java.lang.NullPointerException
Exception in thread "main" java.lang.NullPointerException
at ex02.pyrmont.HttpServer1.await(HttpServer1.java:50)
at ex02.pyrmont.HttpServer1.main(HttpServer1.java:22)