powered by Jive Software

Fastpath error while starting chat

Hello.

I’ve configured Fastpath, workgroup here (support@workgroup.mydomain.net) and put button one the our site. When i click button, window is opened, i type info, click OK, my Spark shows me the incoming request, i click ‘Accept’ , Spark shows me the MUC window, user comes into room and immediately logs out.

Window in the browser shows me the error:

==============================================================

Our chat service is unavailable at this time. Please check back soon.

java.lang.NullPointerException at com.jivesoftware.webclient.jsp.chatmain_jsp._jspService(chatmain_jsp.java:122) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1074) at com.jivesoftware.webchat.SetCharacterEncodingFilter.doFilter(SetCharacterEncodi ngFilter.java:44) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065) at com.jivesoftware.webchat.SetupFilter.doFilter(SetupFilter.java:91) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) at org.mortbay.jetty.Server.handle(Server.java:285) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.j ava:751) at

org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:217) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)

==============================================================

and error.log has:

==============================================================

2007.10.23 15:18:33 [org.jivesoftware.openfire.component.InternalComponentManager$2.error(InternalC omponentManager.java:280

)]

java.lang.NullPointerException

at com.jivesoftware.openfire.fastpath.events.EmailTranscriptEvent.chatSupportFinis hed(EmailTranscriptEvent.java:93)

at com.jivesoftware.xmpp.workgroup.event.WorkgroupEventDispatcher.chatSupportFinis hed(WorkgroupEventDispatcher.java

:201)

at com.jivesoftware.xmpp.workgroup.Workgroup.roomActivity(Workgroup.java:717)

at com.jivesoftware.xmpp.workgroup.Workgroup.process(Workgroup.java:450)

at com.jivesoftware.xmpp.workgroup.WorkgroupManager.processPacket(WorkgroupManager .java:621)

at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponent. process(InternalComponentManager.

java:490)

at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:139)

at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:69)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:75)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:56)

at org.jivesoftware.openfire.muc.spi.MUCRoleImpl.send(MUCRoleImpl.java:248)

at org.jivesoftware.openfire.muc.spi.MUCRoomImpl.broadcastPresence(MUCRoomImpl.jav a:852)

at org.jivesoftware.openfire.muc.spi.MUCRoomImpl.leaveRoom(MUCRoomImpl.java:654)

at org.jivesoftware.openfire.muc.spi.MUCUserImpl.process(MUCUserImpl.java:480)

at org.jivesoftware.openfire.muc.spi.MUCUserImpl.process(MUCUserImpl.java:133)

at org.jivesoftware.openfire.muc.spi.MultiUserChatServerImpl.processPacket(MultiUs erChatServerImpl.java:235)

at org.jivesoftware.openfire.muc.spi.MultiUserChatServerImpl.process(MultiUserChat ServerImpl.java:216)

at org.jivesoftware.openfire.PresenceRouter.handle(PresenceRouter.java:139)

at org.jivesoftware.openfire.PresenceRouter.route(PresenceRouter.java:69)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:75)

at org.jivesoftware.openfire.net.StanzaHandler.processPresence(StanzaHandler.java: 306)

at org.jivesoftware.openfire.net.ClientStanzaHandler.processPresence(ClientStanzaH andler.java:85)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:231)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)

at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)

at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:570)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:299)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:53)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:648)

at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:58)

at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:176)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:299)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:53)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:648)

at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :239)

at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:283)

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

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

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

==============================================================

What’s wrong?

Thank you.

I am running into the exact same problem. This is a brand-new installation of Fastpath.

So, what should we do? I can’t catch the problem Any ideas?

I’ve upgraded to OpenFire 3.4.1

Now it’s much better, doesn’t throw an exception. User joins the conference and immediately leaves it, messagebox ‘We are unable to connect you to an agent. Please try back later’ is displayed.

I think, that it’s related to the SVR records.

We have:

  1. XMPP domain ‘domain.net

  2. Openfire on the another server ‘talk.domain.net’,but with setup as ‘domain.net

  3. DNS SRV recordsv for domain ‘domain.net’, that point us to the Openfire server

So, FastPath workgroups are on the ‘workgroup.domain.net

chat-settings.xml contains ‘talk.domain.net’ as ServerDomain

When this error occurs, i can see in the Openfire logs, that someone

tried to connect to the ‘workgroup.talk.domain.net’ , while it must

connect to the ‘workgroup.domain.net’ .Looks like it was FastPath plugin

I’ve tried to use ‘domain.net’ is the chat-settings.xml,but it didn’t help,

FastPath can’t use DNS SRV records (or doesn’t want

I recently upgraded to 3.4.1 and I have the same problem.

Did you find a solution?

No, i didn’t

First of all, imho, FastPatch developers should confirm they support DNS SRV records. Looks like they don’t

Guuuys! Could you please help us?

Well I don’t know if this will help but I have made some progress with this on our installation. It seems that if I log in to spark as a different user it works. As I am at the testing stage I am logged into spark/workgroup as me and my JID is also the Server Admin. Now I don’t know if this can affect things but if I log in as a different user it all works fine. I’m using the actual same client so it must be something to do with my account. I think I’ll change the server admin jid and see if it makes a difference.

We I tried to reproduce this on my dev system and it works fine I can by server admin and a fastpath agent so I’m still at a loss to understand it.

You shouldn’t need an SRV record for fastpath. You should only need an SRV record that points to your Openfire instance as it sounds like you already have.

You should have a DNS record for workgroup.domain.net that points to the correct server though.

Yes, i have both. SRV record for domain domain.net, points to talk.domain.net and workgroup.domain.net, points (IN CNAME) to the same server.

Yes, i can confirm that. Very strange. When chat request is accepted by user who isn’t an admin, everything is OK.

But when request accepted by me and i’m an admin, the error above occurs .

Yes, got it. This error occurs when user who answers the request is defined in the Group Chat->Administrators.

When user isn’t and admin, everything is OK.

Could anyone confirm that too? Looks like a bug or feature

FastPath also has issues with russian offline messages:

Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit
Content-Length: 408 Message:????????. ??????? ???? ??????

I have been able to confirm this issue where when an agent in a Fastpath workgroup is also a Group Chat Administrator, when they try to accept a Fastpath conversation, the client is given an error and then booted from the conversation.

I have logged a bug for this issue and you can view/track the bug here - http://www.igniterealtime.org/issues/browse/ENT-286

Ok, thanks a lot. Hope it will be resolved.

Waht about russian chars in the ‘Send a message’ ? I’m sure it isn’t only about russian, but any other non-latin charset.