这更像是一个系统级问题,但我在使用Twilio java库和Rasberry pi 2上的Apache Tomcat 7时遇到了一些问题。我的最终目标是让Twilio将sms消息传递给raspberry pi用于控制一些简单的开关。 (目前为Overkill,但是pi提供的连接选项我想最终在系统中实现一些丰富的控制/交互性)
我正在尝试实现twilio的简单示例代码:
package com.twilio;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import com.twilio.sdk.verbs.TwiMLResponse;
import com.twilio.sdk.verbs.TwiMLException;
import com.twilio.sdk.verbs.Message;
public class TwilioServlet extends HttpServlet {
// service() responds to both GET and POST requests.
// You can also use doGet() or doPost()
public void service(HttpServletRequest request, HttpServletResponse response) throws IOException {
TwiMLResponse twiml = new TwiMLResponse();
Message message = new Message("Hello, Mobile Monkey");
try {
twiml.append(message);
} catch (TwiMLException e) {
e.printStackTrace();
}
response.setContentType("application/xml");
response.getWriter().print(twiml.toXML());
}
}
我使用twilio库编译了这个,并将以下web.xml放在WEB-INF目录中:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>Twilio SMS App</display-name>
<servlet>
<servlet-name>TwilioServlet</servlet-name>
<servlet-class>com.twilio.TwilioServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TwilioServlet</servlet-name>
<url-pattern>/sms</url-pattern>
</servlet-mapping>
</web-app>
但是,当我在浏览器中加载此页面时,Tomcat会给我一个错误:
Apache Tomcat / 7.0.28 - 错误报告
类型状态报告
消息
描述请求的资源()不可用。
< / p>
偶尔如果我很幸运,服务器实际上会给我:
The requested resource (twilio/sms)
我写了一个不同的servlet来打印hello world,并且使用url扩展名twilio / hello显示正常。我认为这与Tomcat寻找Twilio api的东西有关,但我对Web开发或java不太熟悉,所以我有点不知所措。想法?
答案 0 :(得分:0)
这是来自Twilio的Megan。
如果您说使用网址扩展名twilio/hello
尝试了“Hello World”示例,我假设您已按照local dev environment setup here进行操作。
在以下示例中,代码看起来与您上面发布的内容几乎完全相同,但是您是否完成了标题为Let Twilio find your server的下一步?
除了快速入门,我发现使用Java和Apache Tomcat的these posts在第一次使用Java和Twilio时特别有用。
希望这有帮助!