Recursos de Tópicos JMS e Integração de Serviço
Os recursos do tópico de JMS (tópicos, espaços de tópicos, connection factories, assinaturas duráveis) são fornecidos pelo provedor de sistemas de mensagens padrão para o sistema de mensagens de publicação/assinatura de JMS e suportados por um barramento de integração de serviços.
O sistema de mensagens de publicação/assinatura do JMS e o provedor de sistemas de mensagens padrão são mostrados na seguinte figura:

- Tópico JMS
- O termo "tópico de JMS" é usado para se referir ao destino de JMS (uma instância de javax.jms.Topic) com o qual os aplicativos interagem e que um administrador configura como um recurso de JMS do provedor de sistemas de mensagens padrão.
Um aplicativo que utiliza o sistema de mensagens de publicação/assinatura JMS age como um produtor ou consumidor de mensagens com tópicos JMS e não precisa ter conhecimento sobre outros recursos de integração de serviço que suportam o tópico JMS.
Um administrador pode definir um tópico JMS, um objeto administrativo que engloba o nome de um tópico e um espaço de tópico em um barramento de integração de serviços. Aplicativos podem obter o tópico JMS procurando seu nome no espaço de nomes JNDI.
Os aplicativos JMS podem publicar mensagens e assinar mensagens de tópicos JMS. Os aplicativos de assinatura podem, geralmente, receber mensagens publicadas para um tópico somente quando o assinante estiver conectado ao servidor.
O fornecedor de sistema de mensagens padrão também suporta a utilização de assinaturas duráveis para tópicos, que permite ao assinante receber mensagens publicadas quando ele está desconectado. Para obter informações adicionais sobre assinaturas duráveis, consulte a seção 6.11.1 da especificação JMS 1.1.
- Espaço de Tópico
- Um espaço de tópico
(uma coleta hierárquica de tópicos) é um local virtual em um
barramento de integração de serviços no qual as mensagens são armazenadas e processadas para o sistema de mensagens de publicação/assinatura.
Ao contrário de configurar filas, o administrador não precisa designar o espaço de tópico para um membro do barramento. Um espaço de tópico tem um ponto de publicação definido automaticamente para cada mecanismo do sistema de mensagens no barramento. As mensagens do espaço de tópico são armazenadas e processadas em todos os seus pontos de publicação.
- Tópico
- O termo "tópico" se refere a um discriminador em um espaço de tópico.
Ao assinar tópicos, os aplicativos podem especificar caracteres curinga para selecionar um intervalo de tópicos.
- Connection factory JMS
- Um "connection factory do JMS" cria conexões com um mecanismo do sistema de
mensagens que fornece um ponto de publicação para o espaço de tópico.
Com o JMS 1.1, recomenda-se utilizar os Connection Factories JMS independentes de domínio para novos aplicativos. Os Connection Factories do tópico específico do domínio são suportados para compatibilidade reversa para aplicativos JMS desenvolvidos para utilizar interfaces de tópico específicas do domínio, conforme descrito na seção 1.5 da especificação JMS 1.1.
- Tópicos JMS Temporários
- Além de utilizar tópicos JMS que são criados como objetos administrativos,
um aplicativo também pode criar seus próprios tópicos JMS temporários, que existem
no tempo de execução apenas na duração de uma conexão. Apenas essa conexão pode
criar MessageConsumers para o tópico JMS temporário.
Para obter informações adicionais sobre como criar destinos JMS temporários, consulte a seção 4.43 da especificação JMS 1.1.
Para um tópico de JMS temporário, o barramento de integração de serviços cria um espaço de tópico temporário, que o administrador pode listar e navegar, mas geralmente no qual não precisa agir. Um espaço de tópico temporário é excluído automaticamente quando a conexão for encerrada.
- Assinaturas Duráveis
- Uma assinatura durável em um tópico JMS permite que um assinante receba uma cópia de todas as mensagens publicadas nesse tópico, mesmo as mensagens publicadas durante os períodos de tempo em que o assinante não está conectado ao servidor. Portanto, os aplicativos de assinante podem operar desconectados do servidor por longos períodos de tempo e, depois, reconectar-se ao servidor e processar mensagens que foram publicadas durante sua ausência. Se um aplicativo criar uma assinatura durável, ela será incluída na lista que os administradores podem exibir e atuar usando o console administrativo.