Using Plugins with the Wildfire servlet

Hi,

EDIT: I rephrased the question, look below.

Is there a way to integrate JWChat into the wildfire admin interface? I don’‘t want to open two different ports for this, and the Wildfire servlet is still broken (plugins don’'t work in this mode).

Ok, I bit the bullet and moved to the servlet-solution. Just as expected, the plugins ceased to work. Does anybody have some experience on how I could fix that? The exception I get when accessing the plugin page in the admin interface is:

Jun 5, 2006 8:23:54 AM org.apache.jasper.runtime.JspFactoryImpl internalGetPageContext

SEVERE: Exception initializing page context

java.lang.NullPointerException

at org.apache.jasper.runtime.PageContextImpl._initialize(PageContextImpl.java:138)

at org.apache.jasper.runtime.PageContextImpl.initialize(PageContextImpl.java:123)

at org.apache.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl. java:104)

at org.apache.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:61)

at org.jivesoftware.wildfire.plugin.search.search_002dprops_002dedit_002dform_jsp. _jspService(search_002dprops_002dedit_002dform_jsp.java:37)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.jivesoftware.wildfire.container.PluginServlet.handleJSP(PluginServlet.java: 227)

at org.jivesoftware.wildfire.container.PluginServlet.service(PluginServlet.java:91 )

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:252)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:202)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173)

at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:11 8)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:202)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:43)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:202)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:202)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:202)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java: 213)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java: 178)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:10 7)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)

at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)

at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)

at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)

at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)

at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:87 6)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:6 84)

at java.lang.Thread.run(Thread.java:595)

I just discovered the following exception on Wildfire launch:

2006.06.09 05:50:17 org.jivesoftware.wildfire.container.PluginServlet.registerServlets(PluginServlet .java:168)

java.lang.NullPointerException

at javax.servlet.GenericServlet.getServletContext(GenericServlet.java:159)

at org.jivesoftware.wildfire.plugin.presence.PresenceStatusServlet.loadResource(Pr esenceStatusServlet.java:136)

at org.jivesoftware.wildfire.plugin.presence.PresenceStatusServlet.init(PresenceSt atusServlet.java:62)

at org.jivesoftware.wildfire.container.PluginServlet.registerServlets(PluginServle t.java:159)

at org.jivesoftware.wildfire.container.PluginManager.loadPlugin(PluginManager.java :313)

at org.jivesoftware.wildfire.container.PluginManager.access$200(PluginManager.java :48)

at org.jivesoftware.wildfire.container.PluginManager$PluginMonitor.run(PluginManag er.java:658)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)

at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:280)

at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:135)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101 (ScheduledThreadPoolExecutor.java:65)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodi c(ScheduledThreadPoolExecutor.java:142)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Schedu ledThreadPoolExecutor.java:166)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java: 650)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)

at java.lang.Thread.run(Thread.java:595)

I’‘m using Tomcat 5.0.x, maybe it’'s related to that?

Hi,

I’'m using Tomcat 5.5 and see no exception while starting it or restarting the presence plugin. Are you using Wildfire 2.6.2 and Presence 1.1.2?

LG

I’'m using:

Linux 2.6.9-34

jdk 1.5.0_07

Tomcat 5.5.17 via mod_jk 1.2.15 via apache 2.0.58

Wildfire 2.6.2

Presence 1.2.0

Search 1.1.6

Since I’‘ve had the exact same problem before on a completely different server, maybe I’'m doing something wrong while installing the servlet?

I had set up a regular wildfire installation and configured it (the plugins were working fine), then I installed the war-archive inside tomcat’'s webapp-folder, and then I pointed the home directory to my working wildfire installation using that configuration-file mentioned in the knowledge base (after removing the admin-plugin).

Hi Andreas,

this sounds fine, I assume you did set the permissions right as Tomcat and the Wildfire user may be different users. I did just unzip the wildfire.zip file (without admin folder) to get a wildfire home and did then deploy wildfire.war and configured it. Then I did copy the plugins to the plugin directory.

I think that I’'ve seen such an error before and it did happen as Tomcat did not exctract the plugin jar itself. You could try to stop Tomcat, remove the presence jar and the presence folder and start it again. Then copy the presence jar to the plugin folder and check if it gets deployed right.

LG

I think that I’'ve seen such an error before and it

did happen as Tomcat did not exctract the plugin jar

itself. You could try to stop Tomcat, remove the

presence jar and the presence folder and start it

again. Then copy the presence jar to the plugin

folder and check if it gets deployed right.

Aaah, now I found the problem (well, you did actually). Apparently tomcat doesn’‘t like the plugins when they’'re already installed before moving to the servlet solution. Removing and moving them back deployed them, now everything is fine. Thank you!

Maybe the knowledge base article on servlet deployment should include this information, so the next one using it doesn’'t have the same issues.

just like this ?[/url]

You may post comments yourself.

just like this ?[/url]

You may post comments yourself.

Like this, yes

Ok, now I’'m a happy camper. Only two major Wildfire bugs remaining (broken SRV resolving and hanging TLS-connections on disconnect)

ugh, looks like I have to do that every time I’'m restarting tomcat… oh well.

Hi,

this sounds odd - I don’'t remove the folders all the time. Anyhow you could modify the start script to do this for you.

LG