Java 获得;“对等方未经验证”;亚马逊SQS例外

Java 获得;“对等方未经验证”;亚马逊SQS例外,java,amazon-web-services,amazon-ec2,amazon-sqs,Java,Amazon Web Services,Amazon Ec2,Amazon Sqs,从JAR本地运行以下代码时: public static List<Message> getMessages(AmazonSQS sqs, String queueUrl) throws IOException { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(queueUrl).withWaitTimeSeconds(5); List<Message> me

从JAR本地运行以下代码时:

public static List<Message> getMessages(AmazonSQS sqs, String queueUrl) throws IOException {
    ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(queueUrl).withWaitTimeSeconds(5);
    List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages();
    return messages;
}
publicstaticlist-getMessages(AmazonSQS-sqs,stringqueueurl)抛出IOException{
ReceiveMessageRequest ReceiveMessageRequest=新的ReceiveMessageRequest(queueUrl)。withWaitTimeSeconds(5);
List messages=sqs.receiveMessage(receiveMessageRequest.getMessages();
返回消息;
}
它很好用。但是,当尝试在EC2实例上远程运行它时,会出现以下异常:

2014年4月15日晚上8:30:48 com.amazonaws.http.AmazonHttpClient executeHelper信息:无法执行HTTP请求:对等方不是 已验证的javax.net.ssl.SSLPeerUnverifiedException:对等方未验证 认证 位于sun.security.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:371) 位于org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:126) 位于org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:572) 位于org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:1 80) 位于org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294) 位于org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:645) 位于org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:480) 位于org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906) 位于org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805) 位于com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:384) 在com.amazonaws.http.AmazonHttpClient.execute上(AmazonHttpClient.java:232) 位于com.amazonaws.services.sqs.AmazonSQSClient.invoke(AmazonSQSClient.java:2170) 位于com.amazonaws.services.sqs.AmazonSQSClient.receiveMessage(AmazonSQSClient.java:942) 在Utils.getMessages(Utils.java:80) 运行(Manager.java:51) Main.Main(Main.java:10) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:616) 位于org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)


搜索这些异常只会引起明确使用HttpClient的人的问题,以及与我的使用非常无关的解决方案。

问题是我使用了错误的AMI,JRE不兼容。

在这两种情况下使用相同的权限?是的。这是个问题吗?