Issue:
Following message is seen in the server log files for CA Identity Manager r12.6.07 deployed under Jobss 6.x
java.lang.Exception: Port NNNN already in use.
...Caused by: java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
...
We are getting below error in Windows OS while running JBoss EAP 6.3.0. Jboss port set starts from 8080 but why one service Http11Protocol taking 80 port? Increased port set to 100 it worked fine, but we are migrating from Jboss server 4 version to jboss eap 6.3.0, Jboss 4 is running with 8080 port set with Tomcat Serer on the same box. Is it possible to use same server port set 8080 with Tomacat ?
Below ERROR is shown in logs :
ERROR [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-2) JBWEB003043: Error initializing endpoint: java.net.BindException: Address already in use: JVM_Bind /0.0.0.0:8080
at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:979) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:174) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.apache.catalina.connector.Connector.init(Connector.java:986) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:318) [jboss-as-web-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_66]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_66]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_66]
.
.
.
INFO [ims.Main] (ServerService Thread Pool -- 100) ################################################
INFO [ims.Main] (ServerService Thread Pool -- 100) # IAM Framework 200.1.07.0.271
INFO [ims.Main] (ServerService Thread Pool -- 100) ################################################
INFO [ims.Main] (ServerService Thread Pool -- 100) ################################################
INFO [ims.Main] (ServerService Thread Pool -- 100) # CA Identity Manager 12.6.07.0.163
INFO [ims.Main] (ServerService Thread Pool -- 100) ################################################
INFO [ims.Main] (ServerService Thread Pool -- 100) ---- CA IAM FW Startup Sequence Initiated. ----
INFO [ims.Main] (ServerService Thread Pool -- 100) * Startup Step 1 : Attempting to start ServiceLocator.
INFO [ims.Main] (ServerService Thread Pool -- 100) * Startup Step 2 : Attempting to start PolicyServerService
INFO [ims.Main] (ServerService Thread Pool -- 100) * Startup Step 3 : Attempting to start ServerCommandService
.
.
.
WARN [org.apache.myfaces.shared_impl.util.LocaleUtils] (ServerService Thread Pool -- 100) Locale name in faces-config.xml null or empty, setting locale to default locale : en_US
17:46:05,074 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) JBAS014612: Operation ("add") failed - address: ([
("subsystem" => "web"),
("connector" => "http")
]) - failure description: {"JBAS014671: Failed services" => {"jboss.web.connector.http" => "org.jboss.msc.service.StartException in service jboss.web.connector.http: JBAS018007: Error starting web connector
Caused by: LifecycleException: JBWEB000023: Protocol handler initialization failed"}}
17:46:05,556 ERROR [org.jboss.as] (Controller Boot Thread) JBAS015875: JBoss EAP 6.4.0.GA (AS 7.5.0.Final-redhat-21) started (with errors) in 155407ms - Started 3750 of 3788 services (1 services failed or missing dependencies, 113 services are lazy, passive or on-demand)
Environment:
Cause:
<socket-binding name="http" port="80"/> <socket-binding name="https" port="8080"/>
The default configuration is:
<socket-binding name="http" port="8080"/> <socket-binding name="https" port="8443"/>
We'd recommend setting these ports back to the default values.
Resolution:
Identify which services are using the ports in question, and depending on the outcome, look to:
Reserving specific port ranges
Windows:
Reserve a range of ephemeral ports so that only services that request ports in the specified range can use them. Details on how to do this can be found at http://support.microsoft.com/kb/812873
Linux:
This can be done by assigning explicit port numbers in /etc/services
to those applications that request random ports. This way random port allocations can be avoided and the ports needed by JBoss instances can be freed.
If there are duplicate ports, in the JBoss AS instances, make the necessary updates so that the port setting in each configuration is unique. For example, use the Service Binding Manager or bind each JBoss EAP instance to a different network interface if attempting to run multiple instance of JBoss EAP.
Additional Information:
Check whether another instance of JBoss is already running. And Check whether there is a port conflict between the JBoss instances by running the grep for the port in each of the AS instances.
If there is no port conflict, run the following command/tool to identify which service/process is using the port:
netstat -lantp | grep <port>
lsof -i:<port>
(or lsof -i | grep <port>
)netstat -ao
netstat -b
Check whether any firewall or security software could prevent JBoss from opening the port