Equinox에서 실행되는 OSGi 번들 내에서보다 나은 Jetty 서버를 위해 Sun의 HTTPServer를 교체하려고합니다.Metro + Jetty + OSGi = pain
나는이 시도했다 :
System.setProperty("com.sun.net.httpserver.HttpServerProvider","org.mortbay.jetty.j2se6.JettyHttpServerProvider");
하지만 endpoint.publish (URL)를 호출하고 서버가 양산 될 때, 그것은 org.mortbay.jetty.j2se6.JettyHttpServerProvider에 대한 ClassNotFoundException가 불평.
그러나 올바른 jar가 번들에 있고 실제로 Activator에서 org.mortbay.jetty.j2se6.JettyHttpServerProvider를 인스턴스화 할 수 있습니다.
이것이 클래스 패스 문제일까요? 스폰 된 서버가 다른 클래스 경로에있을 수 있습니다. 나는 JDK 레벨에서 JAR을 추가하려고 시도했지만, 이것은 아무런 차이가 없다.
지구상에서 어떻게하면 빛을 발산 할 수 있습니까?
P. 어쩌면 끔찍한 System.setProperty 호출이 언젠가는 세상에서 사라질 것입니다. 희망을 갖고 :)