我使用Openfire作为我公司的聊天服务器。现在我需要为Openfire创建一个插件。
正如我从其他插件中看到的那样,他们可以通过端口7070将HTTP绑定到自己身上。 例如:http://example.com:7070/redfire其中 redfire 是插件的名称。
我的插件的名称是 toplug ,所以我希望能够通过以下方式访问我的插件的JSP页面:http://example.com:7070/toplug/index.jsp其中' index.jsp'是一些示例页面。
但是当我尝试通过端口7070访问我的JSP页面时,Jetty服务器(Openfire运行的那个)总是报告错误404&page 39找不到'。我想这是因为我的文件夹中包含JSP页面的绑定还没有设置好。请问如何做这个绑定的事情?
答案 0 :(得分:0)
这里回答的问题是: http://community.igniterealtime.org/message/224134
您不需要插件即可访问http bing端口的Web服务。只需将您的网页放在以下文件夹中:
的 OPENFIRE_HOME /的Openfire /资源/巴掌强>
并访问:
http://example.com:7070/your_folder/your_page.html
请注意,除非替换lib文件夹中的jasper-xxxx.jar文件,否则Openfire不会编译JSP页面。
如果您仍想从插件创建一个码头Web上下文(应用程序),请参阅Redfire插件的源代码:
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
import org.eclipse.jetty.webapp.WebAppContext;
...
public void initializePlugin(PluginManager manager,File pluginDirectory) {
ContextHandlerCollection contexts =
HttpBindManager.getInstance().getContexts();
context = new WebAppContext(contexts,pluginDirectory.getPath(),"/"+NAME);
context.setWelcomeFiles(new String[]{"index.html"});
...