我正在使用Worklight(版本6.1.0.00-20131126-0630),我在服务器端软件包 server / java / com.myproject.servlet中创建了一个servlet
@WebServlet(name = "MyServlet", displayName = "MyServlet", urlPatterns = { "/MyServlet/*" }, initParams = {
@WebInitParam(name="targetUri", value="http://localhost:8080"),
@WebInitParam(name="log", value="false"),
@WebInitParam(name=ClientPNames.HANDLE_REDIRECTS, value="false")
},
loadOnStartup = 1)
public class MyServlet extends HttpServlet {
private static final long serialVersionUID = 1966243950602823405L;
@Override
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
super.service(arg0, arg1);
//TODO: IMPLEMENTATION
}
}
调用我的Servlet的方法是什么?
在许多论坛中,人们都说要用HTTP适配器调用servlet。我想当我运行我的worklightserver时,我的servlet由worklight Web容器实例化,所以我认为我不必在适配器过程中实例化Servlet。
但是,从Worklight客户端的common / mycall.js文件中调用MyServlet服务方法有哪些步骤?
答案 0 :(得分:1)
您不应将servlet放在Worklight Server中。
要使您的servlet在Worklight Server中工作,您需要手动编辑web.xml文件,否则服务器将无法识别该servlet,也不会侦听任何传入请求。
但是,web.xml是.war文件的一部分;在Worklight Studio中的每个构建操作(在Eclipse中,Worklight Server实例所在的位置)中重新生成此文件,因此也会重新生成web.xml,并且您的添加将丢失。
您需要将此servlet部署到某个Web服务器。
然后,您可以像使用任何其他HTTP后端系统一样使用HTTP适配器来访问它。 See the documentation for HTTP adapters