JBoss EAP 7 HTTP/HTTPS disable
JBoss EAP 7 이상 버전에서 HTTP와 HTTPS 서비스를 비활성화 하고 AJP로만 서비스를 하려면 HTTP/HTTPS 리스너를 비활성화 하면 된다.
/subsystem=undertow/server=default-server/http-listener=default:remove /subsystem=undertow/server=default-server/https-listener=https:remove
하지만 HTTP/HTTPS 리스너를 비활성화 하면 EJB3 remoting 서비스에 오류가 발생한다. 따라서 이 기능도 같이 비활성화 해야한다.
JBoss-CLI를 사용하여 위와 같이 구성하려면 다음을 실행합니다.
ejb3서브시스템에서<remote>정의를 비활성화하고reload한 이후remoting서브시스템에서http-remoting-connector를 비활성화하기 전에messaging-activemq서브시스템에서remote connector/acceptor를 비활성화해야 합니다.
/subsystem=ejb3/service=remote:remove() :reload
/subsystem=messaging-activemq/server=default/http-connector=http-connector-throughput:remove /subsystem=messaging-activemq/server=default/http-acceptor=http-acceptor-throughput:remove /subsystem=messaging-activemq/server=default/connection-factory=RemoteConnectionFactory:remove /subsystem=messaging-activemq/server=default/http-connector=http-connector:remove /subsystem=messaging-activemq/server=default/http-acceptor=http-acceptor:remove :reload
/subsystem=remoting/http-connector=http-remoting-connector:remove() :reload
참고로, 위 설정 변경으로 인해 원격 EJB 지원이 비활성화되면, 아래와 같은 ERROR 메시지와 함께 @Remote(예: javax.ejb.Remote) 애노테이션이 있는 EJB 애플리케이션을 배포할 수 없게 됩니다. 이는 예상된 동작입니다. 원격 EJB가 필요하다면 http-listener 또는 https-listener(또는 네이티브 remoting 커넥터) 중 하나를 활성화해야 합니다.
ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "ejb-remote-server-side.jar")]) - failure description: {
"WFLYCTL0412: Required services that are not installed:" => ["org.wildfly.ejb.remote"],
"WFLYCTL0180: Services with missing/unavailable dependencies" => [
"jboss.deployment.unit.\"ejb-remote-server-side.jar\".component.CalculatorBean.VIEW.\"org.jboss.as.quickstarts.ejb.remote.stateless.RemoteCalculator\".REMOTE is missing [org.wildfly.ejb.remote]",
"jboss.deployment.unit.\"ejb-remote-server-side.jar\".component.CounterBean.VIEW.\"org.jboss.as.quickstarts.ejb.remote.stateful.RemoteCounter\".REMOTE is missing [org.wildfly.ejb.remote]"
]
}