숫자로 SMS를 보내려고하고 있는데 문제없이 잘 작동합니다. 이것은 내 코드입니다. 나는 보통에서 일하는 내 프로젝트에 동일한 코드를 넣으면TWILIO에서 작동하는 예외 GAE의 SMS API 보내기
공용 클래스 SendSMSExample {
public void sendSMS(String data) throws Exception {
String url = "https://api.twilio.com/2010-04-01/Accounts/XXXXXXXXXXXXXXX/Messages";
URL url1 = new URL(url);
URLConnection conn = url1.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
wr.write("data");
TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);
Account account = client.getAccount();
//Use the API to send a text message
SmsFactory smsFactory = account.getSmsFactory();
Map<String, String> smsParams = new HashMap<String, String>();
smsParams.put("To", "+1408XXXXXXX");
smsParams.put("From", "(508)XXX-XXXX"); // Replace with a Twilio phone number in your account
smsParams.put("Body", "Hello");
try
{
Sms sms = smsFactory.create(smsParams);
}
catch (TwilioRestException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
// Create an instance of the SmsFactory class.
wr.flush();
// Get the response
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String output = "";
String inputLine;
while ((inputLine = reader.readLine()) != null)
{
output += inputLine;
}
wr.close();
reader.close();
}
}
그러나, 나는 예외를 얻을. 다음과 같은 예외 코드
sendMessage 첨부가 TaskAdapter {public static final String ACCOUNT_SID = "XXXXXXXXXXXXXXX";
public static final String AUTH_TOKEN = "XXXXXXXXXXXXXXX";
public static String PHONE_NUMBER = "from";
public static String MESSAGE = "message";
public void run(JSONObject x, JSONObject xx,
JSONObject xxx, JSONObject xxxx) throws Exception {
String from_phone_number = getStringValue(x, xx,
xxx, xxxx);
String message = getStringValue(x, xx,
xxx, xxxx));
String url = "https://api.twilio.com/2010-04-01/Accounts/XXXXXXXXXXXXXXX/Messages";
URL url1 = new URL(url);
URLConnection conn = url1.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream(),
"UTF-8");
wr.write("data");
TwilioRestClient client = null;
try {
***client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);***
} catch (Exception e) {
System.out.println(e);
e.getStackTrace();
}
Account account = client.getAccount();
// Use the API to send a text message
SmsFactory smsFactory = account.getSmsFactory();
Map<String, String> smsParams = new HashMap<String, String>();
smsParams.put("To", XXXX);
smsParams.put("From", XXXX); // Replace with a Twilio phone
// number in your account
smsParams.put("Body", "Hello 123");
try {
Sms sms = smsFactory.create(smsParams);
} catch (TwilioRestException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Create an instance of the SmsFactory class.
wr.flush();
// Get the response
BufferedReader reader = new BufferedReader(new InputStreamReader(
conn.getInputStream()));
String output = "";
String inputLine;
while ((inputLine = reader.readLine()) != null) {
output += inputLine;
}
wr.close();
reader.close();
}
} 나는이 줄 클라이언트 = 새로운 TwilioRestClient (ACCOUNT_SID, AUTH_TOKEN)에서 예외를 얻고있다
를 확장
공용 클래스;
java.lang.NoSuchMethodError : 나는이 항아리 버전 twilio - 자바 SDK-3.4.6-항아리 의존성-와 그리고 예외는 사용하고 org.apache.http.conn.scheme.Scheme합니다. (AppJavaClientConnectionManager.java : 53) at com.twilio.sdk.TwilioRestClient. (TwilioRestClient(); .java : 144) at com.twilio.sdk.TwilioRestClient. (TwilioRestClient.java:117) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1157) at com.google. appengine.api.socket.dev.DevSocketFilter.doFilter (DevSocketFilter.java:74) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1157) at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter (ResponseRewriterFilter.java:123) at org.mortbay. jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1157) com.google.appengine.tools.development.HeaderVerificationFilter.doFilter (HeaderVerificationFilter.java:34) at org.mortbay.jetty.servlet.ServletHandler $ org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter에서 CachedChain.doFilter com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter (ServeBlobFilter.java:63)에서 (ServletHandler.java:1157) (ServletHandler.java:1157) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter (Transacti onCleanupFilter.java:43) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1157) at com.google.appengine.tools.development.StaticFileFilter.doFilter (StaticFileFilter.java:125) com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest에서 org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1157) (DevAppServerModulesFilter.java:368) com.google에서 에서 . appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest (DevAppServerModulesFilter.java:351) at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter (DevAppServerModulesFilter.java:116) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle (ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle (SecurityHandler.java:216) at org.mortbay.jetty.servlet. SessionHandler.handle (SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle (ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle (WebAppContext.java : 418) at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle (DevAppEngineWebAppContext.java:97) at org.mortbay.jetty.handler.HandlerWrapper.handle (HandlerWrapper.java:152) at com. google.appengine.tools.development.JettyContainerService $ ApiProxyHandler.handle (JettyContainerService.java:485) at org.mortbay.jetty.handler.HandlerWrapper.handle (HandlerWrapper.java:152) at org.mortbay.jetty.Server. handle (Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest (HttpConnection.java:542) at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete (HttpConnection.java:923) at org. mortbay.jetty.HttpParser.parseNext (HttpParser.java:547) at org.mortbay.jetty.HttpParser .parseAvailable (HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle (HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run (SelectChannelEndPoint.java:409) at org .mortbay.thread.QueuedThreadPool $ PoolThread.run (QueuedThreadPool.java:582) 사전 :
ACCOUNT_SID와 AUTH_TOKEN 및 기타 고유 키는 모두 XXX로 작성해야합니다. 모든 적절한 라이브러리를 포함 시켰습니까? 이것은 사용 중일 수 있습니다 : http://stackoverflow.com/questions/17564775/how-to-create-call-from-twilio-helper-liabrary-in-google-app-engine – Ryan
나는 그들을 밖으로 XX하고 적절한 사용 라이브러리. 아직 해결되지 않았습니다. –