Instalando o Sistema de Ajuda como um Infocenter

Você pode permitir que seus usuários acessem o sistema de ajuda na Internet ou em uma intranet, instalando o infocenter e os plug-ins de documentação em um servidor. Os clientes visualizam a ajuda navegando para um URL, e o sistema de ajuda é mostrado em seu navegador da Web. O sistema de ajuda infocenter pode ser utilizado para aplicativos do cliente e para aplicativos da Web, um dos quais pode ter sua ajuda acessada remotamente. Todos os recursos do sistema de ajuda, exceto os infopops e a ajuda ativa, são suportados.

O sistema de ajuda do infocenter permite transmitir várias opções que podem ser utilizadas para personalizar vários aspectos do infocenter. As seguintes opções são suportadas:

Instalação/Empacotamento

Essas etapas são destinadas ao integrador do sistema de ajuda e não se destinam a endereçar todos os cenários possíveis. Supõe-se que toda sua documentação seja entregue como plug-ins do Eclipse e, geralmente, que você esteja familiarizado com o sistema de ajuda do eclipse.

  1. Faça o download do driver Eclipse Platform Runtime Binary a partir de www.eclipse.org.
  2. Instale (descompacte) o driver em um diretório, d:\myApp. Isto criará um subdiretório do Eclipse, d:\myApp\eclipse que contém o código requerido para a plataforma Eclipse (que inclui o sistema de ajuda).

Como Iniciar ou Parar o Infocenter a Partir da Linha de Comandos

A classe org.eclipse.help.standalone.Infocenter possui um método main que pode ser utilizado para ativar o infocenter a partir de uma linha de comandos. A sintaxe dos argumentos da linha de comandos é:

-command start | shutdown | [-eclipsehome eclipseInstallPath] [-data instanceArea] [-host helpServerHost] [-locales localeList] [-port helpServerPort] [-dir rtl] [-noexec] [platform options] [-vmargs JavaVMarguments]

Para iniciar o infocenter na porta 8081 emita um comando start executando

java -classpath d:\myApp\eclipse\plugins\org.eclipse.help.base_3.1.0.jar org.eclipse.help.standalone.Infocenter -command start -eclipsehome d:\myApp\eclipse -port 8081

Para encerrar o infocenter emita um comando shutdown executando

java -classpath d:\myApp\eclipse\plugins\org.eclipse.help.base_3.1.0.jar org.eclipse.help.standalone.Infocenter -command shutdown -eclipsehome d:\myApp\eclipse

Utilizando o Infocenter

Inicie o servidor Web. Aponte um navegador da Web para o caminho "help" do aplicativo da Web que está sendo executado em uma porta especificada durante o início do infocenter.  Na máquina em que o infocenter está instalado, este deve ser http://localhost:8081/help/.

Como Iniciar ou Parar o Infocenter a Partir do Java

Ao incluir o infocenter como parte de outro aplicativo, pode ser mais conveniente iniciá-lo e pará-lo utilizando APIs Java em vez de utilizar comandos do sistema. Siga as etapas se esse for o caso:

  1. Verifique se o d:\myApp\eclipse\plugins\org.eclipse.help.base_3.1.0.jar está em seu caminho de classe do aplicativo. A classe que você utiliza para iniciar e encerrar o infocenter é org.eclipse.help.standalone.Infocenter.
  2. Cria uma matriz de cadeias que contenha as opções que você deseja transmitir ao infocenter. Normalmente, as opções eclipsehome e port são necessárias.
    String[] options = new String[] { "-eclipsehome", "d:\\myApp\\eclipse" , "-port", "8081" }; 
  3. Em seu aplicativo, crie uma instância da classe Help transmitindo as opções.
    Infocenter infocenter = new Help(options); 
  4. Para iniciar o sistema de ajuda:
    helpSystem.start();
  5. Para encerrar o infocenter:

    helpSystem.shutdown(); 

Tornando o Infocenter Disponível na Web

O Eclipse contém um infocenter completo e não requer a execução de outro software de servidor. Entretanto, em um ambiente inseguro como a Internet, recomenda-se que o infocenter não seja acessado diretamente por clientes, mas seja disponibilizado por meio de um servidor HTTP ou um servidor de aplicativos. A maioria dos servidores é fornecida com módulos ou servlets para delegar certos pedidos a outros recursos da Web. Por exemplo, é possível configurar um módulo proxy do Apache HTTP Server para redirecionar os pedidos feitos de http://mycompany.com/myproduct/infocenter para http://internalserver:8081/help que executa um infocenter. A adição das linhas

LoadModule proxy_module modules/ApacheModuleProxy.dll
ProxyPass /myproduct/infocenter http://internalserver:8081/help
ProxyPassReverse /myproduct/infocenter http://internalserver:8081/help

no arquivo conf/httpd.conf do servidor Apache que está executando o site da Web mycompany executa essa tarefa.

Algumas versões do Apache HTTP Server podem conter a diretiva AddDefaultCharset ativada no arquivo de configuração. Remova a diretiva ou a substitua por

AddDefaultCharset Off

para que os navegadores exibam documentos utilizando o conjunto de caracteres correto.

Executando Várias Instâncias do Infocenter

É possível executar várias instâncias do infocenter em uma máquina de uma instalação. Cada instância iniciada deve utilizar sua própria porta e receber um espaço de trabalho, por isso, as opções -port e -data devem ser especificadas. As instâncias podem suprir a documentação de conjuntos diferentes de plug-ins, fornecendo uma configuração de plataforma válida com a opção -configuration.

Se a opção -configuration não for utilizada e o diretório de configuração estiver compartilhado entre várias instâncias do infocenter com conjuntos de sobreposição de códigos de idioma, ela deverá assegurar-se de que todos os índices de procura sejam criados por uma instância do infocenter antes do início de outra instância. Os índices são salvos no diretório de configuração e o acesso de gravação não é sincronizado nos processos do infocenter.

[Opcional] Instalando um Conjunto Mínimo de Plug-ins

O infocenter não requer o pacote da  Plataforma Eclipse inteiro. É possível executar o infocenter com os seguintes plug-ins (localizados no diretório  eclipse\plugins):

org.apache.lucene
org.eclipse.core.runtime
org.eclipse.help
org.eclipse.help.appserver
org.eclipse.help.base
org.eclipse.help.webapp
org.eclipse.osgi
org.eclipse.tomcat
org.eclipse.update.configurator

Alguns plug-ins da documentação podem ter dependências sobre outros plug-ins, geralmente especificando plug-ins requeridos em seu plugin.xml. Os plug-ins dependentes precisam ser instalados no infocenter igualmente. Adicionalmente, os plug-ins que foram designados para a versão anterior à 3.0 do Eclipse requerem implicitamente um org.eclipse.core.runtime.compatibility estando presente no plug-in para funcionamento.

Os plug-ins do Infocenter podem ser atualizados sem reiniciar o infocenter, utilizando os comandos explicados no tópico Atualizando um Infocenter em Execução a partir da Linha de Comandos. Para utilizar essa funcionalidade, o conjunto mínimo de plug-ins deve incluir o plug-in org.eclipse.update.core.

Consulte as Preferências do Sistema de Ajuda para obter informações adicionais sobre a personalização do sistema de ajuda.