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]" ] }