Pergunta

Eu desenvolvi um projeto web dinâmico no Eclipse. Agora eu posso acessá-lo através do meu navegador usando a seguinte URL:

http://localhost:8080/MyDynamicWebApp

Agora eu quero mudar o acesso à URL para

http://localhost:8080/app

Eu mudei a raiz de contexto do projeto "Propriedades | Configurações do projeto Web | Contexto Raiz".

Mas não está funcionando. O aplicativo web ainda tem a URL de acesso como anteriormente. Tenho re-implantado o aplicativo no Tomcat, re-iniciou o Tomcat e ter feito tudo o que deve ser feito, mas o URL de acesso é o mesmo que antes.

Eu achei que havia nenhum arquivo server.xml anexo com o arquivo WAR. Então, como o Tomcat é determinar que a raiz de contexto do meu aplicativo web é /MyDynamicWebApp e está permitindo-me para acessar o aplicativo através desse URL?

Foi útil?

Solução

Eu tenho certeza que você mudou-se por agora, mas eu pensei que eu ia responder de qualquer maneira.

Algumas dessas respostas dar soluções. O que realmente deve acontecer é que você limpa e re-publicar seu projeto para "ativar" o novo URI. Isso é feito clicando com o botão direito seu servidor (na visualização Servidores) e escolhendo limpa. Então você começa (ou reiniciá-lo). A maioria das outras respostas aqui sugiro que você faça coisas que de fato fazer isso.

O arquivo que está mudando é workspace/.metadata/.plugins/org.eclipse.wst.server.core/publish/publish.dat menos, ou seja, você tem mais de um servidor no seu espaço de trabalho, caso em que será publishN.dat no mesmo caminho.

Espero que isso ajude alguém.


Não se esta é a etiqueta apropriada ou não -. Estou editando esta resposta para dar passos exactos para o Eclipse Indigo

  1. No do seu projeto Propriedades , escolha Configurações do projeto da Web .

  2. Alterar root Contexto para aplicativo .

    captura de tela do Eclipse propriedades do projeto Configurações do projeto da Web

  3. Escolha Janela> Mostrar Visualização> Servidores .

  4. Parar o servidor clicando no caixa quadrada vermelha ( "Pare o servidor" dica) ou contexto clique no servidor de lista para escolher "Stop".

  5. No servidor que deseja usar, o contexto clique com o botão para escolher "Clean ...".

    enter descrição da imagem aqui

  6. Clique em OK na caixa de diálogo de confirmação.

    Captura de tela da caixa de diálogo pedindo para configuração do servidor de atualização para coincidir com a raiz de contexto mudou

Agora você pode executar seu aplicativo com o novo URL "app", tais como:

http://localhost:8080/app/

Fazendo isso fora do Eclipse, em seu servidor de produção, é ainda mais fácil -> Renomeie o arquivo de guerra. Exportar seu aplicativo Vaadin como um arquivo WAR ( File> Export> Web> arquivo WAR ). Mover o arquivo WAR para servlet container do seu servidor web como o Tomcat. Renomeie o arquivo WAR, neste caso para app.war . Quando você iniciar o servlet container, a maioria como o Tomcat irá auto-implantar o aplicativo, que inclui a expansão do arquivo de guerra para uma pasta. Neste caso, devemos ver uma pasta chamada aplicativo . Você deve ser bom para ir. Teste o seu URL. Para um domínio, como * example.com" isso seria:

http://www.example.com/app/

vaadin programadores Toolkit pode precisar para reconstruir seu conjunto de widgets se estiver usando add ons visuais.

Outras dicas

Depois de alterar a raiz de contexto nas propriedades do projeto você tem que remover o aplicativo web do Tomcat (usando Adicionar e remover ... no menu de contexto do servidor), redeploy, em seguida, adicionar novamente a sua candidatura e redeploy. Ela trabalhou para mim.

Se você é atingido você tem outra escolha: selecione o servidor Tomcat em visualizar os servidores. Clicando duas vezes sobre esse servidor (ou selecionando Abrir no menu de contexto) traz um editor de várias páginas, onde há uma página Módulos. Aqui você pode alterar o contexto raiz do seu módulo (chamado Path desta página).

Se você estiver executando Tomcat do Eclipse, ele não usa a configuração de sua instalação real Tomcat. Ele usa a configuração do Tomcat que ele criado e armazenado no âmbito do projecto "Servidores". Se você ver o seu espaço de trabalho Eclipse, você deve ver um projeto chamado "Servidores". Expandir o projeto "Servidores" e você vai se deparar com server.xml. Abra este arquivo e percorrer todo o caminho até o fundo, e você deve ver algo como isto: -

<Context docBase="abc" path="/abc" reloadable="true" source="org.eclipse.jst.jee.server:abc"/>

Aqui, você pode simplesmente mudar o seu caminho do contexto do projeto para outra coisa.

Espero que isso ajude.

Eu tentei solução sugerida por Russ Bateman aqui no post

http://localhost:8080/Myapp para http://localhost:8080/somepath/Myapp

mas não tivemos funcionou para mim como eu precisava ter um arquivo * .war que pode conter a configuração e não a instância individual do servidor no meu localmachine.

Referência

Para fazer isso eu preciso jboss-web.xml colocado em WEB-INF

<?xml version="1.0" encoding="UTF-8"?>
 <!--
Copyright (c) 2008 Object Computing, Inc.
All rights reserved.
-->
<!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 4.2//EN"
"http://www.jboss.org/j2ee/dtd/jboss-web_4_2.dtd">

  <jboss-web>
  <context-root>somepath/Myapp</context-root>
  </jboss-web>

Definir o caminho para nada no diálogo de edição módulos da Web Eclipse me permitiu acessar o projeto sem qualquer componente de caminho na URL (ou seja ROOT)

Você pode chegar ao diálogo módulos web edição pressionando F3 se você selecionar Tomcat na vista "Servidores" ou clicando duas vezes sobre ele.

Algumas screenshots:

Apache Tomcat mantém o caminho do contexto do projeto no caminho server.xml. Para cada projeto web em Eclipse, não há tag a partir daí você pode mudá-lo.
Suponha que, há dois ou três projeto implantado no servidor. Para cada caminho de um contexto é armazenado em. Esta tag está localizado no arquivo server.xml dentro Servidor criado em eclipse.

Eu tenho um projeto para lá no caminho do contexto raiz no servidor é:

<Context docBase="Test" path="/test" reloadable="true" source="org.eclipse.jst.jee.server:Test1"/>

Este caminho representa caminho do contexto de sua aplicação web. Ao alterar este caminho, o seu web caminho do contexto aplicativo irá mudar.

Eu sei a resposta já foi aceito. Mas, no caso de alguém usando Maven quer conseguir a mesma coisa, basta configurar o finalName no Maven construção para qualquer nome que você quiser dar e fazer um maven -> projeto de atualização

<build>
    <finalName><any-name></finalName>
    <plugins><provide-plugins-needed></plugins>
<build>

Se o projeto for Maven, mudar o "finalName" em pom.xml e Projeto Update como Maven.This funcionou para mim.

Em Glassfish também deverá alterar o arquivo WEB-INF / glassfish-web.xml

<glassfish-web-app>
    <context-root>/myapp</context-root>
</glassfish-web-app>

Assim, quando você clicar em "Executar como> Executar no servidor" irá abrir corretamente.

Eu só queria acrescentar que, se você não quer que seu nome do aplicativo no contexto de raiz em tudo, você e basta colocar "/" (sem aspas, apenas a barra) no Eclipse -> Configurações do projeto de Web -> entrada Context Root

Isso vai implantar o webapp apenas http: // localhost: 8080 /

É claro, isso vai causar problemas com outros webapps você tenta executar no servidor, então cabeça para cima com isso.

Levei uma eternidade para peça que juntos ... por isso mesmo que este post é de 8 anos, espero que isto irá ainda ajudar alguém!

No projeto java, pasta .settings abertos. não localizar o arquivo chamado "org.eclipse.wst.common.component". Mudança tag .

Além disso, você pode querer mudar a raiz de contexto nas propriedades do projeto

Se estiver usando eclipse para implantar seu aplicativo. Podemos usar este Maven plug-in

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-eclipse-plugin</artifactId>
    <version>2.10</version>
    <configuration>
        <wtpversion>2.0</wtpversion>
        <wtpContextName>newContextroot</wtpContextName>
    </configuration>
</plugin>

Agora vá para a pasta raiz do projeto e cmd abrir o prompt naquele local digite o seguinte comando:

mvn eclipse: Eclipse -Dwtpversion = 2.0

Você pode precisar reiniciar o eclipse, ou em face de servidor servidor de exclusão e criar agian para ver afetar. Pergunto-me este exercício faz sentido na vida real, mas obras.

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