JNDI 대 CORBA 이름 맵핑 고려사항
WebSphere® Application Server 이름 서버는 CORBA CosNaming 인터페이스의 구현입니다. 제품은 JNDI 인터페이스를 통해 CosNaming 이름 서버에 액세스하기 위해 사용할 수 있는 JNDI(Java™ Naming and Directory Interface) 구현을 제공합니다. JNDI 이름 문자열을 CORBA 이름과 맵핑할 때 문제가 있을 수 있습니다.
CORBA 이름의 각 컴포넌트는 ID 및 kind 필드로 구성되지만, JNDI 이름 컴포넌트는 이와 같은 필드 없이 구성됩니다. JNDI 이름의 각 컴포넌트는 아토믹입니다. 일반 JNDI 클라이언트는 이름 컴포넌트의 ID 필드와 kind 필드를 구별하거나 JNDI 이름 문자열이 CORBA 이름으로 맵핑하는 방법을 알 필요가 없습니다. 이 정렬의 JNDI 클라이언트는 이 절의 뒤에서 설명하는 JNDI 구문을 사용할 수 있습니다. 이름이 JNDI 구문에 따라 구문 분석될 때 각 이름 컴포넌트는 해당 CORBA 이름 컴포넌트의 ID 필드에 맵핑됩니다. kind 필드는 항상 값이 비어 있습니다. 이 기본 구문은 최소 특수 문자를 사용하는 JNDI 클라이언트에는 최소한의 방해 요인입니다. 그러나 비어 있지 않은 kind 필드의 CORBA 이름은 이 구문으로 표시할 수 없습니다. 이 제한으로 EJB 애플리케이션은 CORBA 애플리케이션과 상호 운용할 수 없습니다.
그러나 일부 클라이언트는 비어 있지 않은 kind 필드의 CORBA 이름을 사용하는 CORBA 애플리케이션과 상호 운용해야 합니다. 이러한 JNDI 클라이언트는 특히, CORBA 이름이 비어 있지 않은 kind 필드가 있는 컴포넌트를 포함할 때는 JNDI 이름이 정확하게 CORBA 이름에 맵핑되도록 ID와 kind를 구별해야 합니다. 이러한 JNDI 클라이언트는 INS 이름 구문을 사용할 수 있습니다. 추가 특수 문자가 있을 때 INS를 사용하여 CORBA 이름을 표시할 수 있습니다. 필요한 경우가 아니면 이 구문을 사용하지 않는 것이 좋습니다. JNDI 클라이언트는 여러 개의 이스케이프되지 않은 점이 있는 이름 컴포넌트가 구문상 유효하지 않음을 알아야 한다는 점에서 JNDI 클라이언트 측면에서는 이 구문이 더욱 제한되기 때문입니다. INS 이름 구문은 OMG CosNaming 상호 운용 가능 이름 지정 스펙의 일부입니다.