Pergunta

(Eclipse 3.4, Ganimedes)

Eu tenho um Dinâmico existente projecto de Aplicação Web no Eclipse.Quando eu criei o projeto, eu especificado 'configuração Padrão do Apache Tomcat v6' em 'Configuração' suspenso.

É um mês ou 2 para baixo da linha, e agora gostaria de alterar a configuração do Tomcat 'v5.5'.(Esta será a versão do Tomcat no servidor de produção.)

Eu tentei os seguintes passos (sem sucesso):

  • Eu selecionado Targeted Runtimes no âmbito do Projecto Properties
    O Tomcat v5.5 a opção foi desativada e A INTERFACE apresentada esta mensagem:
    If the runtime you want to select is not displayed or is disabled you may need to uninstall one or more of the currently installed project facets.
  • Eu, então, clicar no Uninstall Facets... o link.
    Sob o Runtimes guia, apenas Tomcat 6 exibido.
    Para Dynamic Web Module, Eu selecionado versão 2.4 em lugar de 2.5.
    Sob o Runtimes guia Tomcat 5.5 agora apresentados.
    No entanto, a INTERFACE agora apresentada esta mensagem:
    Cannot change version of project facet Dynamic Web Module to 2.4.
    O Finish botão foi desactivado - então, eu cheguei a um beco sem saída.

Eu POSSO criar com êxito um NOVO Projeto com o Tomcat v5.5 configuração.Por algum motivo, porém, que não me deixa fazer o downgrade' um Projeto existente.

Como alternativa, eu criei um novo Projeto e copiados os arquivos de origem do Projeto antigo.No entanto, a alternativa foi bastante dolorosa e um pouco desajeitado.

Alguém pode explicar como eu posso 'downgrade' o Projeto de configuração do 'Tomcat 6' a 'Tomcat 5'?Ou talvez lançar alguma luz sobre por que isso aconteceu?

Obrigado
Pete

Foi útil?

Solução

Este é o tipo de hacking eclipse e você pode entrar em apuros fazendo isso, mas isso deve funcionar:

Abrir o navegador para ver e achar que não é um .configurações de pasta em seu projeto de expandir e, em seguida, abra o arquivo: org.eclipse.wst.common.project.facet.core.xml você deve ver uma linha que diz: <installed facet="jst.web" version="2.5"/> Mudança que, para 2,4 e salvar.

Apenas certifique-se de que o seu projeto não está usando nada específico para o 2.5 e você deve ser bom.

Verifique, também, a sua web.xml tem a configuração correta:

<web-app version="2.4" 
        xmlns="http://java.sun.com/xml/ns/j2ee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

Outras dicas

Isso pode ser velho, mas eu tentei, e encontrei o seguinte em eclipse Galilio.

Abrir o navegador para ver e achar que não é um .configurações de pasta em seu projeto de expandir e, em seguida, abra o arquivo:org.eclipse.wst.comum.projeto.faceta.núcleo.Exclua o conteúdo deste arquivo e clique direito sobre o projeto e clique em propriedades.Vá para o Projecto Facats na janela pop-up lá, você pode clicar no tempo de execução de guias e converter seu projeto para a nova faceta você deseja.

se você estiver usando o Maven, e de seguida faça shutdown eclipse, em seguida, digite >mvn eclipse:eclipse -Dwtpversion=2.0, e reinicie o eclipse.

Desculpe, parece que eu não posso postar um comentário sem suficiente Rep assim...

Eu acho que é muito difícil para o eclipse para degradar-se com segurança para um nível inferior, porque ele não pode realmente saber se você já usou algo da mais recente da web padrão.Então, se ele apenas permite que você faz para que isso poderia fazer com que o programa a falhar em uma versão mais antiga.

Você pode sempre ser compatível com versões anteriores, mas não encaminha compatível.

Você pode tentar desmarcar a faceta, aplicar, alterar o valor da faceta e de seleção.Ele trabalha para mim no Eclipse Helios SR1.

Assim, a principal diferença é que eu faço com ele 'Dynamic Web Module'.

Eu espero que funcione para você também.

Eu vi a mesma coisa, então eu mudei o web-app version valor no web.xml.Isso pode corrigir esse problema para você.

Se você estiver usando o maven, você pode gerado o eclipse configurações usando o maven plugin do eclipse.

Para as tjs.versão web Maven eclipse pluging leva em conta as dependências do projeto.Se você tem um servlet api de dependência definidos :

<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>servlet-api</artifactId>
    <version>6.0.32</version>
</dependency> 

Você tjs.web parâmetro será 6.0

<faceted-project>
  ...
  <installed facet="jst.web" version="6.0"/>
  ...
</faceted-project>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top