2014-09-10 2 views
1

Я разрабатываю веб-приложение в Java, используя сервлеты и jsp, которые содержат возможность отправлять SMS с помощью Twilio API. На их веб-сайте (www.twilio.com) есть пример основного метода, который можно использовать для отправки SMS. Когда я запускаю этот метод, у меня нет проблем и отправляется SMS. Однако, когда я пытаюсь отправить его с моего сервлета, я получаю ClassNotFoundException (для TwilioRestClient или TwilioRestException), хотя тот же самый код выполняется, когда он содержится в основном методе. Я думаю, что это связано с файлами jar, хотя я добавил их в свой путь сборки и импортировал их во всех классах.Servlet ClassNotFoundException

Я пробовал все и искал везде в Интернете для ответа. Я был бы очень благодарен за любую помощь.

JSP код:

<form action="SentTextServlet" method="get"> 
    <br>Send Text<br> 
    <input type="text" name="textSent" style="height: 250px; width: 500px;" ><br> 
    <button type="submit" name="btnPressed" value="<%= session.getAttribute("value") %>"> 
     <p>Send Text Message</p> 
    </button> 
    <button type="submit" name="btnPressed" value="2"><p>Cancel</p></button> 
</form> 

ServletCode:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

    String text = request.getParameter("textSent"); 
    String selection = request.getParameter("btnPressed"); 
    String user = request.getParameter("user"); 
    TextProcedure texting = new TextProcedure(selection, text);    
} 

public static void sendTextMessage(String student, String textMessage) throws TwilioRestException { 
    TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN); 
    // Build a filter for the MessageList 
    List<NameValuePair> params = new ArrayList<NameValuePair>(); 
    params.add(new BasicNameValuePair("Body", textMessage)); 
    params.add(new BasicNameValuePair("To", phonenumber)); 
    params.add(new BasicNameValuePair("From", phonenumber)); 
    MessageFactory messageFactory = client.getAccount().getMessageFactory(); 
    Message message = messageFactory.create(params); 
    message.getSid(); 
} 
+0

Исключение трассировки стека будет полезно. Можете ли вы обновить свой вопрос? – codeMan

+0

Скорее всего, вам не хватает файлов jar. Вы должны хранить их в папке WEB-INF/lib, а не в пути сборки, как обычно. – akshayb

ответ

2

Вам нужно добавить Twilio клиентской библиотеки банку файл в WEB-INF/lib каталоге. По внешнему виду, в развернутом военном файле отсутствует его.

Или, если вы используете свой веб-приложения в рамках IDE как Eclipse, убедитесь, что Ассамблея Deployment сконфигурирован, чтобы скопировать банки зависимостями в WEB-INF/lib