7.24. 리소스 어댑터


Jakarta Connectors Resource Adapter를 사용하면 애플리케이션이 모든 메시징 공급자와 통신할 수 있습니다. Jakarta EE 구성 요소(예: Jakarta) 및 기타 Jakarta Enterprise Cryostats 및 Servlet도 메시지를 보내거나 수신할 수 있는 방법을 구성합니다.

7.24.1. IBM MQ Resource Adapter 배포

IBM MQ는 분산 시스템의 애플리케이션이 서로 통신할 수 있는 IBM의 메시징 오리엔드 미들웨어(MOM) 제품입니다. 이는 메시지 및 메시지 큐를 사용하여 수행됩니다. IBM MQ는 메시지 큐에 메시지를 전달하고 메시지 채널을 사용하여 다른 대기열 관리자에게 데이터를 전송합니다. IBM MQ에 대한 자세한 내용은 IBM MQ on the IBM products website를 참조하십시오.

요약

IBM MQ는 JBoss EAP 8.0의 외부 Java Message Service 공급자로 구성할 수 있습니다. 이 섹션에서는 JBoss EAP에서 IBM MQ 리소스 어댑터를 배포하고 구성하는 단계를 설명합니다. 이 배포 및 구성은 관리 CLI 도구 또는 웹 기반 관리 콘솔을 사용하여 수행할 수 있습니다. IBM MQ의 지원되는 구성에 대한 최신 정보는 JBoss EAP 지원 구성을 참조하십시오.

참고

구성 변경 사항을 적용하려면 IBM MQ 리소스 어댑터를 구성한 후 시스템을 다시 시작해야 합니다.

JBoss EAP 8.0은 자카르타 EE 10 구현이므로 모든 EE API에 사용되는 패키지가 javax에서 jakarta로 변경되었으며 Jakarta EE 10 호환 리소스 어댑터가 필요합니다. JBoss EAP 7.x 이전 버전에서 IBM MQ Resource 어댑터를 사용하는 경우 이 jakarta 네임스페이스를 사용하는 IBM MQ Resource Adapter인 wmq.jakarta.jmsra.rar 를 사용해야 합니다.

  • wmq.jmsra.rar 에 대한 이전 리소스 어댑터 구성을 제거 및 배포 해제하고 wmq.jakarta.jmsra.rar를 사용합니다.
  • wmq.jakarta.jmsra.rar 를 배포하고 이 섹션에 있는 단계에 따라 를 구성합니다.

사전 요구 사항

시작하기 전에 IBM MQ 리소스 어댑터의 버전을 확인하고 구성 속성을 이해해야 합니다.

  • IBM MQ 리소스 어댑터는 wmq.jakarta.jmsra.rar 라는 리소스 아카이브(RAR) 파일로 제공됩니다. /opt/mqm/java/lib/jca/ wmq.jakarta.jmsra.rar 에서 wmq.jakarta.jmsra.rar 파일을 가져올 수 있습니다. JBoss EAP의 각 릴리스에서 지원되는 특정 버전에 대한 자세한 내용은 JBoss EAP 지원 구성 을 참조하십시오.
  • 다음 IBM MQ 구성 값을 알고 있어야 합니다. 이러한 값에 대한 자세한 내용은 IBM MQ 제품 설명서를 참조하십시오.

    • MQ_QUEUE_MANAGER: IBM MQ 큐 관리자의 이름
    • MQ_HOST_NAME: IBM MQ 큐 관리자 연결에 사용되는 호스트 이름입니다.
    • MQ_CHANNEL_NAME: IBM MQ 큐 관리자 연결에 사용되는 서버 채널
    • MQ_QUEUE_NAME: 대상 대기열의 이름입니다.
    • MQ_TOPIC_NAME: 대상 주제의 이름
    • MQ_PORT: IBM MQ 큐 관리자 연결에 사용되는 포트
    • MQ_CLIENT: 전송 유형
  • 아웃바운드 연결의 경우 다음 구성 값도 숙지해야 합니다.

    • MQ_CONNECTIONFACTORY_NAME: 원격 시스템에 대한 연결을 제공할 연결 팩토리 인스턴스의 이름입니다.

프로세스

다음은 IBM에서 제공하는 기본 구성이며 변경될 수 있습니다. 자세한 내용은 IBM MQ 설명서를 참조하십시오.

  1. 먼저 wmq.jakarta.jmsra.rar 파일을 EAP_HOME/standalone/deployments/ 디렉터리에 복사하여 리소스 어댑터를 수동으로 배포합니다.
  2. 다음으로 관리 CLI를 사용하여 리소스 어댑터를 추가하고 구성합니다.

    /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar:add(archive=wmq.jakarta.jmsra.rar, transaction-support=XATransaction)

    transaction-support 요소는 XATransaction 으로 설정되었습니다. 트랜잭션을 사용하는 경우 아래 예제와 같이 XA 복구 데이터 소스의 보안 도메인을 제공해야 합니다.

    /subsystem=resource-adapters/resource-adapter=test/connection-definitions=test:write-attribute(name=recovery-security-domain,value=myDomain)

    XA 복구에 대한 자세한 내용은 JBoss EAP 7.4 구성 가이드의 XA 복구 구성을 참조하십시오.

    배포가 아닌 경우 트랜잭션 지원 값을 NoTransaction 으로 변경합니다.

    /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar:add(archive=wmq.jakarta.jmsra.rar, transaction-support=NoTransaction)
  3. 이제 리소스 어댑터가 생성되었으므로 필요한 구성 요소를 추가할 수 있습니다.

    1. 큐에 대한 admin-object 를 추가하고 해당 속성을 구성합니다.

      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/admin-objects=queue-ao:add(class-name=com.ibm.mq.jakarta.connector.outbound.MQQueueProxy, jndi-name=java:jboss/MQ_QUEUE_NAME)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/admin-objects=queue-ao/config-properties=baseQueueName:add(value=MQ_QUEUE_NAME)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/admin-objects=queue-ao/config-properties=baseQueueManagerName:add(value=MQ_QUEUE_MANAGER)
    2. 주제의 admin-object 를 추가하고 해당 속성을 구성합니다.

      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/admin-objects=topic-ao:add(class-name=com.ibm.mq.jakarta.connector.outbound.MQTopicProxy, jndi-name=java:jboss/MQ_TOPIC_NAME)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/admin-objects=topic-ao/config-properties=baseTopicName:add(value=MQ_TOPIC_NAME)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/admin-objects=topic-ao/config-properties=brokerPubQueueManager:add(value=MQ_QUEUE_MANAGER)
    3. 관리되는 연결 팩토리에 대한 연결 정의를 추가하고 해당 속성을 구성합니다.

      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/connection-definitions=mq-cd:add(class-name=com.ibm.mq.jakarta.connector.outbound.ManagedConnectionFactoryImpl, jndi-name=java:jboss/MQ_CONNECTIONFACTORY_NAME, tracking=false)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/connection-definitions=mq-cd/config-properties=hostName:add(value=MQ_HOST_NAME)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/connection-definitions=mq-cd/config-properties=port:add(value=MQ_PORT)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/connection-definitions=mq-cd/config-properties=channel:add(value=MQ_CHANNEL_NAME)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/connection-definitions=mq-cd/config-properties=transportType:add(value=MQ_CLIENT)
      
      /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar/connection-definitions=mq-cd/config-properties=queueManager:add(value=MQ_QUEUE_MANAGER)
  4. JBoss EAP의 OVS3 메시징 시스템의 기본 공급자를 JBoss EAP 8.0 메시징 시스템에서 IBM MQ로 변경하려면 관리 CLI를 사용하여 다음과 같이 Cryostat 3 하위 시스템을 수정합니다.

    /subsystem=ejb3:write-attribute(name=default-resource-adapter-name,value=wmq.jakarta.jmsra.rar)
  5. 다음과 같이 Cryostat 코드에서 @ActivationConfigProperty@ResourceAdapter 주석을 구성합니다.

    @MessageDriven(name="IbmMqMdb", activationConfig = {
        @ActivationConfigProperty(propertyName = "destinationType",propertyValue = "jakarta.jms.Queue"),
        @ActivationConfigProperty(propertyName = "useJNDI", propertyValue = "false"),
        @ActivationConfigProperty(propertyName = "hostName", propertyValue = "MQ_HOST_NAME"),
        @ActivationConfigProperty(propertyName = "port", propertyValue = "MQ_PORT"),
        @ActivationConfigProperty(propertyName = "channel", propertyValue = "MQ_CHANNEL_NAME"),
        @ActivationConfigProperty(propertyName = "queueManager", propertyValue = "MQ_QUEUE_MANAGER"),
        @ActivationConfigProperty(propertyName = "destination", propertyValue = "MQ_QUEUE_NAME"),
        @ActivationConfigProperty(propertyName = "transportType", propertyValue = "MQ_CLIENT")
    })
    
    @ResourceAdapter(value = "wmq.jakarta.jmsra-VERSION.rar")
    @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
    public class IbmMqMdb implements MessageListener {
    }

    @ResourceAdapter 값의 VERSION 을 RAR 이름에 있는 실제 버전으로 교체해야 합니다.

  6. 리소스 어댑터를 활성화합니다.

    /subsystem=resource-adapters/resource-adapter=wmq.jakarta.jmsra.rar:activate()

7.24.1.1. IBM MQ 리소스 어댑터의 제한 사항 및 알려진 문제

다음 표에는 IBM MQ 리소스 어댑터의 알려진 문제가 나열되어 있습니다. version 열의 확인 표시를 통해 해당 리소스 어댑터 버전에 문제가 있음을 나타냅니다.

Expand
표 7.2. IBM MQ 리소스 어댑터의 알려진 문제
JIRA문제에 대한 설명IBM MQ 9

JBEAP-503

IBM MQ 리소스 어댑터는 Queue.toString()QueueBrowser.getQueue().toString() 메서드에 대해 다른 문자열 값을 반환합니다. queue은 Queue Browser. htmlQueueBrowser.getQueueBrowser.getQueue() 메서드에서 반환하는 com.ibm.mq.jms.MQQueue 클래스와 다른 com.ibm.mq.connector.outbound.MQQueue Proxy 클래스의 인스턴스입니다. 이러한 클래스에는 toString() 메서드의 다양한 구현이 포함됩니다. 이러한 toString() 메서드에 의존하여 동일한 값을 반환할 수 없습니다.

JBEAP-511, JBEAP-550, JBEAP-3686

IBM MQ의 메시지 속성 이름에 다음과 같은 제한 사항이 적용됩니다.

  • 배포 설명자의 activation-config 섹션에서 _,& amp; 또는 | 와 같은 특수 문자를 사용하여 destinationName 속성을 구성해서는 안 됩니다. 이러한 문자를 사용하면 Cryostat 배포가 com.ibm.msg.client.jms.DetailedInvalidDestinationException 예외와 함께 실패합니다.
  • 배포 설명자의 activation-config 섹션에서 java:/ 접두사를 사용하여 destinationName 속성을 구성해서는 안 됩니다. 이 접두사를 사용하면 Cryostat 배포가 com.ibm.msg.client.jms.DetailedInvalidDestinationException 예외와 함께 실패합니다.
  • 속성은 IBM MQ JMS 클래스에서 사용하도록 예약되므로 "JMS" 또는 "usr.JMS"로 시작하지 않아야 합니다. IBM Knowledge Center 웹 사이트에서 예외가 설명되어 있습니다.

메시지 속성 이름 제한 사항의 전체 목록은 IBM MQ, 버전 9.0 의 속성 이름 제한 사항을 참조하십시오.

JBEAP-549

@ActivationConfigProperty 주석을 사용하여 Cryostat의 대상 속성 이름 값을 지정하는 경우 모든 대문자를 사용해야 합니다. 예를 들면 다음과 같습니다.

@ActivationConfigProperty(propertyName = "destination", propertyValue = "QUEUE")

JBEAP-624

IBM MQ 리소스 어댑터를 사용하여 @JMSConnectionFactoryDefinition 주석을 사용하여 Jakarta EE 배포에 연결 팩토리를 생성하는 데 사용되는 경우 resourceAdapter 속성을 지정해야 합니다. 그러지 않으면 배포에 실패합니다.

@JMSConnectionFactoryDefinition(
    name = "java:/jms/WMQConnectionFactory",
    interfaceName = "javax.jms.ConnectionFactory",
    resourceAdapter = "wmq.jmsra",
    properties = {
        "channel=<channel>",
        "hostName=<hostname_wmq_broker>",
        "transportType=<transport_type>",
        "queueManager=<queue_manager>"
    }
)

JBEAP-2339

IBM MQ 리소스 어댑터는 연결이 시작되기 전에도 큐 및 주제의 메시지를 읽을 수 있습니다. 즉, 사용자가 연결을 시작하기 전에 메시지를 사용할 수 있습니다. 이 문제를 방지하려면 IBM MQ 리소스 어댑터에서 생성한 연결 팩토리가 아닌 external-context 를 사용하여 원격 IBM MQ 브로커가 생성한 연결 팩토리를 사용하십시오.

JBEAP-3685

< Cryostat -support>XATransaction</ Cryostat-support >가 설정되면 JMSContext 가 항상 JMSContext.SESSION_TRANSACTED 로 설정됩니다. 삽입을 사용하여 생성되었는지 여부에 관계없이 JMSContext는 항상 JMSContext.SESSION_TRANSACTED입니다.

다음 코드 예제에서는 @JMSSessionMode(JMSContext.DUPS_OK_ACKNOWLEDGE) 가 무시되고 JMSContext는 JMSContext.SESSION_TRANSACTED 로 유지됩니다.

@Inject
@JMSConnectionFactory("jms/CF")
@JMSPasswordCredential(userName="myusername", password="mypassword")
@JMSSessionMode(JMSContext.DUPS_OK_ACKNOWLEDGE)
transient JMSContext context3;

JBEAP-14633

JMS 사양에 따라 QueueSession 인터페이스는 게시/서브스크립션 도메인과 관련된 개체를 생성하는 데 사용할 수 없으며 Session 에서 상속하는 특정 메서드는 javax.jms.IllegalStateException 을 발생시켜야 합니다. 이러한 메서드 중 하나는 이러한 QueueSession.createTemporaryTopic() 입니다. IBM MQ 리소스 어댑터는 javax.jms.IllegalStateException 을 throw하는 대신 java.lang.NullPointerException 을 생성합니다.

JBEAP-14634

MQTopicProxy.getTopicName() 은 IBM MQ 브로커가 설정한 것과 다른 주제 이름을 반환합니다. 예를 들어 주제 이름이 topic://MYTOPIC?XMSC_WMQ_BROKER_PUBQ_QMGR=QM 로 설정된 경우 MQTopicProxytopic://MYTOPIC 을 반환합니다.

JBEAP-14636

JMSContext 의 기본 autoStart 설정은 false 입니다. 즉, 소비자가 생성될 때 JMSContext 에서 사용하는 기본 연결은 자동으로 시작되지 않습니다. 이 설정은 기본적으로 true 여야 합니다.

JBEAP-14640

IBM MQ 리소스 어댑터는 잘못된 인증 정보를 사용할 때 JMSSecurity Exception 대신 Detailed JMSException을 생성하고 서버 콘솔에 다음 오류를 기록합니다.

WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.PoolByCri] (EJB default - 7) IJ000604: Throwable while attempting to get a new connection: null: com.ibm.mq.connector.DetailedResourceException: MQJCA1011: Failed to allocate a JMS connection., error code: MQJCA1011 An internal error caused an attempt to allocate a connection to fail. See the linked exception for details of the failure.

다음은 이 문제를 일으킬 수 있는 코드의 예입니다.

QueueConnection qc = queueConnectionFactory.createQueueConnection("invalidUserName", "invalidPassword");

JBEAP-14642

MQMessageProducer.send(Destination destination, Message message)MQMessageProducer.send(Destination destination, MessageProducer.send(Destination destination, int deliveryMode, int priority, long timeToLive, CompletionListener completionListener) 방법의 리소스 어댑터에서 잘못된 클래스 캐스트 변환으로 인해 IBM MQ 리소스 어댑터가 JMSException 을 생성하고 다음 오류 메시지를 서버 콘솔에 기록합니다.

SVR-ERROR: Expected JMSException, received com.ibm.mq.connector.outbound.MQQueueProxy cannot be cast to com.ibm.mq.jms.MQDestination

큐 또는 주제 조회에 사용되는 JNDI 이름이 com.ibm.mq.connector.outbound.MQQueueProxy/MQTopicProxy 이기 때문입니다.

JBEAP-14643

JMSProducer 인터페이스의 setDeliveryDelay(expDeliveryDelay) 방법은 설정을 변경하지 않습니다. 이 메서드를 호출한 후에는 기본 설정 0 으로 유지됩니다.

JBEAP-14670

UserTransaction.begin() 이전에 생성된 QueueSession 에서 작업이 수행되는 경우 해당 작업은 트랜잭션의 일부로 간주되지 않습니다. 즉, 이 세션을 사용하여 큐로 전송된 메시지는 UserTransaction.commit() 에 의해 커밋되지 않으며 UserTransaction.rollback() 이후 메시지는 큐에 남아 있습니다.

JBEAP-14675

연결을 종료한 다음 동일한 clientID 를 사용하여 JMSContext 를 즉시 생성하면 IBM MQ 리소스 어댑터가 간헐적으로 서버 콘솔에 다음 오류를 기록합니다.

ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /jmsServlet-1.0-SNAPSHOT/: com.ibm.msg.client.jms.DetailedJMSRuntimeException: MQJCA0002: An exception occurred in the IBM MQ layer. See the linked exception for details.
A call to IBM MQ classes for Java(tm) caused an exception to be thrown.

이 문제는 동일한 clientID 와의 연결이 종료된 후 새 JMSContext 를 생성하는 데 지연이 있는 경우 발생하지 않습니다.

JBEAP-15535

컨테이너 관리 트랜잭션(CMT)에서 상태 저장 세션 빈이 메시지를 주제로 보내려고 하면 다음 메시지와 함께 메시지 전송이 실패합니다.

SVR-ERROR: com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ2007: Failed to send a message to destination 'MDB_NAME TOPIC_NAME'

스택 추적은 다음 예외로 인해 발생할 수 있음을 보여줍니다.

com.ibm.mq.MQException: JMSCMQ0001: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2072' ('MQRC_SYNCPOINT_NOT_AVAILABLE')
 

JBEAP-25561

JMSReplyTo 헤더 세트를 사용하여 대상으로 메시지가 전송되면 IBM MQ 9 브로커에 도달한 후 수정됩니다. 결과적으로 응답의 응답 메시지는 수정된 JMS_REPLY 헤더에 정의된 대상으로 전달됩니다.

예를 들어, JMSReplyTo 헤더가 헤더 message.setJMSReplyTo(queue)를 사용하여 이름이 queue:///MYQUEUE 인 queue 로 설정되고 QM 이라는 큐 관리자가 있는 IBM MQ 9.3 브로커로 전송된 경우 해당 이름이 queue://QM/MYQUEUE 로 변경됩니다.

7.24.2. Apache Log4j 버전 1 API 제거

JBoss EAP 8부터 Apache Log4j 버전 1 API에 대한 지원이 중지되었습니다. log4j.jarlog4j 구성을 패키징하지 않은 모든 애플리케이션을 업데이트해야 합니다.

영향:

로그 메시지는 로깅 하위 시스템을 기반으로 더 이상 라우팅되지 않습니다. 애플리케이션이 log4j.jar 패키징하지 않고 다음 명령문 중 하나라도 true인 경우 마이그레이션 변경 사항이 필요합니다.

  • 배포에서 log4j 를 사용하고 log4j 구성 파일을 포함하지 않는 경우 새 로깅 facade로 마이그레이션하거나 log4j 구성을 배포에 추가해야 합니다.
  • 배포에서 log4j.xml,log4j.properties 또는 jboss-log4j.xml 파일을 사용하는 경우 애플리케이션에 log4j.jar 를 패키징하지 않습니다. jboss-log4j.xml 파일인 경우 파일 이름을 log4j.xml 로 변경해야합니다.
  • custom-handler의 JBoss EAP Logging 하위 시스템에서 log4j v1 appender를 사용하면 더 이상 지원되지 않습니다.
  • 애플리케이션 클래스가 org.apache.log4j.Logger 와 같은 클래스를 가져오는 경우.
  • 애플리케이션에 jboss-deployment-structure.xml 이 포함되어 있거나 MANIFEST.MF 에 org.jboss.log4j.logmanager 에 대한 모듈 종속성을 선언하는 Dependencies 가 지정된 경우 이러한 종속 항목을 제거해야 합니다.

마이그레이션:

  • Apache Log4jv2 클래스를 사용하도록 애플리케이션 클래스를 업데이트하거나 JBoss EAP 8에서 제공하는 다른 로깅 API 중 하나를 사용합니다.
  • org.apache.log4j.Logger(log4j v1) 클래스를 org.apache.logging.log4j.Logger(log4j v2) 로 변경합니다.
  • 애플리케이션 패키지 log4j.properties,log4j.xml 또는 jboss-log4j.xml 인 경우::

    • JBoss EAP 구성에서 로깅을 구성합니다.
    • 애플리케이션에서 log4jv2 구성 파일이 지원되지 않으므로 애플리케이션에서 logging.properties 를 구성합니다.

또는

  • 로깅 API의 JBoss EAP 8에 따라 대신 Apache Log4j 버전 1 JAR을 애플리케이션에 패키징합니다. 로깅 하위 시스템의 jboss-deployment-structure.xml exclude-subsystems 를 통해 애플리케이션에서 JBoss Logging API를 제외할 수도 있습니다.

추가 세부 정보:

특정 배포에 대한 암시적 로깅 종속 항목 비활성화
  • 애플리케이션의 jboss-deployment-structure.xml 에서는 다음과 같은 로깅 하위 시스템을 제외하도록 exclude-subsystems 를 구성합니다.
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
  <deployment>
    <exclude-subsystems>
      <subsystem name="logging"/>
    </exclude-subsystems>
  </deployment>
</jboss-deployment-structure>
  • 애플리케이션이 EAR 파일이고 example.war 라는 하위 배포가 있는 경우, jboss-deployment-structure.xml 파일은 EAR 파일 위치 / META-INF/jboss-deployment-structure.xml 에 있으며 로깅 하위 시스템은 다음과 같은 하위 배포에서 선언하여 제외됩니다.
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
  <sub-deployment name="example.war">
    <exclude-subsystems>
      <subsystem name="logging"/>
    </exclude-subsystems>
  </sub-deployment>
</jboss-deployment-structure>
모든 배포에 대한 암시적 로깅 종속 항목 비활성화

기본적으로 배포에서 로깅 API를 사용할 수 없도록 하려면 다음 CLI 명령을 사용하여 add-logging-api-dependenciesfalse 로 설정합니다.

/subsystem=logging:write-attribute(name="add-logging-api-dependencies", value="false")

JBoss Module 및 Logging API를 종속성으로 설정하려면 jboss-deployment-structure.xml 또는 MANIFEST.MF 구성 파일을 수정합니다.

<subsystem xmlns="urn:jboss:domain:logging:8.0">
    <add-logging-api-dependencies value="false"/>
  ...
</subsystem>
참고

애플리케이션에서 Apache Log4j v1 JAR 및 log4j 구성을 패키징하는 애플리케이션: * 애플리케이션 로깅이 더 이상 EAP에서 관리되지 않는 경우 애플리케이션 관리입니다. * 로깅 프레임워크가 특정 로그 파일에 작성될 것으로 예상되므로 애플리케이션이 server.log 에 예기치 않은 결과를 쓰려고 시도하지 않아야 합니다.

자세한 내용은 JBoss EAP 8.0에서 Apache Log4j 버전 1이 더 이상 제공되지 않음을 참조하십시오.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동