के साथ एसपीडीवाई "हैलो सर्वर" परीक्षण उद्देश्यों के लिए मैं Jetty के साथ एसपीडीवाई सर्वर पर एक न्यूनतम HTTP सेट अप करने का प्रयास कर रहा हूं।जेटी
keytool -genkey -keystore dummy_keystore.jks
जब मैं गूगल क्रोम (स्पीडी सक्षम) https://localhost:8443
को इंगित यह मुझे अविश्वसनीय प्रमाण पत्र के बारे में तो भार चेतावनी देते हैं:
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.spdy.http.HTTPSPDYServerConnector;
import org.eclipse.jetty.util.ssl.SslContextFactory;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.handler.AbstractHandler;
public class MySPDYHelloServer {
public static void main(String[] args) throws Exception {
Server server = new Server();
SslContextFactory sslFactory = new SslContextFactory();
sslFactory.setKeyStorePath("dummy_keystore.jks");
sslFactory.setKeyStorePassword("password");
sslFactory.setProtocol("TLSv1");
Connector connector = new HTTPSPDYServerConnector(sslFactory);
connector.setPort(8443);
server.addConnector(connector);
server.setHandler(new AbstractHandler(){
public void handle(String target, Request baseRequest,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
response.setContentType("text/html;charset=utf-8");
response.setStatus(HttpServletResponse.SC_OK);
baseRequest.setHandled(true);
response.getWriter().println("<h1>Hello World</h1>");
}
});
server.start();
server.join();
}
}
मैं साथ कुंजीस्टोर बना लेने के बाद: मैं इस कोड पर काम कर रहा हूँ हमेशा के लिए।
शुद्ध एसपीडीवाई क्लाइंट-सर्वर उदाहरण (here से) काम और एक साधारण HTTPS सर्वर भी काम करता है; यह मुद्दा HTTPSPDYServerConnector वर्ग से संबंधित प्रतीत होता है। वैसे भी
$ cat /opt/jdk1.7.0_07/release
JAVA_VERSION="1.7.0"
OS_NAME="Linux"
OS_VERSION="2.6"
OS_ARCH="i586"
समाधान परिशिष्ट
jesse mcconnellanswer प्रदान की,:
यहाँ है कि मैं उपयोग कर रहा हूँ जार की सूची दी गई है:
jetty-all-7.6.7.v20120910.jar
npn-boot-7.6.2.v20120308.jar
servlet-api-2.5.jar
spdy-core-7.6.7.v20120910.jar
spdy-jetty-7.6.7.v20120910.jar
spdy-jetty-http-7.6.7.v20120910.jar
और क्या मेरी जावा पर्यावरण चिंताओं के लिए जो ग्रहण का उपयोग करते हैं वे निम्नलिखित उपयोगी पा सकते हैं।
Run Configurations... -> Classpath -> Bootstrap Entries -> Add External JARs
ध्यान दें कि जब से क्रम मायने रखती है उस प्रविष्टि को दिखाई देना चाहिएJRE System Library
से पहले:
JAR npn-boot-7.6.2.v20120308.jar
चाहिए (भी) में रखा जाना।
ओह, मैंने ग्रहण के वर्ग पथ में सभी जारों को फेंक दिया ... बहुत धन्यवाद! – cYrus