Amazon Anmeldeinformationen Methode nicht gefunden
So mein Nächstes problem mit diesem code. Es seemse nicht finden, eine Methode, und meine Augen sind ungeübt ist. Jede Hilfe, die zur Verfügung auf dieser?
package packeging;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Calendar;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.amazonaws.HttpMethod;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.auth.BasicAWSCredentials;
import org.apache.http.*;
/**
* Servlet implementation class Hashtastic
*/
@WebServlet("/Hashtastic")
public class Hashtastic extends HttpServlet {
private static final long serialVersionUID = 1L;
private final static String BUCKET_NAME = "idlatestingbucket";//http://s3.amazonaws.com/THESISDB/techy.jpg
private final static String FILE_NAME = "TestPicture/wallpaper-264411.png";
private final static String ACCESS_KEY = "Fakepass";
private final static String SECRET_KEY = "Fakekey";
/**
* Default constructor.
*/
public Hashtastic() {
//TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//TODO Auto-generated method stub
PrintWriter out = response.getWriter();
Calendar cal = Calendar.getInstance();
cal.add(Calendar.SECOND, 1000);
Date expDate = cal.getTime();
out.println(expDate+"\n");
BasicAWSCredentials cre = new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY);
AmazonS3 s3 = new AmazonS3Client(cre);
String url = s3.generatePresignedUrl(BUCKET_NAME, FILE_NAME, expDate, HttpMethod.GET).toString();
out.println(url);
out.close();
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//TODO Auto-generated method stub
}
}
Bin ich immer der 500 error. Es sagt, dass es fehlt, ist eine Methode. Ich habe das Glas in meiner lib und plugins für eclipse.
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoSuchMethodError: org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager: method <init>()V not found
com.amazonaws.http.ConnectionManagerFactory.createThreadSafeClientConnManager(ConnectionManagerFactory.java:26)
com.amazonaws.http.HttpClientFactory.createHttpClient(HttpClientFactory.java:83)
com.amazonaws.http.AmazonHttpClient.<init>(AmazonHttpClient.java:116)
com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.java:60)
com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:291)
com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:273)
packeging.Hashtastic.doGet(Hashtastic.java:48)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.27 logs.
Hilfe?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies könnte geschehen, wenn Sie die falsche version des httpclient jar in den classpath, oder wenn Sie mehr als eine version, die jar in den classpath (z.B. beide httpclient-4.0.1.jar und httpclient-4.1.1.jar).
Könnte es auch verursacht werden, durch ein anderes Glas mit einer anderen version der gleichen Klasse. Zum Beispiel, ich weiß, dass gwt-dev.jar enthält eine version von ThreadSafeClientConnManager. Wenn dies der Fall ist, könnte das problem wahrscheinlich gelöst werden, indem die Anpassung der build-Pfad setzen, um die httpclient.jar vor gwt-dev.jar (oder die anderen jar-problem verursacht).
Aus der Erfahrung mit genau dem gleichen Ausnahme, die Chancen stehen ziemlich gut, dass es verursacht wird durch die gwt-dev erscheinen, bevor die aws-java-sdk in den classpath und durch gwt-dev mit einem Konflikt (im Bezug zum laden von Klassen) version der org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager
Wenn Sie geschehen, werden mit Maven, re-order-Abhängigkeiten wie folgt und vielleicht hinzufügen eine Warnung an andere Betreuer auf die Bedeutung der Bestellung.