Ubuntu Server 12.10
Tomcat 7
BaseX 7.6
We are using the client module to make the following call: client:connect($app:feedback-server-host, 1984, $session-user, $session-password). Port 1984 successfully connects within a client/server application; however, when we deploy as a web application to Tomcat, either BaseX Server is not starting up or port 1984 is not available. We added <param-name>org.basex.debug</param-name> to Tomcat's web.xml. The output of …/tomcat7/logs/catalina.out follows:
...
INFO: Deploying web application archive /var/lib/tomcat7/webapps/bxApp.war
May 1, 2013 4:22:17 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive /var/lib/tomcat7/webapps/ROOT.war
May 1, 2013 4:22:17 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8984"]
May 1, 2013 4:22:17 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8443"]
May 1, 2013 4:22:17 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 52056 ms
org.basex.http.HTTPException: No function found that matches the request.
org.basex.http.HTTPErr.thrw(HTTPErr.java:56)
org.basex.http.restxq.RestXqServlet.run(RestXqServlet.java:26)
org.basex.http.BaseXServlet.service(BaseXServlet.java:39)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:662)
_ REQUEST _________________________________
org.apache.catalina.connector.RequestFacade@6f45959c
- host: ouripaddress:8984
- user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:20.0) Gecko/20100101 Firefox/20.0
- accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
- accept-language: en-US,en;q=0.5
- accept-encoding: gzip, deflate
- cookie: JSESSIONID=XXXXXXX
- connection: keep-alive
_ RESPONSE ________________________________
org.apache.catalina.connector.ResponseFacade@63721e22java.net.ConnectException: Connection refused
java.net.PlainSocketImpl.socketConnect(Native Method)
java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
java.net.Socket.connect(Socket.java:529)
org.basex.server.ClientSession.<init>(ClientSession.java:107)
org.basex.server.ClientSession.<init>(ClientSession.java:85)
org.basex.query.func.FNClient.connect(FNClient.java:81)
org.basex.query.func.FNClient.item(FNClient.java:61)
org.basex.query.expr.ParseExpr.value(ParseExpr.java:70)
org.basex.query.func.FNClient.value(FNClient.java:53)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.expr.Try.value(Try.java:69)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.flwor.Let$1.next(Let.java:85)
org.basex.query.flwor.FLWR$1.next(FLWR.java:63)
org.basex.query.expr.ParseExpr.item(ParseExpr.java:53)
org.basex.query.expr.ParseExpr.value(ParseExpr.java:70)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.func.UserFunc.value(UserFunc.java:175)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.func.BaseFuncCall.value(BaseFuncCall.java:68)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.flwor.Let$1.next(Let.java:85)
org.basex.query.flwor.FLWR$1.next(FLWR.java:63)
org.basex.query.expr.ParseExpr.item(ParseExpr.java:53)
org.basex.query.expr.ParseExpr.value(ParseExpr.java:70)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.func.UserFunc.value(UserFunc.java:175)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.query.func.BaseFuncCall.value(BaseFuncCall.java:68)
org.basex.query.QueryContext.value(QueryContext.java:296)
org.basex.http.restxq.RestXqResponse.create(RestXqResponse.java:102)
org.basex.http.restxq.RestXqModule.process(RestXqModule.java:99)
org.basex.http.restxq.RestXqFunction.process(RestXqFunction.java:89)
org.basex.http.restxq.RestXqServlet.run(RestXqServlet.java:28)
org.basex.http.BaseXServlet.service(BaseXServlet.java:39)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:662)
_ REQUEST _________________________________
org.apache.catalina.connector.RequestFacade@6f45959c
- host: ouripaddress:8984
- connection: keep-alive
- cache-control: max-age=0
- accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
- user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31
- dnt: 1
- accept-encoding: gzip,deflate,sdch
- accept-language: en-US,en;q=0.8
- accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
_ RESPONSE ________________________________
org.apache.catalina.connector.ResponseFacade@63721e22_ REQUEST _________________________________
org.apache.catalina.connector.RequestFacade@ac0b3d1
- host: ouripaddress:8984
- connection: keep-alive
- accept: */*
- user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31
- dnt: 1
- referer: http://ouripaddress:8984/bxApp/restxq/etc
- accept-encoding: gzip,deflate,sdch
- accept-language: en-US,en;q=0.8
- accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
- cookie: JSESSIONID=XXXXXXXXX
_ RESPONSE ________________________________
…
I ran netstat -an | grep "LISTEN ". Port 1984 was not listed. Thinking that 1984 was closed, I ran iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 1984 -j ACCEPT. However after running netstat -lnp | grep 1984 -- still nothing.
The file .basex is at the root of our webapp and looks like this:
...
# Client/Server Architecture
HOST = ouripaddress
PORT = 1984
SERVERPORT = 1984
EVENTPORT = 1985
USER = user
PASSWORD = userpassword
SERVERHOST = ouripaddress
PROXYHOST =
PROXYPORT = 80
NONPROXYHOSTS =
TIMEOUT = 30
KEEPALIVE = 600
PARALLEL = 8
LOG = true
LOGMSGMAXLEN = 1000
...
Any help as to why we are not able to connect would be much appreciated!