Can't start web server or Gateway Ignition 7.9.4 Possible Port Bind

I am very new to Ignition so I apologize in advance if I missed something. Could not get Ignition server to start so I attempted the following.
Installed 64bit Windows 7.9.4 Ignition, Server fails to start.

I uninstalled all versions of Java. Installed version 8.0_161. 64Bit
Start up GCU and server attempts to start but fails.
Changed the “empty field” in path of the java file in the .conf file

Java Application

Locate the java binary on the system PATH:

wrapper.java.command=C:\Program Files\Java\jre1.8.0_161\bin\java.exe

Doesnt help, reinstall Ignition change file again and still no luck.

Now the wrapper log looks like this:

STATUS | wrapperm | 2018/02/13 22:34:13 | Ignition Gateway service installed.
STATUS | wrapperm | 2018/02/13 22:34:25 | Starting the Ignition Gateway service…
STATUS | wrapper | 2018/02/13 22:34:25 | --> Wrapper Started as Service
STATUS | wrapper | 2018/02/13 22:34:25 | Java Service Wrapper Standard Edition 64-bit 3.5.29
STATUS | wrapper | 2018/02/13 22:34:25 | Copyright © 1999-2016 Tanuki Software, Ltd. All Rights Reserved.
STATUS | wrapper | 2018/02/13 22:34:25 | http://wrapper.tanukisoftware.com
STATUS | wrapper | 2018/02/13 22:34:25 | Licensed to Inductive Automation for Inductive Automation
STATUS | wrapper | 2018/02/13 22:34:25 |
STATUS | wrapper | 2018/02/13 22:34:25 | Launching a JVM…
INFO | jvm 1 | 2018/02/13 22:34:26 | WrapperManager: Initializing…
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,373 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [data\logback.xml] at [file:/C:/Program%20Files/Inductive%20Automation/Ignition/data/logback.xml]
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,413 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,415 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAppender]
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,419 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,437 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [com.inductiveautomation.logging.SQLiteAppender]
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,441 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DB]
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,906 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@46f96a60 - Driver name=SQLiteJDBC
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,906 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@46f96a60 - Driver version=native
INFO | jvm 1 | 2018/02/13 22:34:26 | 22:34:26,906 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@46f96a60 - supportsGetGeneratedKeys=true
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,992 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,995 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAsync]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,996 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAppender] to ch.qos.logback.classic.AsyncAppender[SysoutAsync]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,996 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Attaching appender named [SysoutAppender] to AsyncAppender.
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,997 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,998 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,998 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DBAsync]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,998 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DB] to ch.qos.logback.classic.AsyncAppender[DBAsync]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,998 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Attaching appender named [DB] to AsyncAppender.
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,998 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,999 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,999 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAsync] to Logger[ROOT]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,999 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DBAsync] to Logger[ROOT]
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:26,999 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
INFO | jvm 1 | 2018/02/13 22:34:27 | 22:34:27,001 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6f35de0a - Registering current configuration as safe fallback point
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.e.j.u.log ] [04:34:27]: Logging initialized @1069ms
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.e.j.s.Server ] [04:34:27]: jetty-9.3.z-SNAPSHOT
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.e.j.w.StandardDescriptorProcessor] [04:34:27]: NO JSP Support for /main, did not find org.apache.jasper.servlet.JspServlet
INFO | jvm 1 | 2018/02/13 22:34:27 | I [c.i.i.g.b.SRClassLoader ] [04:34:27]: SRClassLoader init
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.Application ] [04:34:27]: [WicketFilter] init: Wicket core library initializer
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.RequestListenerInterface] [04:34:27]: registered listener interface [RequestListenerInterface name=IBehaviorListener, method=public abstract void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.RequestListenerInterface] [04:34:27]: registered listener interface [RequestListenerInterface name=IFormSubmitListener, method=public abstract void org.apache.wicket.markup.html.form.IFormSubmitListener.onFormSubmitted()]
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.RequestListenerInterface] [04:34:27]: registered listener interface [RequestListenerInterface name=ILinkListener, method=public abstract void org.apache.wicket.markup.html.link.ILinkListener.onLinkClicked()]
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.RequestListenerInterface] [04:34:27]: registered listener interface [RequestListenerInterface name=IOnChangeListener, method=public abstract void org.apache.wicket.markup.html.form.IOnChangeListener.onSelectionChanged()]
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.RequestListenerInterface] [04:34:27]: registered listener interface [RequestListenerInterface name=IRedirectListener, method=public abstract void org.apache.wicket.IRedirectListener.onRedirect()]
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.RequestListenerInterface] [04:34:27]: registered listener interface [RequestListenerInterface name=IResourceListener, method=public abstract void org.apache.wicket.IResourceListener.onResourceRequested()]
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.Application ] [04:34:27]: [WicketFilter] init: Wicket extensions initializer
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.Application ] [04:34:27]: [WicketFilter] init: Wicket core library initializer
INFO | jvm 1 | 2018/02/13 22:34:27 | I [o.a.w.Application ] [04:34:27]: [WicketFilter] init: Wicket extensions initializer
INFO | jvm 1 | 2018/02/13 22:34:27 | I [SRContext ] [04:34:27]: Ignition["/main", state=STOPPED] ContextState = STARTING
INFO | jvm 1 | 2018/02/13 22:34:27 | I [SRContext ] [04:34:27]: Starting Ignition 7.9.4 (b2017082911)
INFO | jvm 1 | 2018/02/13 22:34:27 | I [SRContext ] [04:34:27]: Reloading JDBC classloader.
INFO | jvm 1 | 2018/02/13 22:34:27 | W [SRContext ] [04:34:27]: Unable to read “catapult.metroKeystoreAlias” gateway.xml property. Assuming metro keystore alias is: metro-key
INFO | jvm 1 | 2018/02/13 22:34:27 | I [C.SecureRandomProvider ] [04:34:27]: Creating SecureRandom object…
INFO | jvm 1 | 2018/02/13 22:34:27 | I [C.SecureRandomProvider ] [04:34:27]: … SecureRandom Created.
INFO | jvm 1 | 2018/02/13 22:34:27 | I [C.SecureRandomProvider ] [04:34:27]: Secure random seed generated in 0ms
INFO | jvm 1 | 2018/02/13 22:34:28 | I [o.a.w.p.h.WebApplication ] [04:34:27]: [WicketFilter] Started Wicket version 6.1.1 in DEPLOYMENT mode
INFO | jvm 1 | 2018/02/13 22:34:28 | I [o.e.j.s.h.ContextHandler ] [04:34:27]: Started o.e.j.w.WebAppContext@1bef5625{/main,file:///C:/Program%20Files/Inductive%20Automation/Ignition/webserver/webapps/main/,AVAILABLE}
INFO | jvm 1 | 2018/02/13 22:34:28 | I [R.StateMonitoring ] [04:34:27]: Redundancy state changed: Role=Independent, Activity level=Active, Project state=Good, History level=Full
INFO | jvm 1 | 2018/02/13 22:34:28 | I [o.e.j.s.ServerConnector ] [04:34:28]: Started ServerConnector@72c2971e{HTTP/1.1,[http/1.1]}{0.0.0.0:8088}
INFO | jvm 1 | 2018/02/13 22:34:28 | I [g.InternalDatabaseManager ] [04:34:28]: Starting up…
INFO | jvm 1 | 2018/02/13 22:34:28 | I [P.InternalDatabase ] [04:34:28]: Looking for existing internal database “config.idb”…
INFO | jvm 1 | 2018/02/13 22:34:28 | I [P.InternalDatabase ] [04:34:28]: … no files found, will create.
INFO | jvm 1 | 2018/02/13 22:34:28 | I [P.InternalDatabase ] [04:34:28]: Creating new internal database “config.idb”.
INFO | jvm 1 | 2018/02/13 22:34:28 | I [o.e.j.u.s.SslContextFactory ] [04:34:28]: x509=X509@98b4209(tomcat,h=[],w=[]) for SslContextFactory@3682edf1(file:///C:/Program%20Files/Inductive%20Automation/Ignition/webserver/ssl.key,null)
INFO | jvm 1 | 2018/02/13 22:34:28 | I [g.InternalDatabaseManager ] [04:34:28]: Upgrading schema for module “ignition”
INFO | jvm 1 | 2018/02/13 22:34:28 | I [P.InternalDatabase ] [04:34:28]: internal database “config.idb” started up successfully.
INFO | jvm 1 | 2018/02/13 22:34:28 | I [P.InternalDatabase ] [04:34:28]: Registering autobackup task [owner=Internal DB Autobackup, name=internal database “config.idb”]
INFO | jvm 1 | 2018/02/13 22:34:28 | I [g.ModuleManager ] [04:34:28]: Loading modules…
INFO | jvm 1 | 2018/02/13 22:34:29 | I [o.e.j.s.ServerConnector ] [04:34:28]: Started ServerConnector@723af6a6{SSL,[ssl, http/1.1]}{0.0.0.0:8043}
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp:

INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: Encountered an error running main:
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: java.net.BindException: Address already in use: bind
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.nio.ch.Net.bind0(Native Method)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.nio.ch.Net.bind(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.nio.ch.Net.bind(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:326)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:244)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.eclipse.jetty.server.Server.doStart(Server.java:384)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at com.inductiveautomation.catapult.Jetpad.start(Jetpad.java:323)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at com.inductiveautomation.catapult.Catapult.start(Catapult.java:135)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at com.inductiveautomation.catapult.Catapult.main(Catapult.java:62)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at java.lang.reflect.Method.invoke(Unknown Source)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:325)
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: at java.lang.Thread.run(Unknown Source)
STATUS | wrapperm | 2018/02/13 22:34:29 | Ignition Gateway service started.
STATUS | wrapper | 2018/02/13 22:34:31 | <-- Wrapper Stopped

I was thinking there might be a port bind on 8080 (sounds like that is the default) but in command line
netstat -ano | locate “8080” does not yeild any results nor do I see it in the list just “nestat -ano”

“Everyone elses” wrapper log with a port bind displays the port number in the error.
INFO | jvm 1 | 2018/02/13 22:34:29 | WrapperSimpleApp Error: java.net.BindException: Address already in use: bind
I am not seeing that.
Also choosing random Ports in GCU saving and restarting has not been fruitful either.

So there must be a way to define the default port number but based on some other forum suggestions:
I do not see a port number to change in the web.xml file There is something but is not what I expected it to be
also dont see a port number in .conf file but didnt expect it to be there.

I am all ears and willing to try anything

Hi!

The default port is actually 8088

I’ve run the same commands as you on a box I’ve got Ignition running on and 8088 does show, as well as 8043 for SSL.

Have a look at the gateway.xml file in Ignition/data - ports are listed there.

Have you tried installing Ignition on to a fresh install? Perhaps running up a virtualbox VM with one of Microsoft’s free testing VM’s would be a good workaround for now. This link shows the free test boxes - https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/

1 Like

OK yes I can confirm that Ports 8088 and 8043 are the problem from current wrapper log.

[Running as administrator and saving afterwards:]
In the gateway.xml file I changed the
(after making sure these ports were not used in cmd line)
SSL Port to 9043 from 8043
catapult Port to 9088 from 8088
MetroSSLPort to 9060 from 8060

Restart Ignition and check wrapper log. same Error :frowning: No dice…

Do I need to be worried about these parameters being commented out?..

Java Additional Parameters

wrapper.java.additional.1=-XX:+UseConcMarkSweepGC
wrapper.java.additional.2=-XX:+CMSClassUnloadingEnabled
wrapper.java.additional.3=-Ddata.dir=data
wrapper.java.additional.4=-Dorg.apache.catalina.loader.WebappClassLoader.ENABLE_CLEAR_REFERENCES=false
#wrapper.java.additional.5=-Xdebug
#wrapper.java.additional.6=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000

I checked with someone else and my GCU Screen seems odd to them. Do any of you have any comments on the unknown ports?

Use your netstat tool to see what else might be occupying one or more of your ports.

1 Like

The only port that is close is 8060 and 8181, which are different from what I have selected in the gateway.xml file above and the defaults. Could this be unrelated to Ports and more to do with a “gateway management script” (using words that I’m not 100% on their meaning)?

Is there a port range that I can set Ports to for Ignition?

For instance some programs can only be ran from port 9000 to 10000

Changing the Port values from default (ex.8088) to default +1 (ex.8089) also does not seem to fix the issue

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
 <properties>
 <comment>Context Settings</comment>
 <entry key="catapult.port">8089</entry>
 <entry key="catapult.maxKeepAliveRequests">200</entry>
 <entry key="catapult.sslport">8044</entry>
 <entry key="localdb.autobackup.delay">2</entry><entry key="catapult.acceptCount">100</entry>
<entry key="catapult.connectionTimeout">60000</entry>
<entry key="context.props.version">3</entry>
 <entry key="localdb.autobackup.count">5</entry>
 <entry key="context.startup.useautobackups">true</entry>
 <entry key="catapult.maxThreads">300</entry>
 <entry key="localdb.faultbackup.count">3</entry>
 <entry key="catapult.keepAliveTimeout">60000</entry>
 <entry key="catapult.metroSSLPort">8061</entry>
 </properties>

Is this the only spot I need to be changing the ports? The GUI interface does not seem to change these values so it looks to me like there is another reference point for setting port numbers or this change in the GUI is not reflected int the .xml file.

Also Just installed a clean VM of Windows 32 bit and installed ignition but of course that works and does me no good but at least I know it is feasible.

Still need it on my host machine…

Looks like 8060 was the problem, which is the default port used for SSL with the Gateway Network. I see you changed it in the XML file, did you restart the gateway after making the changes?

As for a GUI interface to make port changes, check out the GCU: https://docs.inductiveautomation.com/display/DOC79/Changing+Gateway+Ports

In your case, however, the Gateway Network SSL port was the issue, and that can only be changed in the gateway.xml file.

1 Like

OK so I tried doing this Last night a couple times last night and this morning. I made the change in the gateway.xml file and rebooted as a Heil Mary since I had not done that yet. That did the trick. Can’t explain why simply restarting the program a couple times was different from restarting. (especially since I restarted the PC in between installing Java and Installing Ignition. Then modifying the gateway file. ) Hope this thread helps anyone else out there.

1 Like

Also Restarting Ignition and waiting a minute and repeating TWICE, (total of 3 starts) and Ignition was happy as could be. This is information from another thread but highly valid answer.