Endevor Bridge for Git failed to start, and found the following error:
org.springframework.context.ApplicationContextException: Failed to start bean 'webServerStartStop'; nested exception is o
amework.boot.web.server.WebServerException: Unable to start embedded Tomcat server
...
Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1042)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171)
at org.apache.catalina.core.StandardService.addConnector(StandardService.java:232)
... 25 common frames omitted
Caused by: java.net.SocketException: EDC5111I Permission denied.
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:460)
at sun.nio.ch.Net.bind(Net.java:452)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:253)
at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:276)
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:231)
at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1332)
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1418)
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:665)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1039)
Endevor V19
Bridge for Git 2.14.3
There are multiple TCP/IP stacks on this Lpar, due to TCPIP restrictions, the embedded Tomcat of Endevor Bridge for Git application can only bind to one stack.
Set the stack affinity to point to a specific stack, that is to add the following as the first step in B4G startup JCL
//STEP1 EXEC PGM=BPXTCAFF,PARM=IPSTACK
Where IPSTACK is the name of the IBM TCPIP stack
Here is the sample JCL to start B4G (allow Tomcat to bind with a specific STACK)
//JVMPRC86 PROC JAVACLS=, < Fully Qfied Java class..RQD
// ARGS=, < Args to Java class
// VERSION='86', < JVMLDM version: 86
// LOGLVL='', < Debug LVL: +I(info) +T(trc)
// REGSIZE='0M', < EXECUTION REGION SIZE
// LEPARM=''
//STEP1 EXEC PGM=BPXTCAFF,PARM=IPSTACK
//JAVAJVM EXEC PGM=JVMLDM&VERSION,REGION=®SIZE,
// PARM='&LEPARM/&LOGLVL &JAVACLS &ARGS'
//SYSPRINT DD SYSOUT=* < System stdout
//SYSOUT DD SYSOUT=* < System stderr
//STDOUT DD SYSOUT=* < Java System.out
//STDERR DD SYSOUT=* < Java System.err
//CEEDUMP DD SYSOUT=*
//CEEOPTS DD *
TRAP(ON,NOSPIE)
/*
//ABNLIGNR DD DUMMY
// PEND
//********************************************************************
//* End Custom JVM procedure *
//********************************************************************
//*
//JAVA EXEC PROC=JVMPRC86,
// PARM='+T'
//STDENV DD *
export PWD=<USS directory where BridgeForGit is placed>
export JAVA_HOME=/usr/lpp/java/J8.0_64
CLASSPATH=$PWD/*
export CLASSPATH=$CLASSPATH
LIBPATH=/lib:/usr/lib:$JAVA_HOME/bin
LIBPATH=$LIBPATH:$JAVA_HOME/lib/s390x
LIBPATH=$LIBPATH:$JAVA_HOME/lib/s390x/j9vm
LIBPATH=$LIBPATH:$JAVA_HOME/bin/classic
LIBPATH=$LIBPATH:$PWD
export LIBPATH=$LIBPATH
IJO="-Xms256m -Xmx2048m -Xquickstart"
IJO="$IJO -Dfile.encoding=UTF-8"
export IBM_JAVA_OPTIONS="${IJO}"
export PATH=$PATH:$JAVA_HOME:$LIBPATH
/*
//MAINARGS DD *
-jar BridgeForGit-<version>.jar
//*
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*