XWiki newly install failed: java.net.SocketException: Permission denied (connect failed)

Hi I encountered following errors after installation and could you please give me a hand?

I can open localhost:8080 which shows Tomcat welcome page.

but when I open http://localhost:8080/xwiki/bin/view/Main/ I saw this page:

8081

The bottom of the page listed root cause as:

java.net.SocketException: Permission denied (connect failed)
java.net.PlainSocketImpl.socketConnect(Native Method)
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
java.net.Socket.connect(Socket.java:607)
com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:155)
com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:65)
com.mysql.cj.NativeSession.connect(NativeSession.java:144)
com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:956)
com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:826)
com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:456)
com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197)
org.apache.commons.dbcp2.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:39)
org.apache.commons.dbcp2.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:256)
org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:2304)
org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:2290)
org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:2039)
org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:1533)
com.xpn.xwiki.store.DBCPConnectionProvider.configure(DBCPConnectionProvider.java:215)
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:143)
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:84)
org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:459)
org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:90)
org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2863)
org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2859)
org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1870)
com.xpn.xwiki.store.XWikiHibernateBaseStore.initHibernate(XWikiHibernateBaseStore.java:259)
com.xpn.xwiki.store.XWikiHibernateBaseStore.checkHibernate(XWikiHibernateBaseStore.java:703)
com.xpn.xwiki.store.XWikiHibernateStore.loadXWikiDoc(XWikiHibernateStore.java:861)
com.xpn.xwiki.store.XWikiCacheStore.loadXWikiDoc(XWikiCacheStore.java:280)
com.xpn.xwiki.XWiki.getDocument(XWiki.java:1811)
com.xpn.xwiki.XWiki.getDocument(XWiki.java:1864)
com.xpn.xwiki.XWiki.getXClass(XWiki.java:6065)
com.xpn.xwiki.XWiki.getClass(XWiki.java:6078)
com.xpn.xwiki.doc.DefaultDocumentAccessBridge.isPropertyCustomMapped(DefaultDocumentAccessBridge.java:497)
org.xwiki.query.xwql.internal.QueryContext$PropertyInfo.isCustomMapped(QueryContext.java:153)
org.xwiki.query.xwql.internal.QueryContext$ObjectInfo.isCustomMapped(QueryContext.java:122)
org.xwiki.query.xwql.internal.hql.ObjectPrinter.print(ObjectPrinter.java:37)
org.xwiki.query.xwql.internal.hql.Printer.print(Printer.java:70)
org.xwiki.query.xwql.internal.hql.XWQLtoHQLTranslator.translate(XWQLtoHQLTranslator.java:61)
org.xwiki.query.xwql.internal.XWQLQueryExecutor.execute(XWQLQueryExecutor.java:97)
org.xwiki.query.internal.DefaultQueryExecutorManager.execute(DefaultQueryExecutorManager.java:72)
org.xwiki.query.internal.DefaultQuery.execute(DefaultQuery.java:287)
org.xwiki.wiki.internal.descriptor.document.DefaultWikiDescriptorDocumentHelper.findXWikiServerClassDocumentReference(DefaultWikiDescriptorDocumentHelper.java:121)
org.xwiki.wiki.internal.descriptor.document.DefaultWikiDescriptorDocumentHelper.findXWikiServerClassDocument(DefaultWikiDescriptorDocumentHelper.java:140)
org.xwiki.wiki.internal.descriptor.DefaultWikiDescriptorManager.getByAlias(DefaultWikiDescriptorManager.java:146)
org.xwiki.url.internal.standard.AbstractWikiReferenceExtractor.getWikiDescriptorByAlias(AbstractWikiReferenceExtractor.java:78)
org.xwiki.url.internal.standard.DomainWikiReferenceExtractor.resolveDomainBasedWikiReference(DomainWikiReferenceExtractor.java:61)
org.xwiki.url.internal.standard.DomainWikiReferenceExtractor.extract(DomainWikiReferenceExtractor.java:47)
org.xwiki.url.internal.standard.entity.BinEntityResourceReferenceResolver.extractWikiReference(BinEntityResourceReferenceResolver.java:51)
org.xwiki.url.internal.standard.entity.AbstractEntityResourceReferenceResolver.resolve(AbstractEntityResourceReferenceResolver.java:92)
org.xwiki.url.internal.standard.entity.AbstractEntityResourceReferenceResolver.resolve(AbstractEntityResourceReferenceResolver.java:51)
org.xwiki.url.internal.GenericResourceReferenceResolver.resolve(GenericResourceReferenceResolver.java:61)
org.xwiki.url.internal.GenericResourceReferenceResolver.resolve(GenericResourceReferenceResolver.java:47)
org.xwiki.url.internal.standard.StandardExtendedURLResourceReferenceResolver.resolve(StandardExtendedURLResourceReferenceResolver.java:65)
org.xwiki.url.internal.standard.StandardExtendedURLResourceReferenceResolver.resolve(StandardExtendedURLResourceReferenceResolver.java:43)
org.xwiki.url.internal.DefaultResourceReferenceResolver.resolve(DefaultResourceReferenceResolver.java:93)
org.xwiki.url.internal.DefaultResourceReferenceResolver.resolve(DefaultResourceReferenceResolver.java:48)
com.xpn.xwiki.XWiki.initializeResourceFromURL(XWiki.java:922)
com.xpn.xwiki.XWiki.getXWiki(XWiki.java:793)
com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:255)
com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:210)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:112)
org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:127)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
org.xwiki.container.servlet.filters.internal.SetHTTPHeaderFilter.doFilter(SetHTTPHeaderFilter.java:63)
org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208)
org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111)
org.xwiki.resource.servlet.RoutingFilter.doFilter(RoutingFilter.java:136)

I can confirm firewalls allow port 3306 already so I don’t quite understand why connection to MySQL database got socket error. Any advice is highly appreciated.

XWIKI: xwiki-enterprise-web-8.4.3.war
OS: CentOS 7
Tomcat: 7.0.76
MySQL: 5.7.1

This error means that XWiki (i.e. the java executable) is not allowed to start a connection.

As in the 3306 is open on MySQL server ? Is it open for output connection on XWiki server too ?

Hi Thomas thanks for your answer - MySQL and Tomcat and XWIKI are all on the same server.

I wrote a simple application and confirmed I can connect to MySQL instance from other machines. Only the XWiki/Tomcat cannot establish a connection to MySQL even though they are on the same server…

Problem solved by disabling SELinux.