Pergunta

Atualmente, estou usando a estrutura Spring 3.0 em um ambiente WebSphere 6.1. O IDE que estou usando é RAD (Racional Aplicativo Developer) 7.5. Eu estava trabalhando em um problema na noite passada e descobri que meu código não estava sendo 100% atualizado no servidor depois de fazer uma alteração no meu espaço de trabalho. Minha pergunta é qual é a diferença da perspectiva do WebSphere entre os seguintes:

  1. Reiniciando todo o servidor com um ouvido instalado
  2. Limpando um ouvido dentro do WebSphere
  3. Clicando no projeto e selecionando publicar

Outros servidores de aplicativos / IDEs têm o mesmo tipo de problemas de sistema ao desenvolver aplicativos J2EE?

Foi útil?

Solução

Com rad, aqui está o comportamento padrão. Quando você 'limpa', ele se livra dos objetos compilados e os recria por meio de um 'Build All', então faz uma 'publicação'. Quando você 'constrói', ele constrói tudo o que pensa ser necessário, então uma 'publicação'. Quando você 'constrói todos', ele constrói todos os objetos, então um 'publicar'.

Quando você (ou seu IDE através dos comandos acima) faz uma 'publicação', ele leva todos os objetos compilados e os implanta no servidor que você configurou para este projeto (através de uma troca quente se o servidor estiver em execução). Os swaps quentes funcionam bem para algumas coisas (como JSPs), mas também não para outras coisas (arquivos de configuração, EJBs, etc.). Se não puderem fazer uma troca quente corretamente, você precisará saltar seu servidor.

Por exemplo, se você tiver configuração RAD para criar automaticamente, seu servidor está em execução e você altera um EJB o que acontecerá é:
1. O EJB será compilado
2. Se o projeto estiver ok, o Rad implantará suas alterações
3. O servidor provavelmente não poderá pegar suas alterações mais importantes para que o servidor continue executando o código antigo

Quando isso acontecer, salte o servidor e o código será adquirido.

Outras dicas

Reiniciar o servidor levará algum tempo, mas certamente recarregará os arquivos se eles existirem no sistema de arquivos. Não tenho certeza de chamar limpo da visualização dos servidores.

Se você ligar para publicar na exibição de servidores, o RAD reiniciará o aplicativo no servidor. Assim, as mudanças normalmente são apanhadas.

Você precisa entender que tipo de alteração você fez e ver o que o WebSphere Application Server exige para carregar a alteração. Se você rolar para a parte inferior da entrada de ajuda vinculada, poderá ver para cada link Javaee Module Tipo A para um documento que descreve o que precisa ser feito para obter as alterações.http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/trun_app_hotupGrade.html

Caso contrário, você deve entender todo o ciclo de vida do que acontece desde a mudança para buscá -la no navegador, por exemplo, alteração no arquivo, o arquivo é compilado, prepare -se para as execuções de implantação, a classe de classe vê a alteração, percebe que o aplicativo precisa ser reiniciado, O usuário chama a Republish para reiniciar o aplicativo no servidor, o usuário atualiza a página da web, mostra o Firefox no Firebug que o timestamp de última hora no cabeçalho HTTP mudou.

Não tenho certeza do que significa Swap Hot-Swap, mas ao depurar o servidor, a substituição do método de código quente pode substituir uma classe no servidor depurada se não houver referência mantida na classe ou na estrutura da classe não tiver alterado.

As postagens neste site são minhas e não representam necessariamente as posições, estratégias ou opiniões da IBM

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top