我是新的(再次,暂时没有触及它)到Java。
我有一个简单的(计划复杂得多的)HttpServlet类,我试图通过常规Notes表单或xPage上的csjs从网页调用。
package com.pnc.cld;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloWorld extends HttpServlet
{
private static final long serialVersionUID = -2950148158748149L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
System.out.println("doGet: Hello World!");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
System.out.println("doPost: Hello World!");
}
}
我发现了这篇文章here。
哪个是中文的,所以它有点难以理解,但是从我能够从中收集到的,你需要添加一个IServletFactory类,它将servlet映射到你的url,这样就可以调用它你的浏览器。
但我收到错误。 This article修复了其中一些
但我仍然会遇到一些错误。其中之一:
ServletFactory类型必须实现继承的抽象方法IServletFactory.getServletMatch(String,String)ServletFactory.java
此外文章似乎还说你需要将com.ibm.xsp.adapter.servletFactory
添加到服务目录,但我无法在我的电脑上找到该文件。
有没有更好的文章或希望在那里调用httpservlet的工作示例?
答案 0 :(得分:1)
也许您应该从Sven的博客文章中学习示例数据库。将Domino Designer切换到Java透视图并查看“代码/ Java”部分。你找到3个文件。其中一个处理URL并将它们映射到servlet。第三个存储在META-INF文件夹中,并定义IServletFactory应该在哪里查找ServletFactory类(第二个文件)。第一个文件是servlet本身。 但要小心:我们也遇到了样本数据库中的错误。非常简单的原因:在servlet代码中抛出一个“静态”异常:-D删除该代码,你没事。我们在8.5.3机器上对此进行了测试,但我相信它也适用于旧版本。
答案 1 :(得分:0)
布鲁斯, 在Domino上,您需要实现servlet OSGi样式。从OpenNTF上的webDAV for Domino项目中窃取代码。 servlet肯定在工作!