gpt4 book ai didi

java - 在 Java 中创建 HTTPS Web 服务

转载 作者:行者123 更新时间:2023-11-29 05:41:39 26 4
gpt4 key购买 nike

我在 java 中创建了一个 web 服务,如下所示:

@Path("/rest")
public class GetStatus {
@GET
@Produces("application/xml")
@Path("/getMethod")
public String getDetails() {
return "Hello World !!!";
}

对应的web.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>MyWebService</display-name>
<servlet>
<servlet-name>ServletAdaptor</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.xmlws</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>ServletAdaptor</servlet-name>
<url-pattern>/check/*</url-pattern>
</servlet-mapping>
</web-app>

我按如下方式使用它:

String wsdl = "http://localhost:8080/MyWebService/check/rest/getMethod/";
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response;
HttpGet getMethod = new HttpGet(wsdl);
String responseString = null;
try {
response = httpclient.execute(getMethod);

StatusLine statusLine = response.getStatusLine();
System.out.println("getStatusCode = " + statusLine.getStatusCode());
if (statusLine.getStatusCode() == HttpStatus.SC_OK) {
ByteArrayOutputStream out = new ByteArrayOutputStream();
response.getEntity().writeTo(out);
out.close();
responseString = out.toString();
} else {
response.getEntity().getContent().close();
throw new IOException(statusLine.getReasonPhrase());
}
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e..printStackTrace();
}

但目前网络服务是HTTP。如何使它成为 HTTPS?这样做有什么要求?

我知道如何从客户端访问 HTTPS 网络服务,但我想先创建一个 HTTPS 服务。

感谢任何帮助。

最佳答案

服务器/servlet 容器管理响应哪个协议(protocol)。无论您在哪里发布它,Web 服务都将在某个 Web 服务器中运行。在您的情况下,它将是一个 servlet 容器(可能是 Tomcat),因为您使用的是 servlet。

您需要做一些(相对)小的配置,您可以找到它 here如果您使用的是 Tomcat 7。

关于java - 在 Java 中创建 HTTPS Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17322443/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com